MCP / API
Connect Claude, Cursor, n8n, or your own agent to the KithFlow MCP server.
MCP / API
KithFlow exposes a Model Context Protocol (MCP) server with 11 tools. Any MCP-compatible client — Claude.ai, Cursor, n8n, or your own Python/Node agent — can connect and operate your entire sales pipeline programmatically.
What is MCP?
MCP (Model Context Protocol) is an open standard for exposing tools to AI models over a consistent interface. Instead of building custom integrations per model or client, KithFlow exposes one MCP server and any compatible client can connect to it with an API key.
Server Details
| Property | Value |
|---|---|
| Server URL | https://api.kithflow.com/mcp |
| Transport | Server-Sent Events (SSE) |
| Auth | API key (passed as a tool parameter) |
| Protocol | MCP spec v1.0+ |
Authentication
Generate an API key in Settings → API Keys. Pass it as the api_key parameter in every tool call alongside your org_id.
API keys are SHA-256 hashed at rest and scoped to your organisation — no cross-org data is accessible.
All 11 Tools
Prospect Discovery
| Tool | Description |
|---|---|
search_prospects | Find companies by keyword + location using Google Maps and/or PDL |
enrich_prospect | Scrape a company's website, find a contact email via Hunter.io, generate an icebreaker |
Sequence Management
| Tool | Description |
|---|---|
enroll_in_sequence | Enroll a prospect in a named email sequence |
list_sequences | List all email sequences available in the org |
list_active_enrollments | Get all active sequence enrollments and their current step |
pause_enrollment | Pause outreach for a specific prospect |
UK Companies
| Tool | Description |
|---|---|
search_uk_companies | Search the Companies House database by name, SIC code, or postcode |
Battlecard
| Tool | Description |
|---|---|
get_prospect_dossier | Fetch the battlecard (dossier) for a given prospect ID |
generate_dossier | Trigger battlecard generation for a prospect (returns immediately; poll get_prospect_dossier for status) |
Intent Engine
| Tool | Description |
|---|---|
create_targeting_rule | Create a new targeting rule with keywords, location, cadence, and sequence |
list_targeting_rules | List all targeting rules for the org |
trigger_targeting_rule | Trigger an immediate one-off run of a specific rule |
Connecting Claude.ai
- In Claude.ai, go to Settings → Integrations → MCP Servers
- Add a new server:
- Name: KithFlow
- URL:
https://api.kithflow.com/mcp - API key: your KithFlow API key
- Save — the 11 tools appear in Claude's tool list
You can now give Claude instructions like:
"Find 20 software development companies in Manchester, enrich them, and enroll them in my Q3 sequence."
Claude will chain search_prospects → enrich_prospect → enroll_in_sequence automatically.
Connecting Cursor
In your .cursor/mcp.json (or the Cursor MCP settings UI):
{
"mcpServers": {
"kithflow": {
"url": "https://api.kithflow.com/mcp",
"transport": "sse"
}
}
}Pass your API key and org ID when invoking tools from the Cursor chat.
Connecting n8n
Use the HTTP Request node or an MCP Client node (if your n8n version supports it) to call the KithFlow MCP server.
Example flow:
- Trigger — Schedule node (e.g. every Monday 08:00)
- KithFlow: trigger_targeting_rule — pass
rule_id - Wait — 5 minutes
- KithFlow: list_active_enrollments — get new enrollments
- Slack: send message — post a summary to your channel
Example: Python Agent
import anthropic
client = anthropic.Anthropic()
# Claude will use KithFlow MCP tools automatically
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=1024,
tools=[...], # loaded from MCP server manifest
messages=[{
"role": "user",
"content": (
"Trigger my 'London IT Support' targeting rule, "
"wait for it to complete, then tell me how many "
"new prospects were enrolled."
)
}]
)Org scoping: Every tool call is scoped to the organisation associated with the provided api_key. You cannot access another organisation's data even with a valid key.
Rate Limits
| Limit | Value |
|---|---|
| Requests per minute | 60 |
search_prospects per hour | 20 |
enrich_prospect per hour | 50 |
Exceeding a limit returns a 429 Too Many Requests response. Retry after the Retry-After header value.