MCP server · Model Context Protocol

An MCP server for phone calls, SMS and your CRM

Lead Friendly runs an MCP server that lets ChatGPT, Claude or any MCP client make phone calls, send SMS and read and update CRM records through one account, under the same compliance checks a salesperson gets.

The calls are placed by the account’s own AI voice agents and the texts go out from its own number. An assistant is also held to one rule a salesperson is not: a marketing text or call needs a consent record on the contact. Everything it does, and everything it is refused, lands in a log the account owner can read.

Checked against the server code on 25 September 2026.

At a glance

Account server
https://www.leadfriendly.com/api/mcp/v1 — Streamable HTTP, JSON-RPC 2.0, an API key per assistant
Public server
https://www.leadfriendly.com/api/mcp — no key, questions about Lead Friendly only
Tools
38 on the account server (19 read, 8 write, 11 setup); 5 on the public server
Works with
Claude, ChatGPT (developer mode), Claude Code, and any MCP client that speaks Streamable HTTP
Cost
Free to connect. Texts and calls it places bill at your plan’s normal rates.

Two servers, two jobs

The account server

https://www.leadfriendly.com/api/mcp/v1

Works inside one Lead Friendly account: its contacts, deals, appointments, calls, AI agents and phone numbers. It authenticates with an API key that an owner or admin of the account creates, sent as Authorization: Bearer lf_live_… or X-LF-Api-Key: lf_live_….

For apps that only accept a URL, the key can go in the address instead: https://www.leadfriendly.com/api/mcp/v1/k/lf_live_…

The public server

https://www.leadfriendly.com/api/mcp

Answers questions about Lead Friendly itself — pricing, industries, whether it can do a job — and hands an interested prospect to the sales team. No key, no access to any customer’s data, and a rate limit per IP address.

Both speak Streamable HTTP: JSON-RPC 2.0 over POST, request and response, with no SSE stream.

The tools

A key’s scope decides which tools an assistant can see. A read-only key gets the 19 read tools; a read + setup key gets those and the 11 setup tools; a read + write key gets all 38. Tools marked Dealerships cover deals, F&I and the desk, and apply to car dealers only.

Read — 19 tools that change nothing

Read tools on the account server
ToolWhat it does
search_contactsFind contacts by name, phone, email or company, with tag and status filters. Shows who is on do-not-call.
get_contactOne contact in full: the timeline of calls, texts, appointments and notes, plus consent and opt-out status.
list_dealsVehicle deals on the desk by stage, with price, down payment, term and trade.Dealerships
get_dealOne deal in full, including the documents still missing or unsigned and the lender's decision.Dealerships
list_appointmentsUpcoming appointments in date order, with the contact each one belongs to.
list_callsRecent calls: who called, which AI agent answered, the outcome and a short summary. Filter by callback needed or topic.
get_callOne call's transcript, outcome and compliance flags, with a recording link that expires after five minutes.
check_outreach_basisWhether one contact may be texted or called for a given purpose, and on what grounds, without sending anything.
get_org_statusThe account's readiness to act: wallet, identity verification, 10DLC registration, calling window, live agents and numbers.
list_ai_agentsThe account's AI voice agents and whether each one is live.
get_ai_agentOne agent's full configuration: scripts, greetings, knowledge, voice, booking and transfer setup.
list_agent_templatesThe industry templates a new AI agent can be built from.
get_business_hoursOpening hours, time zone and dated exceptions such as holidays.
list_campaignsOutbound calling campaigns with status, schedule and outcome totals.
list_workflowsAutomations with their triggers, status and current enrolments.
list_phone_numbersThe account's numbers, which agent each one rings, SMS capability and health.
list_fi_productsThe F&I product menu: GAP, service contracts, maintenance and the rest.Dealerships
get_desk_defaultsThe fees, tax rates and term and rate presets used to structure a deal.Dealerships
search_available_numbersPhone numbers available to buy, with the monthly cost. Buys nothing.

Write — 8 tools that reach customers, records or money

Write tools on the account server
ToolWhat it does
create_contactCreate a contact. Dedupes on phone, then email, so running the same list twice is safe.
update_contactChange a contact's status, name, email or company, or add a tag. Phone numbers stay a human-only change.
log_activityWrite a note, task or outcome onto a contact's timeline, marked as written by an AI agent.
send_smsText a contact from the account's own number, after the compliance checks below.
start_outbound_callHave one of the account's AI voice agents call a contact, after the pre-dial checks below.
book_appointmentBook an appointment. The booking service handles conflicts and sends the customer's confirmation.
update_deal_stageMove a deal to a new stage. The move is checked against the legal transitions and carries its filing and inventory side effects.Dealerships
buy_numberBuy a phone number. The first call only quotes the cost; a second call with confirm:true buys it.

Setup — 11 tools that build things switched off

