Building product

How to connect Claude to your project management tool with MCP

Connect Claude Code, Claude Desktop and Cursor to your project management tool over MCP: the setup steps, how scopes work, and prompts that do real work.

By Atrix teamPublished 7 min read
On this page
  1. What MCP is
  2. What you need before you start
  3. Connect Claude Code
  4. Connect Claude and Claude Desktop
  5. Connect Cursor
  6. How permissions work after you connect
  7. Prompts that actually work
  8. What to check in any project management MCP server
  9. If something goes wrong
  10. FAQ
  11. Try it on your own board

Most of the time an assistant spends on project work is wasted on copying. You paste a ticket into the chat, ask for a plan, then paste the plan back into the tracker by hand. Connecting Claude directly to your project management tool removes both trips: Claude reads the board itself and, if you allow it, files and updates the work itself.

This guide shows how to do that with Claude Code, Claude and Claude Desktop, and Cursor. The worked example is Atrix, but the steps and the checks apply to any tool that runs an MCP server.

What MCP is

The Model Context Protocol (MCP) is an open standard that lets an AI assistant call tools in another application. A project management tool that runs an MCP server publishes a list of tools, such as "list my issues" or "create an issue", and a client like Claude Code calls them for you, within the permissions you grant.

In practice that means three things. The assistant works from the real board instead of whatever you pasted. It can take actions, not just suggest them. And every action goes through the tool's own permission checks, so it can only do what you could do yourself.

What you need before you start

  • An account in the tool. For Atrix, that is a workspace. There is no free plan: every workspace starts with a 7-day Builder trial, card required, and the MCP server is included on every plan.
  • The server's address. For Atrix it is https://atrix.dev/api/mcp, served over Streamable HTTP.
  • A client. Claude Code, Claude on the web or desktop, Cursor, or anything else that speaks MCP over HTTP.

You do not need to create an API key for any of the clients below. They sign in through your browser with OAuth.

Connect Claude Code

Claude Code is the best fit if you want an assistant that can read your code and your board in the same session.

  1. Add the server. No credential goes in the command:

    claude mcp add --transport http atrix https://atrix.dev/api/mcp
    
  2. Start Claude Code, run /mcp, select atrix and choose Authenticate.

  3. A browser window opens. Sign in, pick the workspace and approve the scopes. The first connection asks only to read.

  4. Back in the terminal, check it worked:

    Who am I connected to Atrix as, and what can you do?
    

    Claude calls atrix_whoami, which reports the person, the workspace, the scopes the connection holds, and which tools are usable.

For CI or a server with no browser, you can pass a personal token instead. Create one in Atrix under Settings → Atrix Tokens and keep it in an environment variable:

claude mcp add --transport http atrix https://atrix.dev/api/mcp \
  --header "Authorization: Bearer $ATRIX_TOKEN"

On a laptop, prefer the browser sign-in. A refreshable, revocable OAuth token is a better thing to have on disk than a long-lived key.

Connect Claude and Claude Desktop

Claude on the web and Claude Desktop use custom connectors.

  1. Open Settings → Connectors → Add custom connector.

  2. Give it a name and paste the endpoint:

    https://atrix.dev/api/mcp
    
  3. Select Connect and sign in to Atrix in the window that opens.

Claude registers itself with the server, so there is no client ID or secret to create. If you are on a company Claude plan, an administrator may need to allow custom connectors before you can add one.

Connect Cursor

Cursor, and most other clients that speak Streamable HTTP, take the same JSON. Put it in .cursor/mcp.json in a project, or in ~/.cursor/mcp.json to use it everywhere:

{
  "mcpServers": {
    "atrix": { "url": "https://atrix.dev/api/mcp" }
  }
}

Cursor opens the browser to sign in the first time a tool is called. To use a token instead:

{
  "mcpServers": {
    "atrix": {
      "url": "https://atrix.dev/api/mcp",
      "headers": { "Authorization": "Bearer atx_pat_…" }
    }
  }
}

How permissions work after you connect

The first connection is read-only on purpose. You can see what Claude does with your board before it can change anything.

When you ask for something that writes, such as creating an issue, the server answers 403 insufficient_scope and names the missing scope. A well-behaved client reopens the browser so you can approve exactly that scope, and nothing more. If your client does not, authenticate again (in Claude Code, /mcp) and approve the extra scope there.

