/
PricingBlogSign InRequest a demo

Developer portal

Spedy for developers and their agents.

An MCP server per organisation, a REST API with OpenAPI, webhooks, OAuth apps and extensions for IDE and browser. Everything you need to connect your own agents and tools to Spedy. Spedy runs no agents, it is the layer their work lands in.

Bring your own agent

The pull model: your agent fetches its own work.

A loop on your side (Claude Code, Codex, Cursor or a loop of your own) connects over MCP as an agent user: a seat-free machine user with no login, owned by a human and working with a scoped token (allowed boards, read-only, no deletes, label). The loop takes a ticket exclusively with tickets_claim (of two loops exactly one wins), works in the repo, opens the pull request and finishes with tickets_report: comment, PR link, status, timer and claim release in one call. The time lands as a draft on the ticket and a human approves it before it becomes an hour. Spedy triggers nothing and hosts nothing. Agent users come with Pro; with a human's personal token the same loop runs on every plan.

A reference loop as an example implementation lives in the docs, as a template, not as a product.

The interfaces

Four ways into the same organisation, all with the same permissions and the same tenant isolation.

MCP server

One streamable-HTTP MCP endpoint per organisation: tickets, boards, wiki, knowledge, pull requests, pipelines, timers and work context. Works with Claude Code, Claude Desktop, Codex, Cursor and any MCP client.

Endpoint per organisation

https://<org>.spedy.ai/api/v1/mcp

Auth: OAuth 2.0 with PKCE (RFC 7636) and Dynamic Client Registration (RFC 7591) for hosted clients, personal access tokens for humans at the CLI, scoped agent tokens for loops (Pro and up).

REST API

Everything the UI can do, the API can do: tickets, boards, time, wiki, pull requests, members. OpenAPI specification for generating typed clients.

https://spedy.ai/api/docs-json

Webhooks

Ticket, comment, PR and pipeline events as signed HTTP calls to your systems. ticket.assigned is the wake-up signal for an agent loop; claims and reports have events of their own.

Events

  • ticket.created
  • ticket.updated
  • ticket.deleted
  • ticket.status_changed
  • ticket.assigned
  • ticket.claimed
  • ticket.claim_released
  • ticket.claim_expired
  • ticket.reported
  • comment.created
  • pr.opened
  • pr.status_changed
  • pr.merged
  • pipeline.updated

OAuth apps

Your own integrations with authorization code + PKCE and scoped tokens. Users authorise your app once and revoke any time.

Who authenticates with what

Three kinds of token, one permission model. Every action is attributed to a user; for agents, to the agent user and the human it belongs to.

WhoWith whatFor what
Human in editor or chatOAuth 2.0 with PKCE (RFC 7636) and Dynamic Client Registration (RFC 7591), or a personal access tokenClaude Desktop, hosted MCP connectors, browser extension, IDE plugin, CLI
Agent loopScoped token of an agent user: allowed boards, read-only, no deletes, label (Pro and up)tickets_claim, work, tickets_report: comment, PR, status, time as a draft
Your own integrationOAuth app with scoped tokensREST API and webhooks in your systems

Discovery for agents

Machine-readable entry points so an agent finds Spedy without scraping.

Show us your loop.

If you already run your own agents, we’ll show you in 20 minutes how their work lands in Spedy: ticket, PR, time for approval.

Developer portal: MCP server, REST API, webhooks, OAuth | Spedy