kpi-dealflow-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@kpi-dealflow-mcpAdd Jane Doe as a lead looking for a condo in Miami."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
kpi-dealflow-mcp
MCP (Model Context Protocol) server for KPI DealFlow — connect Claude, Cursor, or any MCP-compatible AI assistant directly to your real estate pipeline.
What it does
Gives your AI agent four tools:
Tool | Description |
| Add a new prospect to your pipeline |
| List and filter leads by stage or temperature |
| Pull full details on a specific lead |
| Move a lead through the funnel or update notes |
Related MCP server: Pipedrive MCP Server
Prerequisites
A KPI DealFlow account
An API key — generate one at Settings → API Access inside the app
Node.js 18 or newer
Setup
Claude Desktop (recommended)
Add this to your claude_desktop_config.json:
{
"mcpServers": {
"kpi-dealflow": {
"command": "npx",
"args": ["kpi-dealflow-mcp"],
"env": {
"KPIDEALFLOW_API_KEY": "kpid_your_key_here"
}
}
}
}Config file locations:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
Restart Claude Desktop after saving.
Other MCP clients
Any client that supports stdio MCP servers works the same way — point it at npx kpi-dealflow-mcp with your KPIDEALFLOW_API_KEY env var set.
Run directly (for testing)
KPIDEALFLOW_API_KEY=kpid_your_key npx kpi-dealflow-mcpUsage examples
Once connected, just talk to your agent:
"Add John Smith as a lead — he called in wanting to buy a 3-bed in Northampton, timeline is 90 days. Phone 413-555-1234."
"Who are my hot leads right now?"
"Move John Smith to Qualified Lead — we agreed to a buyer consultation Thursday."
"Show me all my Qualified Leads."
Environment variables
Variable | Required | Default | Description |
| Yes | — | Your API key from kpidealflow.com/settings |
| No |
| Override for self-hosted or staging |
License
MIT
Available Tools
4 toolsadd_leadA
Add a new lead to the KPI DealFlow pipeline. Use this when someone calls in, texts, emails, or is otherwise identified as a prospect.
| Name | Required | Description | Default |
|---|---|---|---|
| No | Email address | ||
| notes | No | Any additional context or notes about the lead | |
| phone | No | Phone number | |
| source | No | How the lead was generated — e.g. "Cold Call", "Zillow", "Door Knock", "Referral" | |
| inbound | No | True if the lead reached out first (inbound), false if you initiated (outbound) | |
| last_name | No | Last name | |
| lead_type | No | Type of lead | Buyer |
| first_name | Yes | First name of the lead (required) | |
| lead_status | No | Temperature/urgency of the lead | Warm |
| funnel_status | No | Where in the funnel the lead sits | Contact |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It describes the basic action ('Add a new lead') but does not disclose behavioral details such as side effects, authentication requirements, or what happens after creation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise—two sentences with no fluff—and front-loads the core purpose immediately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having 10 parameters and no output schema or annotations, the description is minimal. It does not explain the return value, success indicators, or potential pitfalls, leaving room for necessary detail.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents all parameters. The description adds no additional parameter-level context beyond the overall purpose, meeting the baseline but not exceeding it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Add') and resource ('lead to the KPI DealFlow pipeline'), and it clearly distinguishes from sibling tools like list_leads, get_lead, and update_lead.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit scenarios for use ('when someone calls in, texts, emails, or is otherwise identified as a prospect'), providing context for when to use this tool, though it does not explicitly state when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_leadA
Get full details for a specific lead by ID.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The lead ID (from add_lead or list_leads) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It says 'Get full details' but does not specify the structure of the response or any potential limits. The description is adequate but not enhanced.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence with no wasted words, front-loaded with the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple get tool with one parameter and no output schema, the description is mostly complete. It could mention that the output contains lead details, but it's implied.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with the id parameter described as 'The lead ID (from add_lead or list_leads)'. The description adds no further meaning beyond the schema, meeting the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves full details for a specific lead by ID, using a specific verb and resource. It implicitly distinguishes from siblings like list_leads (list) and add_lead (create).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description indicates the tool is for getting details by ID, making usage clear. However, it does not explicitly contrast with siblings like list_leads for when to use a list instead.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_leadsB
List leads from the KPI DealFlow pipeline. Filter by stage, status, or inbound/outbound.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of leads to return (max 100) | |
| inbound | No | Filter by inbound (true) or outbound (false) | |
| lead_status | No | Filter by lead temperature | |
| funnel_status | No | Filter by funnel stage |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It does not disclose any behavioral traits such as read-only nature, pagination (although limit is in schema), or any prerequisites. It only states the listing action and filters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, with the first stating the core purpose. Every word earns its place, no fluff or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 4 parameters, no output schema, and no annotations, the description covers the basic action and filters but omits mention of the limit parameter and fails to differentiate from sibling tools. It is adequate but not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description summarizes filter options but adds no new meaning beyond the schema's parameter descriptions. No additional semantics or constraints are offered.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List', the resource 'leads', and the source 'KPI DealFlow pipeline'. It also mentions filtering capabilities, which distinguishes it from sibling tools that add, get, or update leads.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide explicit guidance on when to use this tool versus alternatives like add_lead, get_lead, or update_lead. It only implies that it is for listing, but no when-not or context is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_leadB
Update a lead — move them through the pipeline, change their status, or add notes.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The lead ID to update | |
| notes | No | Add or replace notes on the lead | |
| source | No | Update the lead source | |
| lead_status | No | Update lead temperature | |
| funnel_status | No | Move the lead to this pipeline stage |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It states 'Update' (mutation) but lacks details on side effects (e.g., whether notes are appended or replaced), required permissions, or error states like non-existent id.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the purpose. It is efficient but could be slightly expanded for clarity without being verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 5 parameters and no output schema, the description covers main use cases but lacks details on return value or behavior (e.g., whether notes are replaced or appended). Adequate but has gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description aligns with parameters (e.g., 'move through pipeline' maps to funnel_status) but does not add new meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Update a lead' and lists specific actions (move through pipeline, change status, add notes). It distinguishes itself from siblings like add_lead (create) and list_leads (read).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use (to modify an existing lead) but does not explicitly guide when not to use or compare to alternatives like add_lead or get_lead. No exclusion criteria or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
4 tool updates
v1.0.1- First observed
add_lead - First observed
get_lead - First observed
list_leads - First observed
update_lead
TDQS
Scored across 4 tools
Each tool targets a distinct operation on leads: creation, listing, retrieval, and update. There is no overlap in purpose, making it easy for an agent to select the correct tool.
All tools follow a consistent verb_noun pattern with snake_case (e.g., add_lead, list_leads, get_lead, update_lead). The minor pluralization in list_leads does not detract from clarity.
Four tools is well-scoped for a lead pipeline server. Each tool serves a necessary function without redundancy, and the count falls comfortably within the 3-15 ideal range.
The tools cover the core lead lifecycle: add, list, get, and update. A delete tool is missing, but for many pipelines this may be intentional. Overall, the surface is adequately complete for common agent tasks.
Maintenance
Related MCP Connectors
AI lead-finder for agents: pull scored leads, draft replies in your voice, work the pipeline.
- PlixanaOAuthcom.plixana
Operate the Plixana CRM from any AI: contacts, deals, quotes, WhatsApp and metrics.
Operate Obriym CRM from your AI assistant: leads, deals, orders, catalog, stock, marketplaces.
Connect AI to your Attio CRM. Manage contacts, companies, deals, and sales pipelines. Create tasks…
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceIntegrates CRM data with AI agents to manage leads, track pipeline statistics, and search price catalogs via Supabase. It enables automated lead creation, stage updates, and history tracking through natural language commands.-
- AlicenseBqualityAmaintenanceEnables users to manage Pipedrive CRM data including deals, contacts, and activities directly through an AI assistant. It supports full CRUD operations, email engagement analysis, and mapping of custom field metadata for comprehensive pipeline management.123135 npm8MIT
- FlicenseBqualityDmaintenanceEnables AI assistants to autonomously interact with Kommo CRM, providing tools for managing pipelines, leads, contacts, and custom fields via the Kommo API v4.271-
- FlicenseBqualityDmaintenanceEnables AI assistants to manage CRM deals and tasks on Aspro Cloud, including CRUD operations on deals, tasks, users, pipelines, and workflows.16-