SpedySpedy Docs

Coding Tools

Open tickets directly in Claude Code, Cursor, Devin, or your preferred AI coding assistant.

The Coding Tools feature connects Spedy tickets with external AI coding assistants. Instead of copying context manually, hand it over with a single click.

Prerequisites

  • The org feature AI Coding Tools must be enabled under Settings → Features (enabled by default, all plans).
  • Each user picks their own tools under Account → Coding Tools.

Setting up tools

  1. Go to Account → Coding Tools.
  2. Enable the tools you use with the toggle next to each entry. No tool is enabled by default.
  3. For the Custom tool: enable it and enter your own URL template. Available placeholders: {{prompt}}, {{context}}, {{issue.identifier}}, {{issue.branchName}}.

Supported tools

Web-based: Claude Code, Codex, Devin, Lovable, Replit, v0, Netlify Agents.

Desktop (deep-link): Cursor, Windsurf, Zed, GitHub Copilot, Codex Desktop, Conductor, Factory, Warp.

CLI: OpenCode (copies the shell command to the clipboard).

Custom: Freely configurable URL template.

Ticket header menu

A split button appears in the header of every ticket:

  • Left side (primary action): Runs the last-used action. Default: Copy as prompt -- copies the ticket context to the clipboard.
  • Right side (dropdown): Opens the menu with all enabled tools and a link to the settings page.

When you click a tool in the dropdown, it is saved as the new primary action. On the next ticket, a single click on the left side is enough.

Customising the prompt template

Under Account → Coding Tools you will find the prompt template as an editable text field. Click the variable chips to insert them at the cursor position.

Available variables

VariableDescription
{{identifier}}Ticket ID, e.g. ACME-42
{{title}}Ticket title
{{context}}Full ticket context as markdown (description, comments, sub-tickets, links)
{{branchName}}Suggested git branch name

The default template includes an MCP hint that tells the tool to query and update Spedy directly via the MCP server (e.g. tickets_get, tickets_update, tickets_add_comment, knowledge_search). If you prefer a purely static handover, delete that paragraph from the template.

Resetting the template

Click Reset to default to return to the built-in template.

MCP tools for ticket management

When an AI coding assistant connects to Spedy via MCP, it can read and write tickets programmatically. The MCP server exposes tools for the full ticket lifecycle.

Creating and updating tickets

tickets_create and tickets_update accept the complete set of ticket properties:

PropertyDescription
title, descriptionBasic ticket content
assigneeIdAssign a team member (pass null to unassign)
statusIdMove the ticket to a board column
typeIdSet the ticket type
prioritylow, medium, high, or critical
estimatedHoursTime estimate (0–1000 hours)
dueDate, plannedStartDateDates in ISO 8601 format
storyPointsComplexity estimate (1–1000)
externalReferenceCustomer-facing identifier
targetEnvironmente.g. production or staging
impactLevellow, medium, high, or critical
labelIdsArray of label IDs (replaces the set; [] clears)
milestoneIdAssign to a milestone (pass null to clear)

Custom fields

Use tickets_set_custom_fields to set organization-wide custom field values on a ticket. Supported types: text, number, date, select, and checkbox. Values are validated against the field definition.

Discovery tools

To resolve the IDs needed by the setters, use these query tools:

  • labels_list — all org labels with ID, name, color, and ticket count
  • milestones_list — board milestones with ID, name, due date, and completion progress
  • custom_fields_list — custom field definitions with ID, type, required flag, and select options

Reading tickets

tickets_get returns the full property set including labels, milestone, and custom field values, so reads and writes stay consistent.

MCP tools for Pull Requests and Pipelines

AI agents can also query pull request and CI/CD pipeline data via MCP — the same data that powers the Pull Requests and Pipelines views in the browser.

Listing pull requests

pull_requests_list returns a paginated overview of all pull and merge requests across connected providers (GitHub, GitLab, Bitbucket), scoped to the boards you can access.

ParameterDescription
providerFilter by GITHUB, GITLAB, or BITBUCKET
stateOPEN, DRAFT, MERGED, or CLOSED
boardIdRestrict to a single board
repositoryFilter by repository name (contains)
authorFilter by author name (contains)
branchFilter by source or target branch (contains)
searchFree-text search on title, repo, branch, author, or PR number
onlyOpenShortcut for state=OPEN
onlyFailedOnly PRs whose pipeline currently failed
limit, pagePagination (default: 25 per page, max 100)

Getting pull request details

pull_requests_get returns the full detail of a single pull request by its Spedy aggregate ID (from pull_requests_list), including:

  • CI pipeline steps with status, type, and duration
  • Reviews with reviewer name, status, and body
  • Recent events with type and timestamp

Listing pipeline runs

pipelines_list shows CI/CD pipeline runs grouped by status bucket, mirroring the Pipelines view:

ParameterDescription
statusneeds-attention (default), running, failed, success, or all
providerFilter by GITHUB, GITLAB, or BITBUCKET
boardIdRestrict to a single board
limit, pagePagination (default: 25 per page, max 100)

Results include per-bucket counts (needsAttention, running, failed, success, total) so the agent can assess overall CI health at a glance.

All three tools are read-only (SAFE risk level), require the mcp:read scope, and are scoped to the boards the connected user can access.

Tips

  • Only enable the tools you actually use -- it keeps the dropdown clean.
  • Set up MCP integration under Account → MCP so tools can access live data via MCP.
  • Use the Custom tool when your preferred tool is not on the list.