Paca MCP Server

Connects an MCP client to a self-hosted Paca workspace: projects, tasks, sprints, docs and roles

Official · PacaAI TypeScript Local · stdio Productivity

69 popularity score ★ 2.0k ↓ 1.6k/wk

Connect your client

Local (npm)

Add in one click

Opens the app, which asks before it adds the server. Then replace each <NAME> in its settings with your value.

Or add it by command or config

It needs PACA_API_KEY. Replace each <NAME> with your value.

Claude CodeTerminal
claude mcp add paca -e PACA_API_KEY=<PACA_API_KEY> -- npx -y @paca-ai/paca-mcp
Claude Desktopclaude_desktop_config.json
{
  "mcpServers": {
    "paca": {
      "command": "npx",
      "args": [
        "-y",
        "@paca-ai/paca-mcp"
      ],
      "env": {
        "PACA_API_KEY": "<PACA_API_KEY>"
      }
    }
  }
}
Cursor~/.cursor/mcp.json
{
  "mcpServers": {
    "paca": {
      "command": "npx",
      "args": [
        "-y",
        "@paca-ai/paca-mcp"
      ],
      "env": {
        "PACA_API_KEY": "<PACA_API_KEY>"
      }
    }
  }
}
VS Code.vscode/mcp.json
{
  "servers": {
    "paca": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@paca-ai/paca-mcp"
      ],
      "env": {
        "PACA_API_KEY": "<PACA_API_KEY>"
      }
    }
  }
}
Codex~/.codex/config.toml
[mcp_servers.paca]
command = "npx"
args = ["-y", "@paca-ai/paca-mcp"]

[mcp_servers.paca.env]
PACA_API_KEY = "<PACA_API_KEY>"
Gemini CLITerminal
gemini mcp add --scope user -e PACA_API_KEY=<PACA_API_KEY> paca npx -- -y @paca-ai/paca-mcp

Settings 6