A few rules hold for every connection:

  • Scopes narrow, they never widen. A connection can never do more than the person who approved it. Granting crm.value does not show deal amounts to someone who is not allowed to see them.
  • Permissions are checked on every call. If someone loses access in the workspace, every connection they made loses it at the same moment.
  • Limits are per connection: 120 calls and 30 writes a minute. Past that, the server answers 429 with a Retry-After header.
  • Every call is audited: the tool, the scope and the outcome, recorded with ids and never contents.
  • Pay is never reachable. No scope reaches a salary.

Prompts that actually work

These map directly to tools the Atrix server provides. You do not need to name the tool; Claude picks it. The tool names are listed so you know what to expect in the approval prompt.

Start the day

  • "What's overdue for me this week?" uses attention_today, which returns your overdue and due-this-week work, unread mentions and today's meetings.
  • "How is the Website product doing? What's stuck?" uses project_status: percent complete, work by status, and anything sitting in review or in progress for over a week.

Find and read

  • "Find the pricing spec and summarise the open questions." uses search then fetch. Search matches page bodies, not just titles.
  • "Show me everything assigned to Zara that's in review." uses people_find and work_list_issues.

Create and change work (needs work.write)

  • "Create an issue in Website: 'Fix the broken pricing link in the footer', priority high, due Friday, assign it to me." uses work_create_issue, then work_schedule_issue and work_assign_issue.
  • "Move the three checkout bugs to In review and add a comment that the fix is on staging." uses work_bulk_update and work_comment_issue.

From code to the board (Claude Code)

  • "Read the TODO comments in src/billing and file one task per TODO in Website. Don't create duplicates." Claude reads the files locally and calls work_create_issue with ifNotExists, which returns an existing open issue with the same title instead of filing it twice.

One thing the server refuses on purpose: an assistant cannot create an epic. Epics are how you frame the work, so Claude opens stories, tasks and bugs and sets their parent instead.

What to check in any project management MCP server

Atrix is one option. Whichever tool you connect, check these before you give an assistant write access.

  1. OAuth or an API key. OAuth means a scoped token you approved on a consent screen, which you can revoke without rotating anything else. A pasted API key often carries everything your account can do and lives in a config file.
  2. Scopes. Can you grant read without write? Can you separate projects from customers from people data? If the only choice is "everything", treat the connection as you would your password.
  3. Write approval. Does the client ask before each write, and does the server mark which tools are read-only? A model that misreads a request should hit a confirmation, not your data.
  4. Audit. Can you see what a connection did, and when? A log of tool calls is how you answer "who closed these twenty issues?".
  5. Rate limits. A loop that runs away should stop at a limit, not at the end of your backlog.
  6. What the model reads. Ticket text and comments are read by the model. Someone can write instructions into a ticket, so keep write approvals on for anything that matters.

If something goes wrong

  • 401: the sign-in expired or was revoked. Run /mcp and authenticate again.
  • 403 insufficient_scope: the connection lacks a scope. Approve it when the browser opens, or reconnect with it.
  • 403 without a scope named: the scope is there, but your account lacks the permission in the workspace. Ask a workspace admin.
  • 429: wait for the number of seconds in Retry-After. Retrying in a tight loop only extends the wait.

FAQ

Is there a free way to connect Claude to Atrix?

No. Atrix has no free plan. Every workspace starts with a 7-day Builder trial, card required, and the MCP server is included from the first day. Builder is $39 a month for 5 seats and Studio is $149 a month for 15; yearly plans are 20% off.

Can Claude change my board without asking?

Not on the first connection, which is read-only. Writes need a scope you approve in the browser, and clients such as Claude Code also ask before running a tool unless you have told them not to.

Does Atrix see my conversation with Claude?

No. The server sees only the tool calls Claude makes, such as a search query or the fields of an issue it creates. The audit log records ids, not contents.

Which client should I use?

Use Claude Code when the work starts in your code, such as turning TODOs or a failing test into issues. Use Claude or Claude Desktop for planning, status questions and writing. Use Cursor if that is where you already work. All three reach the same tools with the same limits.

How do I disconnect?

Remove the server in the client (claude mcp remove atrix in Claude Code), and revoke the connection in Atrix settings. Revoking it in Atrix stops it on the next request.

Try it on your own board

Start a workspace from pricing, connect Claude with the steps above, and ask what is overdue. The MCP server guide has the setup for every client, and the tool reference lists every tool with its scope and inputs. For the overview, see Atrix with Claude and the MCP feature page.

Share this article

Share this article

Keep reading

All posts

Put the ideas in this post to work.

Try it for 7 days. A card is required to start and is charged at the end of the trial unless you cancel; cancelling during the trial costs nothing.

7-day trial · card required · cancel anytime