Karea Mcp

io.github.stareczPublished by GitHub account stareczv0.15.0Updated Nov 7, 2026

Karea task manager - 9 tools covering 70 actions, for Claude Code, Cursor, and other MCP clients.

Overview

AI-generated overview

Karea task manager MCP server: lets an assistant read, create, edit, close and delete tasks, notes, meetings and resources in a Karea workspace.

What you can do
  • Read projects, tasks, subtasks, notes, sticky notes, task markdown, questions, resources, meetings, reminders, Jira links and activity recaps
  • Create, edit and close tasks and subtasks, log in-progress or finished work, and manage closing requisites
  • Add and edit notes, sticky notes, task markdown documents and AI context entries
  • Create projects and categories, share projects by email, and manage meetings, agenda items, questions and reminders
  • Create, upload and update resources, attach them to tasks, and link tasks to Jira issues or AI coding sessions
  • Delete or unlink items, send natural-language requests to the Karea AI assistant, and look up parameter schemas for any action
When to use it
Useful when you work in Karea and want an assistant to keep tasks current while you code or investigate: logging progress, capturing notes and open questions, and recapping work over a date range. It fits Claude Code, Cursor and other MCP clients rather than general chat use.
Requirements
Runs locally over stdio via npx karea-mcp, so Node.js is needed. Requires a Karea account and an API key supplied in the KAREA_API_KEY environment variable; KAREA_URL optionally overrides the base URL, which defaults to the hosted karea.app service. Network access to Karea is required.
Before you install
The API key in KAREA_API_KEY grants access to your Karea workspace and should be kept out of shared config files. Write tools change real data: edits overwrite existing notes, markdown and context, deletes are permanent and need confirm=true where stated, and project sharing sends invitations by email. The karea_assistant action can read or change tasks on its own, so review what it did.

Installation

In SourceWeft

  1. Open Karea Mcp in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

karea-mcp

The MCP server for Karea. 9 tools so Claude Code, Cursor, and any other MCP-compatible client can create, edit, close, recap, link, and otherwise manage your tasks while you code.

[npm] [license] [karea-mcp MCP server]

What you can do with it

  • Create / edit / close / delete tasks and subtasks from inside Claude Code while it codes
  • Read and write long-form markdown on any task (perfect for solution design + investigation notes)
  • Track open questions per task and answer them later
  • Attach resources (file references, links) to tasks
  • Link tasks to Jira and back
  • Get a productivity recap across a date range
  • Manage categories, projects, and project sharing

Install

bash
npx karea-mcp

Configure (Claude Code)

Add to ~/.claude.json (or run claude mcp add):

json
{  "mcpServers": {    "karea": {      "command": "npx",      "args": ["-y", "karea-mcp"],      "env": {        "KAREA_API_KEY": "your_key_here",        "KAREA_URL": "https://karea.app"      }    }  }}

Get your API key at https://karea.app/dashboard/settings?section=api-keys.

Configure (Cursor)

Add to .cursor/mcp.json in your project, or to ~/.cursor/mcp.json globally:

json
{  "mcpServers": {    "karea": {      "command": "npx",      "args": ["-y", "karea-mcp"],      "env": {        "KAREA_API_KEY": "your_key_here"      }    }  }}

Tool catalogue

9 tools covering 70 actions (regenerated by scripts/sync-metadata.mjs).

