Shortcut MCP server

OfficialShortcut98Config last verified Jun 1, 2026

Shortcut's official MCP server: find, create, and update Stories, Epics, Iterations, Objectives, and Docs from your agent.

The Shortcut MCP server is Shortcut's official integration that lets an AI agent operate on your Shortcut workspace. Its center of gravity is Stories: an agent can search and read stories, get a story's change history, create and update stories, post comments, manage tasks and subtasks, add relations (relates-to, blocks, duplicates), attach and manage external links, upload files, and assign or unassign the current user. A handy stories-get-branch-name tool returns the workspace-conventional branch name so an agent can turn a ticket into a branch and a draft PR without leaving the editor.

Beyond stories it covers the rest of the planning hierarchy — epics, iterations (including active and upcoming iterations for the current user), objectives, projects, workflows, teams, labels, and custom fields — plus Docs, with tools to create, update, list, search, and read documents in markdown. The fastest deployment is Shortcut's hosted remote endpoint at https://mcp.shortcut.com/mcp with OAuth, so there is no API token or local setup. For clients without HTTP transport support it also runs locally over stdio via npx @shortcut/mcp using a SHORTCUT_API_TOKEN, with optional read-only and tool-limiting modes.

Quick install

Copy-paste configs are provided for all 8 supported clients. Pick your client below.

Add to ~/.claude.json

~/.claude.json
json
{
  "mcpServers": {
    "shortcut": {
      "type": "http",
      "url": "https://mcp.shortcut.com/mcp"
    }
  }
}
Or via CLI
bash
claude mcp add --transport http shortcut https://mcp.shortcut.com/mcp

Heads up

  • First tool call opens a browser to authorize.

Available tools

ToolDescription
stories-get-by-idRetrieves a single story by its identifier.
stories-get-historyRetrieves the change history for a story.
stories-searchFinds stories with filtering and search.
stories-get-branch-nameGets the recommended branch name for a story based on workspace settings.
stories-createCreates a new story.
stories-updateModifies an existing story.
stories-upload-fileUploads and links a file to a story.
stories-assign-current-userAssigns the current user as a story owner.
stories-unassign-current-userRemoves the current user as a story owner.
stories-create-commentAdds a comment to a story.
stories-create-subtaskAdds a new sub-task to a story.
stories-add-subtaskLinks an existing story as a sub-task.
stories-remove-subtaskUnlinks a sub-task from a story.
stories-add-taskAdds a task to a story.
stories-update-taskModifies a task in a story.
stories-add-relationCreates a story relationship such as relates-to, blocks, or duplicates.
stories-add-external-linkAdds an external link to a story.
stories-remove-external-linkRemoves an external link from a story.
stories-set-external-linksReplaces all external links on a story with a new set.
stories-get-by-external-linkFinds stories containing a specific external link.
labels-listLists all workspace labels.
labels-get-storiesGets stories with a specific label.
labels-createCreates a new label.
custom-fields-listLists all custom fields with their possible values.
epics-get-by-idRetrieves an epic by its identifier.
epics-searchFinds epics with filtering and search.
epics-createCreates a new epic.
epics-updateModifies an existing epic.
epics-deleteDeletes an epic.
epics-create-commentAdds a comment to an epic.
iterations-get-storiesGets the stories in a specific iteration.
iterations-get-by-idRetrieves an iteration by its identifier.
iterations-searchFinds iterations with filtering.
iterations-createCreates an iteration with start and end dates.
iterations-updateModifies an existing iteration.
iterations-deleteDeletes an iteration.
iterations-get-activeGets the active iterations for the current user.
iterations-get-upcomingGets the upcoming iterations for the current user.
objectives-get-by-idRetrieves an objective by its identifier.
objectives-searchFinds objectives with filtering.
teams-get-by-idRetrieves a team by its identifier.
teams-listLists all workspace teams.
projects-listLists all workspace projects.
projects-get-by-idRetrieves a project by its public identifier.
projects-get-storiesGets all stories in a project.
workflows-get-defaultGets the default workflow for a team or workspace.
workflows-get-by-idRetrieves a workflow by its identifier.
workflows-listLists all workspace workflows.
users-get-currentGets information about the current user.
users-get-current-teamsGets the teams the current user is a member of.
users-listGets all workspace users.
documents-createCreates a document with markdown content.
documents-updateUpdates a document's content.
documents-listLists all workspace documents.
documents-searchSearches for documents.
documents-get-by-idRetrieves a document in markdown format.

Required configuration

  • SHORTCUT_API_TOKENRequired

    Your Shortcut API token, created under Settings > API Tokens. Required for local stdio mode.

  • SHORTCUT_READONLYOptional

    Set to true to disable all data-modifying tools, leaving only read access.

  • SHORTCUT_TOOLSOptional

    Comma-separated list of tool names to expose, restricting the server's surface.

What you can do with it

Turn a Shortcut story into a branch and PR

The agent reads the story, uses stories-get-branch-name to follow your workspace naming convention, and scaffolds the branch and a draft PR, then updates the story as work ships.

Plan and report on an iteration

Ask the agent for the active iteration's stories, summarize progress, file new stories with the right epic and labels, and post a status update without leaving your editor.

FAQ

Is it free?
Yes. The server is free and open source under the useshortcut organization; it works within your existing Shortcut plan and its API limits, and you pay only for Shortcut itself.
Does it support remote/OAuth?
Yes. The fastest deployment is Shortcut's hosted remote endpoint at https://mcp.shortcut.com/mcp using OAuth, with no API token or local setup. A local stdio mode via npx @shortcut/mcp using a SHORTCUT_API_TOKEN is also available.
Can I restrict it to read-only?
Yes. Set SHORTCUT_READONLY=true to disable every data-modifying tool, or use SHORTCUT_TOOLS to expose only an explicit list of tool names.
← Browse all project-management servers