What is MCP (Model Context Protocol)?
MCP is an open standard that lets AI coding assistants (Claude Desktop, Cursor, Claude Code, Zed and others) talk to external systems through a uniform tools-and-resources interface. The agent connects to an MCP server, the server advertises a list of callable tools and readable resources, and the agent uses them as part of its normal workflow. Think of MCP as the "LSP for AI agents" — one protocol, many implementations.
The current stable revision is 2025-06-18. Transport options include Streamable HTTP (production-grade, what most public MCP servers use, including SprintFlint's at mcp.sprintflint.com) and stdio (process-spawned, common for local servers).
The three primitives
| Primitive | What it is | Sprint example |
|---|---|---|
| Tools | Functions the agent can call (with arguments and a JSON-schema parameter list) | create_ticket, comment_on_ticket, list_active_sprints |
| Resources | Read-only data the agent can fetch by URI | sprintflint://sprints/active returning current sprint state |
| Prompts | Server-supplied prompt templates the agent can invoke | "Standard sprint goal format" or "team's definition of done" |
Why MCP matters for sprints
Most AI coding agents in 2026 ship code fine but don't know which sprint you're in. They write tickets from the open files and the current branch, never from the actual sprint plan. MCP closes that gap: with one block of JSON config, the agent can read your sprints, query your tickets by status, post comments, and answer "what's next on my plate?" using the real board instead of guesses.
For the practitioner's version of what changes day-to-day, see Sprint state in your agent.
MCP vs REST API — when to use which
| Use case | Pick |
|---|---|
| Inside a chat-style AI editor (Claude Desktop, Cursor, Zed) | MCP |
| Custom scripts, dashboards, CI hooks, Slack bots | REST |
| Bulk data exports / migrations | REST |
| Long-running streaming workflows inside an agent loop | MCP |
MCP setup, in 30 seconds
For Claude Desktop, drop this into ~/Library/Application Support/Claude/claude_desktop_config.json and restart:
{
"mcpServers": {
"sprintflint": {
"url": "https://mcp.sprintflint.com",
"headers": { "Authorization": "Bearer YOUR_TOKEN" }
}
}
}
Cursor, Claude Code and Zed use almost identical config — full per-editor instructions on the integrations page.
Common MCP misconceptions
- "MCP replaces the API." No — MCP and REST cover different audiences. Editors use MCP, scripts use REST. Same auth token works for both.
- "The agent can do anything once connected." Only what the server's tools list allows. SprintFlint deliberately doesn't expose
delete_ticketormove_ticket_between_sprintson day one — both are reversible in the UI but the failure mode of a hallucinated argument is high. - "It's bidirectional like a webhook." No — MCP is request/response from the agent's side. The server doesn't push events at the agent unsolicited.