MCP Tools Reference
Every tool available on the Octolane MCP server, organized by category. Each tool includes its parameters, types, and example usage.
All tools are available at https://mcp.octolane.com/mcp and require authentication via the X-API-Key header.
Search & Query
Tools for finding and retrieving data from your CRM.
search_deals
Search deals by name, stage, value, owner, or any custom field.
Search term to match against deal name, company, or description.
Filter by pipeline stage (e.g., “Negotiation”, “Proposal”).
Filter by deal owner email or name.
Deal status: open, won, lost. Defaults to open.
Maximum results to return. Defaults to 20, max 100.
Prompt: “Show me all open deals worth more than $50K”Tool call: {
"tool" : "search_deals" ,
"arguments" : {
"status" : "open" ,
"min_value" : 50000
}
}
Response: {
"deals" : [
{
"id" : "deal_abc123" ,
"name" : "Stripe - Enterprise Plan" ,
"stage" : "Negotiation" ,
"value" : 120000 ,
"owner" : "sarah@yourcompany.com" ,
"company" : "Stripe" ,
"last_activity" : "2026-03-06T14:30:00Z" ,
"days_in_stage" : 5
},
{
"id" : "deal_def456" ,
"name" : "Notion - Annual Contract" ,
"stage" : "Proposal" ,
"value" : 85000 ,
"owner" : "mike@yourcompany.com" ,
"company" : "Notion" ,
"last_activity" : "2026-03-04T09:15:00Z" ,
"days_in_stage" : 12
}
],
"total" : 2
}
Search contacts by name, email, company, or any field.
Search term to match against name, email, or company.
Filter by company name or domain.
Filter by job title (partial match).
Maximum results to return. Defaults to 20, max 100.
Prompt: “Find all contacts at Stripe”Tool call: {
"tool" : "search_contacts" ,
"arguments" : {
"company" : "Stripe"
}
}
Response: {
"contacts" : [
{
"id" : "contact_xyz789" ,
"name" : "Sarah Chen" ,
"email" : "sarah@stripe.com" ,
"title" : "VP of Sales" ,
"company" : "Stripe" ,
"phone" : "+1 (415) 555-0142" ,
"linkedin" : "https://linkedin.com/in/sarachen" ,
"last_contacted" : "2026-03-06T14:30:00Z"
}
],
"total" : 1
}
search_companies
Search companies by name, domain, industry, or size.
Search term to match against company name or domain.
Maximum results to return. Defaults to 20, max 100.
Prompt: “Find SaaS companies with 100-500 employees”Tool call: {
"tool" : "search_companies" ,
"arguments" : {
"industry" : "SaaS" ,
"min_size" : 100 ,
"max_size" : 500
}
}
get_deal
Get full details of a specific deal including activity timeline, associated contacts, and agent actions.
Include the full activity timeline. Defaults to true.
Include associated contacts. Defaults to true.
Prompt: “Pull up the Stripe deal”Response includes: deal details, current stage, value, close date, all associated contacts with roles, full activity timeline (emails, meetings, agent actions, notes), action items, and next steps.
Get full details of a contact including enrichment data, communication history, and associated deals.
Include associated deals. Defaults to true.
Include communication history. Defaults to true.
get_company
Get full details of a company including enrichment data, contacts, deals, and Signal visit history.
Include all contacts at this company. Defaults to true.
Include all deals with this company. Defaults to true.
Include Signal website visit data. Defaults to true.
get_pipeline
Get a pipeline overview with deal counts, values, and conversion rates per stage.
Specific pipeline ID. Returns the default pipeline if omitted.
Time period for metrics: this_week, this_month, this_quarter, last_quarter. Defaults to this_month.
Prompt: “What’s our pipeline look like this quarter?”Tool call: {
"tool" : "get_pipeline" ,
"arguments" : {
"period" : "this_quarter"
}
}
Response: {
"pipeline" : "Default Pipeline" ,
"period" : "this_quarter" ,
"total_value" : 847000 ,
"total_deals" : 23 ,
"stages" : [
{ "name" : "New Lead" , "deals" : 8 , "value" : 156000 },
{ "name" : "Meeting Scheduled" , "deals" : 5 , "value" : 210000 },
{ "name" : "Proposal" , "deals" : 4 , "value" : 185000 },
{ "name" : "Negotiation" , "deals" : 3 , "value" : 196000 },
{ "name" : "Closed-Won" , "deals" : 3 , "value" : 100000 }
],
"at_risk" : 4 ,
"stale" : 6
}
get_activity_feed
Get recent activity for a deal, contact, or company.
The ID of the deal, contact, or company.
Type of record: deal, contact, company.
Maximum activity entries to return. Defaults to 20.
Create & Update
Tools for writing data to your CRM. Records created via MCP are immediately picked up by Octolane’s agents for enrichment and follow-up.
create_deal
Create a new opportunity in your pipeline. The deal is automatically picked up by agents - contacts are enriched, the Follow-Up Agent starts monitoring, and activity tracking begins.
Deal name (e.g., “Stripe - Enterprise Plan”).
Deal value in your workspace currency.
Pipeline stage. Defaults to the first stage in your default pipeline.
Company name or domain. Creates or links to existing company record.
Primary contact email. Creates or links to existing contact.
Expected close date in ISO 8601 format.
Initial notes to attach to the deal.
Prompt: “Create a deal for my meeting with Stripe tomorrow - $120K enterprise plan, negotiation stage”Tool call: {
"tool" : "create_deal" ,
"arguments" : {
"name" : "Stripe - Enterprise Plan" ,
"value" : 120000 ,
"stage" : "Negotiation" ,
"company" : "stripe.com" ,
"contact_email" : "sarah@stripe.com" ,
"close_date" : "2026-04-15"
}
}
What happens next: Octolane creates the deal, links or creates the company and contact records, enriches the contact with LinkedIn data and job title, enriches the company with size/funding/tech stack, and the Follow-Up Agent starts monitoring the email thread for stale conversations.
update_deal
Update any field on an existing deal.
Key-value pairs for custom field updates.
Create a new contact. Automatically enriched with job title, company, social profiles, and more.
Update fields on an existing contact.
Key-value pairs for custom field updates.
create_company
Create a new company record. Automatically enriched with size, industry, funding, tech stack, and social profiles.
Company domain (e.g., “stripe.com”).
Company name. Auto-detected from domain if omitted.
create_note
Attach a note to a deal, contact, or company.
The ID of the deal, contact, or company.
Type of record: deal, contact, company.
Note content (plain text or markdown).
Agent Commands
These tools are the differentiator. No other CRM MCP server gives you access to real-time website visitor intelligence or natural language pipeline queries.
get_signal_visitors
Get companies currently visiting or who recently visited your website, with ICP scoring and page-level data from Signal.
Time period: today, this_week, this_month. Defaults to this_week.
Minimum ICP match score (0-100). Filter to high-quality visitors.
Filter by page URL path (e.g., “/pricing” to see visitors on your pricing page).
Maximum results. Defaults to 20, max 100.
Prompt: “What companies visited our pricing page this week with an ICP score above 80?”Tool call: {
"tool" : "get_signal_visitors" ,
"arguments" : {
"period" : "this_week" ,
"min_icp_score" : 80 ,
"page_filter" : "/pricing"
}
}
Response: {
"visitors" : [
{
"company" : "Linear" ,
"domain" : "linear.app" ,
"icp_score" : 94 ,
"employee_count" : 120 ,
"industry" : "Developer Tools" ,
"funding" : "Series B - $52M" ,
"pages_viewed" : [ "/" , "/pricing" , "/features" , "/pricing" ],
"total_visits" : 4 ,
"first_visit" : "2026-03-03T10:22:00Z" ,
"last_visit" : "2026-03-07T15:44:00Z" ,
"existing_deal" : null ,
"existing_contacts" : []
},
{
"company" : "Ramp" ,
"domain" : "ramp.com" ,
"icp_score" : 87 ,
"employee_count" : 800 ,
"industry" : "Fintech" ,
"funding" : "Series D - $750M" ,
"pages_viewed" : [ "/pricing" , "/vs-hubspot" ],
"total_visits" : 2 ,
"first_visit" : "2026-03-05T11:15:00Z" ,
"last_visit" : "2026-03-06T09:30:00Z" ,
"existing_deal" : null ,
"existing_contacts" : []
}
],
"total" : 2
}
ask_pipeline
Ask a natural language question about your pipeline and get an instant answer. This tool uses the same AI engine as Octolane’s in-app AI Chat.
Your question in plain English.
“Which deals are at risk of going stale?”
“What’s our pipeline value this quarter vs last quarter?”
“How many deals did we close this month?”
“Which rep has the most deals in negotiation?”
“What’s our average deal size by industry?”
“Show me deals closing this month that haven’t had a meeting in 2 weeks”
“What’s our win rate for deals over $50K?”
Prompt: “Which deals are at risk?”Tool call: {
"tool" : "ask_pipeline" ,
"arguments" : {
"question" : "Which deals are at risk of going stale?"
}
}
Response: {
"answer" : "You have 4 deals at risk of going stale:" ,
"deals" : [
{
"name" : "Notion - Annual Contract" ,
"value" : 85000 ,
"stage" : "Proposal" ,
"days_since_last_activity" : 14 ,
"owner" : "mike@yourcompany.com" ,
"risk_reason" : "No email or meeting activity in 14 days. Last interaction was a proposal sent on Feb 22."
},
{
"name" : "Figma - Team Plan" ,
"value" : 42000 ,
"stage" : "Meeting Scheduled" ,
"days_since_last_activity" : 11 ,
"owner" : "sarah@yourcompany.com" ,
"risk_reason" : "Meeting was scheduled but cancelled. No follow-up sent."
}
],
"suggestion" : "The Follow-Up Agent has drafts ready for 2 of these deals. Check your approval queue."
}
Rate limits
MCP tools share the same rate limits as the REST API: 100 requests per minute per API key. If you hit the limit, you’ll receive a 429 response with a Retry-After header.
Most AI assistants handle rate limiting automatically by waiting and retrying.