Each tool takes an action and a params object. Actions are not tools: karea_list_notes is called as karea_read with { "action": "karea_list_notes", "params": { ... } } (the karea_ prefix of an action is optional). Set KAREA_MCP_LEGACY_TOOLS=1 to go back to registering all 70 actions as individual tools.

  • karea_read - Read anything in Karea without changing it: projects, tasks, subtasks, notes, sticky notes, task documents and AI context, open questions, resources, meetings, reminders, Jira links, AI sessions, and the activity recap. The main entry point - start here.
    • karea_list_projects, karea_list_tasks, karea_view_task, karea_view_tasks, karea_task_changes, karea_list_subtasks, karea_list_notes, karea_list_sticky_notes, karea_get_markdown, karea_get_context, karea_list_questions, karea_list_resources, karea_get_resource, karea_list_meetings, karea_view_meeting, karea_check_reminders, karea_get_jira_link, karea_list_sessions, karea_recap
  • karea_tasks_write - Create and change tasks: create, edit one or many, close one or many, log finished or in-progress work, plus subtasks and closing requisites (the checklist a task needs before it can close).
    • karea_create_task, karea_quick_task, karea_doing, karea_edit_task, karea_edit_tasks, karea_close_task, karea_done, karea_create_subtask, karea_add_requisite, karea_toggle_requisite
  • karea_notes_write - Write notes: add or edit task notes (human-readable updates) and sticky notes, and write a task's markdown document or an entry of its AI Context (private cross-session memory). Overwrites what an edit replaces.
    • karea_add_note, karea_edit_note, karea_create_sticky_note, karea_edit_sticky_note, karea_set_markdown, karea_set_context
  • karea_projects_write - Create a project or a category inside one, or share a project with someone by email.
    • karea_create_project, karea_create_category, karea_share_project
  • karea_meetings_write - Create and edit meetings and put tasks or questions on their agenda; create, answer and edit open questions; create, snooze, dismiss or complete reminders.
    • karea_create_meeting, karea_edit_meeting, karea_link_task_to_meeting, karea_link_question_to_meeting, karea_create_question, karea_answer_question, karea_edit_question, karea_create_reminder, karea_snooze_reminder, karea_dismiss_reminder, karea_mark_reminder_done
  • karea_resources_write - Create, upload and update resources in the file/document library and attach them to tasks; link a task to a Jira issue or to an AI coding session.
    • karea_create_resource, karea_upload_resource, karea_update_resource, karea_link_resource_to_task, karea_link_jira, karea_link_session
  • karea_assistant - Send a natural-language request to the Karea AI assistant, which may read or change your tasks to carry it out.
    • karea_ask
  • karea_delete - Delete or detach things. Permanent deletes (project, category, task, requisite, note, sticky note, question, resource, meeting) need confirm=true where stated; detaching a resource, task, question, Jira issue or AI session from what it is linked to.
    • karea_delete_project, karea_delete_category, karea_delete_task, karea_delete_requisite, karea_delete_note, karea_delete_sticky_note, karea_delete_question, karea_delete_resource, karea_delete_meeting, karea_unlink_resource_from_task, karea_unlink_task_from_meeting, karea_unlink_question_from_meeting, karea_unlink_jira, karea_unlink_session
  • karea_help - full parameter schema for any action.

List actions need at least one filter, so a single call cannot dump everything you have:

ActionAccepted filters
karea_list_tasksprojectId, status, closedSince, category, priority, assignee, search
karea_list_questionsprojectId, status
karea_list_meetingsscope, from, to, projectId
karea_list_resourcesprojectId, query, folder, type, mime, minSize, maxSize
karea_list_sticky_notesprojectId, or scope (global / all)

A call without one is refused with the accepted filters listed, so the agent can retry at once. karea_list_projects needs none (it is how an agent finds the projectId), and neither do pending reminders in karea_check_reminders.

Workflow example

You: I'm starting on the auth bug.Claude (via karea-mcp): karea_doing("auth bug")        --> status set to in_progressYou: Add a closing requisite: must pass the failing test.Claude: karea_add_requisite(...)You (later): I fixed it.Claude: karea_toggle_requisite(...) then karea_done("auth bug")

License

MIT. See LICENSE.

Source: README.md at commit 5c09210

Tools

9

karea_read

Read from Karea

