Integration

Connect Cursor to your backlog

Stride exposes your backlog over the Model Context Protocol (MCP), so Cursor reads and writes real stories, sprints, tests, and architecture decisions — working from your connected delivery graph instead of context pasted into a chat window.

Why Cursor needs your backlog

Cursor already sees your repository. What it cannot see is why the code is the way it is: the acceptance criteria the story was scoped against, the architecture decision that rules out the obvious refactor, the test cases that already cover the edge case, the sibling stories in the same sprint. Stride hands the agent that structured context over MCP, so it implements the feature you actually specified rather than a plausible reading of the diff.

How to connect it

  1. In Stride, open Settings → Integrations → Cursor and generate a project-scoped agent key.
  2. Click Add to Cursor for a one-click install, or paste the config below into ~/.cursor/mcp.json (global) or .cursor/mcp.json (this repo only).
  3. Export the key in the shell that launches Cursor, then restart it.
{
  "mcpServers": {
    "stride": {
      "url": "https://www.stride.page/api/mcp/stride",
      "headers": {
        "Authorization": "Bearer ${env:STRIDE_AGENT_KEY}"
      }
    }
  }
}

One detail is worth reading twice, because it fails silently: Cursor interpolates environment variables as ${env:NAME}, not the bare ${NAME} form Claude Code uses. Adapt a Claude Code config by hand and Cursor will send the literal characters as your Authorization header, and every call comes back 401 with nothing on screen explaining why. Copy the config from the connect flow and this cannot happen.

What the agent can do

Stride exposes 116 RBAC-gated tools across all four modules — the same set Claude Code and Codex get. Every call is permission-checked by the dispatcher before it runs, and every write lands in the audit log as via: "mcp".

ModuleRepresentative tools
Planread a story’s full spec in one call (acceptance criteria, designs, docs, tests); create / update / search stories, epics, sprints, releases; bulk-update; open a GitHub draft PR from a story
Verifycreate test cases, fetch test runs, rerun failed tests, run quality-gate checks, get defects
Designcreate / update / search documents and ADRs, append to a document
Optimizeget processes, list process insights, read delivery KPIs
Workspacelist members, manage labels, attachments, reactions, end session

You can always tell it was the agent

Every agent key gets its own identity. Work Cursor does shows up as Cursor agent — <project>, carrying the Cursor mark as its avatar, wherever an author appears: comments, the activity feed, notifications, and the Reporter field on stories it creates. Run history for each key lives in Settings, down to the individual tool call. Nothing an agent does is filed under a teammate’s name.

Frequently asked questions

How do I connect Cursor to Stride?

In Stride, open Settings → Integrations → Cursor and generate a project-scoped agent key. Then either click "Add to Cursor", which installs the Stride MCP server for you, or paste the config into your mcp.json by hand. Cursor discovers Stride’s tools automatically over MCP. There is no plugin to install.

Where does the Cursor MCP config live?

Cursor reads ~/.cursor/mcp.json for a global server list, or .cursor/mcp.json in a project root to scope the server to one repo. Stride’s connect flow gives you the exact JSON for either.

My Cursor connection returns 401 — what is wrong?

Almost always the interpolation syntax. Cursor substitutes environment variables written as ${env:NAME}, not the bare ${NAME} form Claude Code uses. Given the bare form Cursor sends the literal characters as the header value and Stride rejects it. Copy the config from the connect flow rather than adapting a Claude Code one, and make sure STRIDE_AGENT_KEY is exported in the shell that launched Cursor.

Is the MCP access permission-scoped?

Every MCP tool call is RBAC-gated by Stride’s dispatcher before the handler runs. AGENT keys carry an explicit project scope, each workspace member holds their own key, and every action is recorded in the audit log as via: "mcp" against the member who created the integration.

How do I tell which agent made a change?

Each agent key gets its own bot identity, so Cursor’s writes appear as "Cursor agent — <project>" with the Cursor mark as the avatar, in comments, the activity feed and the story’s Reporter field. Claude Code and Codex appear the same way under their own marks.

Does Stride work with Claude Code and Codex too?

Yes. All three runtimes hit the same MCP endpoint and get the same tool surface; only the config file format differs. You can connect more than one at the same time, and each gets its own key and its own run history.

Which plan includes the MCP server?

The MCP server, public API, and webhooks are included on the Pro plan and Enterprise. See the pricing page for the full breakdown.

Plug Cursor into a real backlog in under two minutes.

Get started
Defined in our glossary
Related reading