Setup tools on the account server
ToolWhat it does
create_agent_from_websiteBuild an AI voice agent from a template and the business's website. It starts in review and answers nothing.
update_agent_scriptEdit an agent's script, greeting, knowledge or voice. It cannot switch an agent on.
assign_number_to_agentRoute one of the account's numbers to an agent.
set_business_hoursSet the daily opening hours and time zone.
create_campaignCreate an outbound calling campaign as a draft that dials nobody until a person turns it on.
create_workflowCreate an automation, paused.
pause_campaignPause a running campaign. There is no tool that starts one.
pause_workflowPause a running automation. There is no tool that starts one.
create_fi_productAdd a product to the F&I menu.Dealerships
set_fi_product_activeShow or hide an F&I product. There is no delete.Dealerships
set_desk_defaultsChange the store's fees, tax rates and deal presets.Dealerships

Setup tools run on a read + setup key or a read + write key.

Public server — 5 tools, no key

Tools on the public server
ToolWhat it does
get_pricingCurrent plans and prices, read from the same source as the pricing page.
list_industriesThe industries Lead Friendly ships an AI agent template for, with an optional keyword filter.
check_capabilityWhether Lead Friendly can do a given job, answered from a curated list.
book_demoRequest a demo for a prospect. Returns the self-serve booking link.
create_leadHand an interested prospect to the Lead Friendly sales team. Never writes into a customer's CRM.

Try Lead Friendly free

AI voice agents + CRM + TCPA-gated compliance. Free trial: 7 days or 30 AI voice minutes, whichever comes first. No card required.

Connect it

1. Create a key

An owner or admin opens Settings → API keys in Lead Friendly and creates one key per assistant, and picks its access: “Read only”, “Read + setup” (the setup tools too, but nothing that contacts a customer) or “Read + write” (everything, texting, calling and booking included). The key is shown once; Lead Friendly keeps only a hash of it. Next to it you get the connection address, https://www.leadfriendly.com/api/mcp/v1/k/lf_live_….

2. Claude

In Claude, go to Customize → Connectors, add a custom connector and paste the connection address as the server URL. On Team and Enterprise plans an Owner adds the connector first, under Organization settings → Connectors. Switch it on in a conversation from the + menu, under Connectors.

3. ChatGPT

On the web, with a Plus, Pro, Business, Enterprise or Education plan: Settings → Security and login, turn on Developer mode, then create a developer-mode app for a remote MCP server. Paste the connection address as its URL and choose No Authentication. ChatGPT asks you to confirm write actions by default.

The connection address contains the key, so treat it like a password. Only lf_live_ keys work in an address, and revoking the key in Settings → API keys kills the address at once. The safer choice for an address is a read-only key, or a read + setup key while the assistant builds your agent; use a read + write key only when you want the assistant to text, call or book.

4. Claude Code and any other MCP client

A client that can send a header should send the key as a header rather than in the address:

claude mcp add --transport http lead-friendly https://www.leadfriendly.com/api/mcp/v1 \
  --header "Authorization: Bearer lf_live_…"

Or try it from a terminal. The public server needs no key, so this works as written:

curl -s https://www.leadfriendly.com/api/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

The same call against your own account:

curl -s https://www.leadfriendly.com/api/mcp/v1 \
  -H 'Authorization: Bearer lf_live_…' \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

The safety model

Letting an AI text your customers is only reasonable if the rules hold when the AI gets it wrong. These do, because they live in the server, not in the prompt.

The key decides the account

Each key belongs to one Lead Friendly account, and the server works out the account from the key, never from anything in the request. An id from another account is refused as not found, so there is no way to reach a second account’s data through the first account’s key.

Scopes an assistant cannot talk its way past

A read-only key is shown the 19 read tools and nothing else, and any other tool it names is refused. A read + setup key adds the 11 setup tools and still never sees the ones that text, call or book. Only an owner or admin can create keys. Make one per assistant: revoking it cuts that assistant off on its next request and leaves the others connected.

The checks a salesperson’s text or call gets

Every text runs the same chain as a text sent from the app: 10DLC registration, identity verification, do-not-call, STOP opt-outs, and 8am to 8pm in the contact’s own time zone, narrower for marketing in some states. Every call runs the pre-dial checks: wallet balance, identity verification, an E911 address on the calling number, the account’s AI calling window, limits on how often one number can be dialled in a day and in 14 days, and prior express written consent for AI marketing calls. The AI voice agent always says it is an AI, and nothing on the MCP server can turn that off.

One rule stricter than for people

A marketing text or call from an assistant needs an affirmative consent record on the contact. An assistant can call a message transactional, but that claim is checked against a real appointment, deal or earlier inbound message before it is believed.

Refusals are answers

A refused tool call comes back as ok:false with a stable code, the reason and the fix (COMPLIANCE_BLOCKED, INSUFFICIENT_WALLET, RATE_LIMITED and so on), so the assistant tells you what to change instead of retrying.