Actions of this tool: karea_list_projects, karea_list_tasks, karea_view_task, karea_view_tasks, karea_task_changes, karea_list_subtasks, karea_list_notes, karea_list_sticky_notes, karea_get_markdown, karea_get_context, karea_list_questions, karea_list_resources, karea_get_resource, karea_list_meetings, karea_view_meeting, karea_check_reminders, karea_get_jira_link, karea_list_sessions, karea_recap. These are actions, not tools: call karea_read with action="karea_list_projects" (or another name above) and its arguments in params; there is no tool named after an action. Read anything in Karea without changing it: projects, tasks, subtasks, notes, sticky notes, task documents and AI context, open questions, resources, meetings, reminders, Jira links, AI sessions, and the activity recap. The main entry point - start here. Pass one of these as `action`, with its arguments in `params`: - karea_list_projects - List all Karea projects with their IDs [no parameters] - karea_list_tasks - List tasks in a project. [optional: projectId, status, closedSince, limit, category, priority, assignee, search] - karea_view_task - Return one task with all its details (status, priority, deadline, recurrence, category, description, notes, requisites, links), located by visual ID, name or UUID. [required: task; optional: projectId, includeContext] - karea_view_tasks - Return details for MANY tasks in one response. [required: tasks; optional: projectId, includeContext, includeMarkdown] - karea_task_changes - Return only what changed on one task in the last sinceMinutes minutes (status, fields, notes with a short excerpt, Context entry titles, links...), each with who, how (user = browser, mcp = API/AI, jira, system) and when, newest first. [required: task, sinceMinutes; optional: projectId] - karea_list_subtasks - List subtasks of a parent task. [required: parent; optional: projectId] - karea_list_notes - List the notes (human-readable updates) on a task, newest first. [required: task; opti

Parametersactionparams

karea_tasks_write

Create and update tasks

Actions of this tool: karea_create_task, karea_quick_task, karea_doing, karea_edit_task, karea_edit_tasks, karea_close_task, karea_done, karea_create_subtask, karea_add_requisite, karea_toggle_requisite. These are actions, not tools: call karea_tasks_write with action="karea_create_task" (or another name above) and its arguments in params; there is no tool named after an action. Create and change tasks: create, edit one or many, close one or many, log finished or in-progress work, plus subtasks and closing requisites (the checklist a task needs before it can close). Pass one of these as `action`, with its arguments in `params`: - karea_create_task - Create a new task in a project and return it with its visual ID (e.g. [required: name; optional: category, priority, sla, description, markdown, source, closingRequisites, tags, parentId, jiraIssueKey, projectId, aiSessionId, toolType, sessionLabel] - karea_quick_task - Log something you already finished as a done task (it shows up in Recap) and return it. [required: description; optional: source, projectId, aiSessionId, toolType, sessionLabel] - karea_doing - Create a task you are working on right now (status: in_progress) [required: description; optional: category, priority, sla, projectId, aiSessionId, toolType, sessionLabel] - karea_edit_task - Update fields of an existing task (title, status, priority, deadline, category, description, tags, or add a note) located by visual ID, name or UUID. [required: task; optional: name, priority, status, closeSubtasks, reviewStage, sla, description, markdown, category, note, tags, clearTags, closingRequisites, clearClosingRequisites, jiraIssueKey, linkTasks, linkType, unlinkTasks, projectId, aiSessionId, toolType, sessionLabel] - karea_edit_tasks - Apply the SAME change to many tasks in ONE request - status, priority, category, deadline, assignee, or a note. [required: tasks; optional: projectId, status, priority, category, sla, note] - karea_close_task - Mark a task as done: s

Parametersactionparams

karea_notes_write

Write notes and task documents

Actions of this tool: karea_add_note, karea_edit_note, karea_create_sticky_note, karea_edit_sticky_note, karea_set_markdown, karea_set_context. These are actions, not tools: call karea_notes_write with action="karea_add_note" (or another name above) and its arguments in params; there is no tool named after an action. Write notes: add or edit task notes (human-readable updates) and sticky notes, and write a task's markdown document or an entry of its AI Context (private cross-session memory). Overwrites what an edit replaces. Pass one of these as `action`, with its arguments in `params`: - karea_add_note - Add a note to a task - or the same note to many tasks at once, via `tasks`. [required: content; optional: task, tasks, projectId, replyTo, aiSessionId, toolType, sessionLabel] - karea_edit_note - Change the text of an existing note on a task, by note ID, and return the updated note. [required: task, noteId, content; optional: projectId, aiSessionId, toolType, sessionLabel] - karea_create_sticky_note - Pin a short note to the user's sticky board - a command, a URL, a couple of lines to remember. [required: content; optional: title, color, projectId, pinned] - karea_edit_sticky_note - Change a sticky note: its text, title, colour, pin state, or which project it belongs to. [required: noteId; optional: content, title, color, projectId, pinned] - karea_set_markdown - Write the markdown document for a task. [required: task, markdown; optional: projectId, aiSessionId, toolType, sessionLabel] - karea_set_context - Write a titled entry of the task's Context - the AI-facing cross-session working memory. [required: task, context; optional: title, allowSimilarTitle, projectId, aiSessionId, toolType, sessionLabel] For the full parameter schema of any action, call karea_help with that action name.

Parametersactionparams

karea_projects_write

Create and share projects

Actions of this tool: karea_create_project, karea_create_category, karea_share_project. These are actions, not tools: call karea_projects_write with action="karea_create_project" (or another name above) and its arguments in params; there is no tool named after an action. Create a project or a category inside one, or share a project with someone by email. Pass one of these as `action`, with its arguments in `params`: - karea_create_project - Create a new Karea project owned by you and seed it with the default categories (Coding, Testing, Documenting, Reviewing). [required: name] - karea_create_category - Create a new category (a task bucket) inside an existing project and return it. [required: name; optional: projectId] - karea_share_project - Give another user access to a project by email at a chosen role (owner, editor, commenter or viewer). [required: project, email; optional: role] For the full parameter schema of any action, call karea_help with that action name.

Parametersactionparams

karea_meetings_write

Manage meetings, questions and reminders

Actions of this tool: karea_create_meeting, karea_edit_meeting, karea_link_task_to_meeting, karea_link_question_to_meeting, karea_create_question, karea_answer_question, karea_edit_question, karea_create_reminder, karea_snooze_reminder, karea_dismiss_reminder, karea_mark_reminder_done. These are actions, not tools: call karea_meetings_write with action="karea_create_meeting" (or another name above) and its arguments in params; there is no tool named after an action. Create and edit meetings and put tasks or questions on their agenda; create, answer and edit open questions; create, snooze, dismiss or complete reminders. Pass one of these as `action`, with its arguments in `params`: - karea_create_meeting - Create a meeting. [required: title, startAt, endAt; optional: description, location, projectId, notes, attendees] - karea_edit_meeting - Update a meeting. [required: meetingId; optional: title, startAt, endAt, description, location, projectId, notes, transcript] - karea_link_task_to_meeting - Link an EXISTING task to a meeting (discussed at / arising from it). [required: meetingId, task; optional: projectId] - karea_link_question_to_meeting - Link an EXISTING open question to a meeting, so it is raised there. [required: meetingId, questionId; optional: projectId] - karea_create_question - Create an open question (a decision or blocker to resolve) in a project, optionally linked to tasks, and return it with its short ID (e.g. [required: question; optional: projectId, markdown, taskIds] - karea_answer_question - Answer an open question, located by short ID or text match: sets its answer and flips its status to answered. [required: questionId, answer; optional: projectId] - karea_edit_question - Edit an open question: change its text, status (open, answered or cancelled), answer, or linked tasks. [required: questionId; optional: question, answer, status, markdown, taskIdsAdd, taskIdsRemove, projectId] - karea_create_reminder - Schedule a reminder on a task or on an

Parametersactionparams

karea_resources_write

Manage resources and integrations

Actions of this tool: karea_create_resource, karea_upload_resource, karea_update_resource, karea_link_resource_to_task, karea_link_jira, karea_link_session. These are actions, not tools: call karea_resources_write with action="karea_create_resource" (or another name above) and its arguments in params; there is no tool named after an action. Create, upload and update resources in the file/document library and attach them to tasks; link a task to a Jira issue or to an AI coding session. Pass one of these as `action`, with its arguments in `params`: - karea_create_resource - Create a text resource (a note or document) in a project or folder and return it with its ID. [required: name, content; optional: projectId, folder, task, taskId] - karea_upload_resource - Upload a file as a resource and return it with its ID. [optional: name, path, data, link, mimeType, folder, task, taskId, projectId] - karea_update_resource - Overwrite a text resource content and/or metadata, by ID, and return the updated resource. [required: resourceId; optional: name, content, folder] - karea_link_resource_to_task - Link an existing resource (text or file) to a task. [required: resourceId, task; optional: projectId] - karea_link_jira - Link a Karea task to a JIRA issue by issue key (e.g. [required: task, issueKey; optional: projectId] - karea_link_session - Link your current AI coding session (Claude Code, OpenCode, Codex, Cursor, Aider) to a Karea task so the user can see the session history for that task and copy a command to resume the session later. [required: task, provider, sessionId; optional: label, projectId] For the full parameter schema of any action, call karea_help with that action name.

Parametersactionparams

karea_assistant

Ask the Karea AI assistant

Actions of this tool: karea_ask. These are actions, not tools: call karea_assistant with action="karea_ask" (or another name above) and its arguments in params; there is no tool named after an action. Send a natural-language request to the Karea AI assistant, which may read or change your tasks to carry it out. Pass one of these as `action`, with its arguments in `params`: - karea_ask - Send a natural-language request to the Karea AI assistant, which may read or modify your tasks to carry it out, and return its reply. [required: message; optional: projectId] For the full parameter schema of any action, call karea_help with that action name.

Parametersactionparams

karea_delete

Delete or unlink in Karea

Actions of this tool: karea_delete_project, karea_delete_category, karea_delete_task, karea_delete_requisite, karea_delete_note, karea_delete_sticky_note, karea_delete_question, karea_delete_resource, karea_delete_meeting, karea_unlink_resource_from_task, karea_unlink_task_from_meeting, karea_unlink_question_from_meeting, karea_unlink_jira, karea_unlink_session. These are actions, not tools: call karea_delete with action="karea_delete_project" (or another name above) and its arguments in params; there is no tool named after an action. Delete or detach things. Permanent deletes (project, category, task, requisite, note, sticky note, question, resource, meeting) need confirm=true where stated; detaching a resource, task, question, Jira issue or AI session from what it is linked to. Pass one of these as `action`, with its arguments in `params`: - karea_delete_project - Permanently delete a project and everything inside it (tasks, categories, notes, history). [required: name; optional: confirm] - karea_delete_category - Permanently delete a category AND every task inside it, including history. [required: name; optional: projectId] - karea_delete_task - Permanently delete a task and its history. [required: task; optional: confirm, projectId] - karea_delete_requisite - Permanently delete a closing requisite from a task, by ID. [required: task, requisiteId; optional: projectId] - karea_delete_note - Permanently delete a note from a task, by note ID. [required: task, noteId; optional: projectId] - karea_delete_sticky_note - Delete a sticky note. [required: noteId] - karea_delete_question - Permanently delete an open question. [required: questionId; optional: projectId] - karea_delete_resource - Permanently delete a resource (text or file) by ID. [required: resourceId] - karea_delete_meeting - Delete a meeting permanently. [required: meetingId, confirm] - karea_unlink_resource_from_task - Remove the link between a resource and a task. [required: resourceId, task; optional:

Parametersactionparams

karea_help

Karea action help

Return the full parameter list and description of any Karea action, and which tool to call it through. Read-only; changes nothing. Omit `action` to list every action grouped by tool. Actions are not tools: an action such as karea_list_notes is called as karea_read { action: "karea_list_notes", params: {...} }.

Parametersaction

Version history

6
  1. v0.15.0LatestOct 31, 2026
  2. v0.14.0Oct 24, 2026
  3. v0.13.0Oct 10, 2026
  4. v0.12.0Oct 9, 2026
  5. v0.10.0Sep 22, 2026
  6. v0.6.1Sep 16, 2026

Score

90% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts
  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts