Skip to main content
RaiseGate exposes the Partner API as a remote Model Context Protocol server, so AI assistants and agents (Claude, Cursor, custom agents) can work with a VC’s RaiseGate tracker directly: list and add companies, read signals and alerts, and triage leads.

What the connection can do

The MCP server uses exactly the same credentials and rules as /api/v1:
  • The key decides the organisation. A connection can only see and change that organisation’s data.
  • Each tool call is checked against the key’s scopes. A tool the key is not allowed to use returns a tool error with insufficient_scope; the rest keep working. A read-only key (tracker:read, leads:read) can browse but cannot add, change or track anything.
  • Each tool call counts against the key’s rate limits (600 reads/min, 120 writes/min, 200 creates or lead tracks/hour, 60 refreshes/hour). Over the limit, the tool returns rate_limited with retryAfterSeconds.
  • A missing, unknown, revoked or expired key is rejected before the MCP handshake with HTTP 401.
Draft enrichment (POST /tracker/enrich) is deliberately not exposed. It waits up to four minutes, longer than most MCP client timeouts. add_company returns in seconds and enriches in the background.

Server instructions

On connection the server sends instructions that orient the model: what companies, signals, alerts and leads are; that lists are compact; that names can be passed instead of IDs and ambiguity should go back to the user; and that removing, pausing and rejecting need the user’s confirmation.

Example session

A VC asking their assistant “what’s new with my portfolio, and anything worth tracking?” typically results in:
1

Signals worth acting on

list_signals { "needsAttention": true, "since": "2026-09-18" }
2

What was emailed

list_alerts { "since": "2026-09-18" }
3

The lead inbox

list_leads { "decision": "unreviewed" }
4

Decide

After the user picks one: track_lead { "id": "…", "thingsToTrack": "…", "alertEmails": ["…"] }. After they dismiss another: decide_lead { "id": "…", "accepted": false }.

Implementation

Tools call the service layer directly, not the REST routes over HTTP. Built on @modelcontextprotocol/sdk (McpServer and WebStandardStreamableHTTPServerTransport). Tested end to end with the official MCP TypeScript client over Streamable HTTP (34 checks), locally and against production.