Stracker MCP Server 41 tools
A Model Context Protocol server that exposes the Stracker CRM API to AI agents. Works with Cursor, Claude Desktop, and any MCP-compatible client. 41 tools covering Companies, Contacts, Venue leads, Notes, Leads & activities, Agents, Users, and Schedules.
Hosted MCP (recommended)
Point your client at the public streamable-HTTP endpoint:
https://mcp.strackerapp.com/mcp
Auth: same Bearer API keys as the REST API.
Authorization: Bearer sk_prod_…
# or
X-Stracker-Api-Key: sk_prod_…
The Worker forwards each tool call to https://api.strackerapp.com/v1. Discovery / health (no auth): GET https://mcp.strackerapp.com/, GET https://mcp.strackerapp.com/healthz.
/oauth/* and /v1/oauth/* return 501. Use Bearer keys for now.
Configure your client
Settings → MCP → Add server (HTTP / remote). Example mcp.json fragment:
{
"mcpServers": {
"stracker": {
"url": "https://mcp.strackerapp.com/mcp",
"headers": {
"Authorization": "Bearer sk_prod_…"
}
}
}
}
If your Claude build supports remote MCP over HTTP, add the hosted URL with a Bearer header. Otherwise use a local stdio bridge that forwards to the REST API (see Local PHP stdio below).
{
"mcpServers": {
"stracker": {
"url": "https://mcp.strackerapp.com/mcp",
"headers": {
"Authorization": "Bearer sk_prod_…"
}
}
}
}
Tools
41 tools total. Generated from mcp/worker/codegen/routes.yaml in the strackerapp repo. Admin-gated tools are marked.
GET /companiesGET /companies/{company_id}POST /companiesPATCH /companies/{company_id}GET /contactsGET /contacts/{contact_id}POST /contactsPATCH /contacts/{contact_id}GET /venue-leadsGET /venue-leads/{venue_lead_id}PATCH /venue-leads/{venue_lead_id}GET /notesGET /notes/{note_id}POST /notesPATCH /notes/{note_id}DELETE /notes/{note_id}GET /leadsGET /leads/{lead_id}POST /leadsPATCH /leads/{lead_id}GET /leads/statusesGET /leads/{lead_id}/activitiesGET /leads/{lead_id}/activities/{activity_id}POST /leads/{lead_id}/activitiesPATCH /leads/{lead_id}/activities/{activity_id}DELETE /leads/{lead_id}/activities/{activity_id}POST /leads/{lead_id}/stagePOST /leads/{lead_id}/assigneeGET /agentsGET /agents/{agent_id}POST /agentsPOST /agents/{agent_id}/credentialsPOST /agents/{agent_id}/credentials/rotateGET /agents/{agent_id}/credentials/{key_id}/revealPOST /agents/{agent_id}/token/mintPOST /agents/{agent_id}/token/revokeGET /usersGET /schedulesGET /schedules/slotsGET /meeting-invitesPOST /meeting-invitesLocal PHP stdio (local agents only)
The PHP stdio MCP under strackerapp/main/api/mcp/ is for local agents only. Do not expose it publicly. Cloud clients should use mcp.strackerapp.com.
Worker source: strackerapp/mcp/worker/ (Worker name stracker-mcp). See the Worker README for wrangler deploy and DNS/route binding notes.
Environments
| Env | MCP | Upstream REST | Keys |
|---|---|---|---|
| Production | https://mcp.strackerapp.com/mcp | https://api.strackerapp.com/v1 | sk_prod_… |
| Local Worker + local API | http://127.0.0.1:8787/mcp | http://127.0.0.1:8888/api/v1 | sk_dev_… |
Troubleshooting
401 Unauthorized
Missing/invalid Bearer key, or mixing sk_prod_ with local / sk_dev_ with production.
501 on OAuth paths
Expected until device grant ships. Use Bearer auth.
Need a missing endpoint?
Add a row to routes.yaml, run npm run codegen, and deploy the Worker — or call the REST API directly.