MCP - Connect an AI Client
Let Claude Desktop, Claude Code, Gemini CLI, or any other MCP-compatible client create tasks, manage sprints, triage tickets, and more - directly in Decuga, using your own AI assistant instead of ours.
Overview
MCP (Model Context Protocol) is an open standard that lets AI assistants call tools in other applications. Decuga exposes an MCP server so any MCP-compatible client - Claude Desktop, Claude Code, Gemini CLI, or a custom integration you build yourself - can act on your behalf: creating and updating tasks, moving sprints along, triaging service desk tickets, and more, all described in plain language to whichever AI client you're already using.
This is the same set of actions available from the Decuga Slack assistant and the in-app chat panel - just reachable from outside Decuga too, through an AI client of your choice. Every action still goes through your own account and your own project permissions; nothing an MCP client does bypasses what you're normally allowed to do in the dashboard.
Connecting a client
There are two ways to connect, depending on which client you use. Both end up in the same place - your AI client gets access to the same set of actions, scoped to your account.
Option A - Claude Code, Gemini CLI, OpenAI, or anything that takes a bearer token
Create a personal MCP key
Go to your Profile page and find the MCP API Keys card. Click New MCP key, give it a name (e.g. βClaude Desktop - laptopβ), and copy the key shown - it starts with dmcp_ and is only ever shown once.
Add the server to your client
Point your client at Decuga's MCP endpoint with the key as a bearer token. For Claude Code:
claude mcp add decuga --transport http \ --header "Authorization: Bearer dmcp_your_key_here" \ https://decuga.com/api/mcp
Gemini CLI and any other client that supports a custom header for remote MCP servers work the same way - just supply the same URL and header.
Option B - Claude Desktop
Add a custom connector
In Claude Desktop, go to Settings β Connectors β Add custom connector and enter https://decuga.com/api/mcp.
Sign in and approve
Claude Desktop opens your browser to sign in with your normal Decuga account, then shows a one-time approval screen asking whether to let Claude connect. Approve it, and you're done - no key to copy or manage.
Claude Code: auto-tag commits
git commit inside a real repository, which only makes sense for a coding tool with its own project directory and shell access.If your team tracks work in Decuga, this optional skill has Claude Code check the current sprint for a task that already covers whatever it's about to commit - creating one if there isn't one - and put the task's code at the start of the commit message, like DT-142: Add retry to the webhook sender. The code goes first because git tools and the GitHub UI cut long messages short, and the start is the part that always shows. Every commit ends up traceable to a real task, without you having to look one up and paste the code in yourself.
Connect Claude Code to Decuga
Follow Option A above first, if you haven't already - this skill uses the same MCP connection, it doesn't need anything extra on the Decuga side.
Download and install the skill
decuga-task.skill is a zip file containing one folder, decuga-task/. Unzip it and drop that folder into .claude/skills/ in your repo (create the directory if it doesn't exist yet) - or into ~/.claude/skills/ if you want it available in every repo you work in, not just this one.
Optional: remind Claude Code to use it before every commit
A skill only runs when Claude Code decides it's relevant - usually reliable, but not guaranteed on every single commit. For a stronger nudge, add this to your repo's .claude/settings.json (merge it in if that file already has other hooks):
{
"hooks": {
"PreToolUse": [
{
"matcher": "Bash",
"hooks": [
{
"type": "command",
"if": "Bash(git commit*)",
"command": "jq -n --arg msg 'Before this commit lands, apply the decuga-task skill if a Decuga MCP connection is available in this session.' '{hookSpecificOutput: {hookEventName: \"PreToolUse\", additionalContext: $msg}}'"
}
]
}
]
}
}Requires jq on your PATH.
Managing keys
Every personal MCP key you create is listed on your Profile page, along with when it was created and last used. You can create as many as you like - one per client or device is a good default, so you can tell them apart and revoke one without affecting the others.
What it can do
A sample of what you can ask - not an exhaustive list. Type naturally; these are just starting points.
Tasks & sub-tasks
- βCreate a task to update the login page copy
- βAdd a sub-task of DT-51 called Fix mobile layout
- βMove DT-42 to In Review and assign it to Amit
- βWhat are my open tasks across all my projects?
Sprints & backlog
- βWhat's in the current sprint board?
- βStart Sprint 5
- βWhat's in the backlog?
Service Desk & change management
- βCreate a ticket for a customer who can't log in
- βWhat tickets are assigned to me?
- βSubmit CR-12 for approval
Goals, roadmap & reporting
- βWhat's the status of our Q3 OKRs?
- βAdd a roadmap item for dark mode
- βGive me a project analytics summary
Working across projects
Unlike the in-app chat panel - which is always scoped to whichever project you have open - an MCP client isn't tied to one project. If you belong to more than one, just ask it to list your projects, or name the one you mean and it will resolve it for you.
Every action still checks your actual membership and role on that specific project, the same as if you'd clicked through to it in the dashboard yourself.
Security
An MCP client acts as you- it has exactly the permissions your account has, nothing more. Every tool call goes through the same authorization checks as the dashboard and the Slack assistant; there's no separate, more-permissive path for MCP clients.
- Personal API keys can be revoked any time from your Profile page.
- Claude Desktop's connector flow uses your normal Decuga sign-in - Decuga never sees or stores your Claude credentials, and Claude never sees your Decuga password.
- Nothing an MCP client does is retried or applied silently on your behalf without you asking for it - the assistant only acts on what you tell it in that conversation.
Troubleshooting
"Add custom connector" says my server can't be reached
Double check the URL is exactly https://decuga.com/api/mcp with no trailing path. If it still fails, the client may not support remote MCP servers yet - try a static API key instead (Option A above), which more clients support today.
My client says the request was unauthorized
For a static key, confirm the header is exactly "Authorization: Bearer dmcp_..." with no extra whitespace, and that the key hasn't been revoked from your Profile page. For Claude Desktop, try removing and re-adding the connector to redo the sign-in.
It says I need to upgrade my plan
MCP access requires a Pro plan or higher. Everything else about your account works the same - this only affects the MCP connection itself.
It can't find a task/project I'm asking about
Confirm you're actually a member of that project - an MCP client can only see and act on projects your own account belongs to. Ask it to list your projects to confirm which ones it can see.