PACA_API_KEY Required: API key from your Paca instance (personal key, or the agent's own key in agent mode); the server exits without it.
PACA_API_URL Optional: Address of your Paca API; defaults to http://localhost:8080.
PACA_AGENT_ID Optional: Agent UUID, to act as a Paca agent instead of yourself.
PACA_PROJECT_ID Optional: Project UUID that pins every tool call to one project.
PACA_REPO_PLUGIN_IDS Optional: Comma-separated repository plugin IDs; when set, the repository tools are listed.
PACA_WORKDIR Optional: Default folder for clone_repository and push_branch; defaults to /home/goose/repo.

What it does

Paca is a self-hosted, Apache-2.0 project management platform for Scrum teams, and @paca-ai/paca-mcp is the MCP server its makers ship in the same repository (apps/mcp). It runs on your machine over stdio and talks to your own Paca instance's REST API with an API key, so an assistant can list and edit projects, tasks, sprints, views, custom fields, documents, members and roles, comment on tasks, and build workflow automations.

Documents are handled as Markdown: the server converts to and from the BlockNote JSON that Paca stores. It runs in two identities: as you (your personal key) or as a Paca agent (that agent's own key plus PACA_AGENT_ID). Setting PACA_PROJECT_ID pins every call to one project; without it, project-level calls must pass a projectId. The server lists every tool regardless of your role and leaves permission checks to the Paca API, which answers a disallowed call with a 403 that comes back as a "Permission denied" error; get_my_project_permissions shows which actions you hold.

The README and npm page describe 81 tools, including seven GitHub-integration tools and document tools named list_documents and get_document. The code at v0.19.0 (apps/mcp/src/tools/index.ts) registers a different set of 83: documents are list_docs, read_doc, write_doc, delete_doc and move_doc, there are search, task-link, automation, doc-comment, page-annotation and conversation tools, and the GitHub-integration tools are absent. Three repository tools (list_repositories, clone_repository, push_branch) are hidden unless PACA_REPO_PLUGIN_IDS is set (server.ts), so a plain setup lists 80. Enabled Paca plugins can add more tools, loaded at startup.

What it needs

RuntimeNode.js 18+

Node.js 18 or later (for npx). A running Paca instance you can reach, self-hosted with Docker Compose or Helm, at http://localhost:8080 unless PACA_API_URL says otherwise. A Paca API key: a personal one from Settings → API Keys, or for agent mode the agent's own key generated on its setup page. Your Paca roles must allow the actions you want the tools to take.

Limits

Works only against a self-hosted Paca instance; there is no hosted endpoint. Tool calls succeed only as far as the caller's Paca roles allow. The README's tool table names tools such as list_documents, get_document and the GitHub-integration tools that the v0.19.0 code does not register. The repository tools need PACA_REPO_PLUGIN_IDS and a repository plugin in the project, and are meant for Paca's own agent sandbox (default checkout path /home/goose/repo unless PACA_WORKDIR is set). Agent keys are shown once, and regenerating one invalidates the old key.

Who it suits

Teams already running Paca who want an assistant, or a Paca agent, to work on the same board: triaging the backlog, planning sprints, updating task status and keeping project docs current. It is published by Paca's own makers and reaches only your instance, so data stays where you host it. It writes widely (it can delete projects, change roles and edit automations), so a scoped role or PACA_PROJECT_ID is worth using. If your team uses Jira, Trello, ClickUp or Monday and not Paca, this server does nothing for you.

Tools 60 of 83

list_projects
List the projects you can access
get_project
Show one project's details
create_project
Create a project
update_project
Change a project's settings
delete_project
Delete a project
list_tasks
List a project's tasks
get_task
Show one task by its ID
get_task_by_number
Look up a task by its number in the project
create_task
Create a task, with a Markdown description
update_task
Edit a task's fields, status or assignment
delete_task
Delete a task
search_tasks
Search tasks in a project
list_sprints
List a project's sprints
get_sprint
Show one sprint
create_sprint
Create a sprint
update_sprint
Edit a sprint
delete_sprint
Delete a sprint
complete_sprint
Close out a sprint as done
list_docs
List a project's documents and folders
read_doc
Read a document as Markdown
write_doc
Create or overwrite a document from Markdown
delete_doc
Delete a document
move_doc
Move or rename a document
search_docs
Search a project's documents
list_doc_activities
Show a document's activity and comments
add_doc_comment
Comment on a document
list_project_members
List who belongs to a project
add_project_member
Add a user or agent to a project with roles
get_my_project_permissions
Show which actions you may take in a project
update_project_member_role
Replace the roles a member holds
remove_project_member
Remove a member from a project
list_project_roles
List roles usable in a project
create_project_role
Create a role from a policy document
update_project_role
Change a role's name or policy
delete_project_role
Delete a project role
list_task_types
List a project's task types
create_task_type
Add a task type
list_task_statuses
List a project's task statuses
create_task_status
Add a task status
list_views
List a project's board, backlog and timeline views
create_view
Create a view
move_task
Move a task to a new place in a view
bulk_move_tasks
Move several tasks in a view at once
list_custom_fields
List custom field definitions
create_custom_field
Define a custom field
list_task_attachments
List files attached to a task
upload_task_attachment
Attach a file from the local machine to a task
read_task_attachment
Fetch an attachment and return its contents
delete_task_attachment
Remove an attachment from a task
list_task_activities
Show a task's history and comments
add_task_comment
Comment on a task
list_task_links
List links between a task and other tasks
create_task_link
Link two tasks
get_automation
Show a project's automations or one automation's graph
create_automation
Build a trigger-condition-action automation
update_automation
Edit or change the state of an automation
delete_automation
Delete an automation
list_annotations
List page comments left with Paca's browser extension
get_annotation
Show one page comment with its thread and captured errors
read_conversation
Read the transcript of a Paca conversation the agent took part in

Similar servers