Ceilings that count the whole account

By default a key can make 120 tool calls a minute and 500 changes a day, and the whole account can send or dial 200 times a day across every connected assistant, so adding a second assistant does not double the reach. Refused attempts do not count against the daily ceilings.

A log of every call, refusals included

Settings → AI agents lists what connected assistants did and what they were refused: the tool, the result and the reason, plus the names the connected clients gave themselves. Arguments are stored only as a hash, so message text and customers’ phone numbers are not copied into the log.

Data it will not hand over

Credit-application identifiers, income and bureau scores are encrypted and never returned to an assistant. Call recordings come only as signed links that expire after five minutes.

What it builds starts switched off

Agents an assistant builds land in review, campaigns as drafts and workflows paused. No tool switches any of them on, deletes a record, releases a number or changes the plan. Buying a number takes a second call with confirm:true, after a person approves the quoted cost.

What it costs

  • The public server is free and needs no account.
  • Connecting an assistant to your account costs nothing, and there is no charge per tool call.
  • Texts and AI calls it places are billed like any other text or call on the account: your plan’s included minutes and messages first, then the prepaid wallet at your plan’s rate. If the balance cannot cover a send, the tool refuses with INSUFFICIENT_WALLET instead of sending.
  • A phone number bought through buy_number costs $3 a month, charged to the wallet when it is bought and every 30 days after.

Plans and rates are on the pricing page, and the public server’s get_pricing tool returns them live.

Compared with wiring up Twilio and a CRM yourself

Twilio’s hosted MCP server, at mcp.twilio.com/docs, is built for coding agents: it searches Twilio’s API documentation, and Twilio’s docs say it “does not execute API calls on your behalf.” Twilio’s earlier Twilio Alpha MCP server (the @twilio-alpha/mcp package, announced in April 2025) does call Twilio’s APIs; it runs locally and signs in with your Twilio Account SID and an API key. For text messages to US numbers, Twilio sells a Compliance Toolkit that can hold messages during quiet hours and block opted-out or reassigned numbers.

None of those is a CRM, so an assistant built that way works across at least two servers, and joining a send to the customer’s record in the CRM — the deal, the appointment, the history — is code you write. Lead Friendly keeps the records, the texting, the AI calls and the checks in one account.

Twilio details checked on twilio.com on 24 September 2026.

Frequently asked

Is there an MCP server that can make phone calls, send SMS and update a CRM?

Yes. Lead Friendly's account MCP server, at https://www.leadfriendly.com/api/mcp/v1, gives an AI assistant 38 tools inside one Lead Friendly account. It can have one of the account's AI voice agents call a contact, text a contact from the account's own number, and search, create and update contacts, notes, appointments and deals. Every text and call runs the same compliance checks as one sent from the app, plus a consent-record rule that applies only to AI agents.

Does it work with ChatGPT and Claude?

Yes. In Claude, add a custom connector under Customize → Connectors and paste the connection address shown when you create a key. In ChatGPT on the web (Plus, Pro, Business, Enterprise or Education), turn on Developer mode under Settings → Security and login, create an app with that address and choose No Authentication. Claude Code and any other MCP client that can send a header connect to https://www.leadfriendly.com/api/mcp/v1 with Authorization: Bearer and the key.

Is it safe to let an AI agent text my customers?

The safety does not depend on the AI behaving well. A read-only key never shows the assistant the texting tool. With a write key, every text still runs 10DLC registration, do-not-call, STOP opt-out and quiet-hours checks in the customer’s own time zone, and a marketing text needs a consent record on file; calling a message transactional only works if a real appointment, deal or conversation exists. Refusals come back with the reason and the fix, every attempt is logged in Settings → AI agents, and an account is capped at 200 texts and calls a day by default.

What does it cost?

Connecting costs nothing and there is no charge per tool call. Texts and calls the assistant places are billed like any other text or call on the account: the plan's included minutes and messages first, then the prepaid wallet at the plan's rate. A phone number bought through the server costs $3 a month. The public product server is free and needs no account.

What is the difference between the two Lead Friendly MCP servers?

The public server at https://www.leadfriendly.com/api/mcp needs no key and only answers questions about Lead Friendly (pricing, industries, capabilities) or passes a prospect to the sales team. The account server at https://www.leadfriendly.com/api/mcp/v1 needs an API key and works inside that one account's CRM, phone numbers and AI agents.

Can the assistant spend money or change things without me?

Only in the ways the key allows. Texts and calls draw on the account’s wallet, so they need a write key and pass the checks above. Buying a phone number takes two calls: the first quotes the price and buys nothing, and the second must carry confirm:true after a person has approved it. Agents, campaigns and automations the assistant builds start switched off, and no tool turns them on, deletes records or changes the plan.

Try Lead Friendly free

AI voice agents + CRM + TCPA-gated compliance. Free trial: 7 days or 30 AI voice minutes, whichever comes first. No card required.