100+ integrations are ready to connect to your AI.Connect your first MCP

CallRail MCP server for your AI

Pull recordings and the page-view trail behind a call, qualify calls and texts with tags and values, create source or keyword-pool tracking numbers, and watch webhooks for missed calls.

PopMCPCallRail

Compare call and form-submission volume by source for last month

Supported CallRail tools

Every call, tracker, lead, form, text and company operation the API exposes, plus the webhook and polled triggers your agent can subscribe to.

callrail_create_call

Place a REAL outbound phone call: CallRail dials business_phone_number first, then bridges the answering agent to customer_phone_number.

callrail_get_call

Get one call in full by its id.

callrail_get_call_page_views

Get the website browsing history for the visitor session that produced a call — every page they viewed, in order, with timestamps and referrers.

callrail_get_call_recording

Get the recording for a call: a short-lived download URL for the audio plus a shareable stand-alone player URL.

callrail_get_calls_summary

Aggregate call counts for a period, optionally grouped by a marketing dimension.

callrail_get_calls_timeseries

Call volume over time, bucketed by hour, day, week, month or year.

callrail_list_calls

List individual tracked phone calls, newest first.

callrail_update_call

Update a call's CRM fields: qualify it as a lead, set its value, add a note, apply tags, rename the customer, or mark it as spam.

callrail_create_session_tracker

Create a SESSION tracker (keyword pool): a POOL of tracking numbers, one served per website visitor, so each call can be tied back to that visitor's keywords and browsing history.

callrail_create_source_tracker

Create a SOURCE tracker: ONE tracking number dedicated to one channel — a billboard, a print ad, a Google Ads campaign, a specific referring site.

callrail_get_tracker

Get one tracker in full: its type, tracking number(s), destination, call flow, source rules, whisper message, swap targets and SMS setting.

callrail_list_trackers

List the tracking numbers (trackers) in this account: their type (source or session/keyword pool), the phone number(s) they own, the company they belong to, their call flow, source configuration, SMS capability and status.

callrail_create_company

Create a company in this account.

callrail_get_company

Get one company by id: its name, time zone, status, script URL and the feature switches (CallScore, CallScribe, external form capture, cookie/swap settings) that govern how calls to it are tracked and analysed.

callrail_list_companies

List the companies in this account — the top-level containers that own trackers, calls, forms and users.

callrail_update_company

Update one company: rename it, change its time zone, or turn its tracking and analysis features on or off (CallScore lead scoring, CallScribe transcription, external form capture, PPC/landing-page source overrides, cookie duration).

callrail_get_forms_summary

Aggregate form-submission counts for a period, optionally grouped by source, keywords, campaign, referrer, landing page, form name or company.

callrail_list_form_submissions

List website form submissions captured by CallRail, newest first, with the submitted field values and their marketing attribution (source, referrer, landing page, UTMs).

callrail_list_users

List the users on this account with their name, email, role and creation date.

callrail_update_form_submission

Qualify a form submission: set its lead status and value, add a note, or apply tags.

callrail_create_tag

Create a tag.

callrail_list_outbound_caller_ids

List a company's verified Outbound Caller IDs — the external phone numbers allowed to appear as the caller when placing outbound calls through CallRail.

callrail_list_tags

List the tags defined in this account, with their id, name, colour, level and status.

callrail_update_tag

Rename a tag, recolour it, or disable it.

callrail_get_conversation

Get one text conversation with its full message history — who said what, when, and in which direction.

callrail_get_sms_thread

Get one SMS thread with its paginated message history.

callrail_list_conversations

List text-message conversations, each with its participants, tracking number and recent messages.

callrail_list_sms_threads

List SMS threads in the newer thread shape — the same conversations as callrail_list_conversations, but with the CRM layer (lead qualification, tags, notes, value) and a keyword search over customer name, phone number and tag.

callrail_send_text_message

Send a REAL SMS (or MMS) to a customer from one of your CallRail tracking numbers.

callrail_update_sms_thread

Qualify an SMS thread: set its lead status and value, add notes, apply tags.

callrail_get_account

Get the CallRail account this connection is locked to: its name, id, plan, outbound recording setting and the hard call/SMS quotas it is billed against.

callrail_get_lead_timeline

Get one lead's complete interaction timeline: every call, text, form submission, chat and milestone in order, plus first-touch and last-touch attribution, the touchpoint that created and qualified the lead, tags, click ids (gclid/gbraid/wbraid/msclkid/fbclid) and any AI Convert Assist insight.

callrail_list_leads

List leads — people, deduplicated across every interaction they have had with the business (calls, texts, forms, chats) rather than one row per call.

callrail_disable_tracker

Disable a tracker and release its tracking number(s).

callrail_update_session_tracker

Update a SESSION tracker (keyword pool): rename it, grow the pool, change the call flow or which visitors it serves, adjust swap targets or the whisper message, or replace a spam-hit number in the pool.

callrail_update_source_tracker

Update a SOURCE tracker: rename it, change where calls ring or whether they are recorded (call_flow), change which traffic it serves (source), set the campaign name, whisper message or swap targets, or replace its phone number.

callrail_bulk_update_companies

Apply one setting to many companies at once (currently external form capture).

callrail_disable_company

Disable a company.

callrail_create_form_submission

Record a form submission in CallRail from an external system — for forms CallRail's JavaScript does not capture itself.

callrail_create_integration

Create an integration for a company — most usefully a Webhooks integration that POSTs call, text and form events to your own URLs in real time.

callrail_create_integration_filter

Create an integration filter so an integration only fires for calls that matter — for example only first-time calls over 30 seconds, or only calls already marked as good leads.

callrail_create_message_flow

Create a message flow: an automation that responds to inbound texts on a tracking number — auto-reply, apply tags, then hand off.

callrail_create_summary_email

Subscribe someone to recurring summary emails of call activity.

callrail_create_user

Invite a new user to the account.

callrail_delete_integration_filter

Delete an integration filter.

callrail_delete_message_flow

Delete a message flow.

callrail_delete_summary_email

Unsubscribe someone from summary emails.

callrail_delete_user

Remove an user from the account, revoking their access immediately.

callrail_disable_integration

Disable an integration so CallRail stops sending it events.

callrail_get_integration

Get one integration: its type, state and full config (for a Webhooks integration, the URLs subscribed to each event).

callrail_get_integration_filter

Get one integration filter: the integration it belongs to and the tracker, call-type, duration and lead-status conditions a call must meet to be forwarded.

callrail_get_message_flow

Get one message flow with its complete step graph.

callrail_get_summary_email

Get one summary-email subscription: who receives it, on what schedule, for which company, and which sections it includes.

callrail_get_user

Get one user by id: name, email, role and the companies they can access.

callrail_list_integration_filters

List a company's integration filters — the rules that decide WHICH calls reach an integration (by tracker, call type, duration or lead status), so a CRM only receives real leads instead of every misdial.

callrail_list_integrations

List a company's integrations — webhooks and the other systems CallRail pushes call, text and form events into.

callrail_list_message_flows

List the message flows in this account — the automations that run when a tracking number receives an inbound text (auto-replies, tagging, routing).

callrail_list_summary_emails

List summary-email subscriptions — the recurring digests of call activity CallRail emails to users.

callrail_set_ignored_form_fields

Set which form field NAMES CallRail should stop capturing — the tool for keeping passwords, card numbers and other sensitive inputs out of CallRail.

callrail_update_integration

Update an integration: activate or disable it, or change its config.

callrail_update_integration_filter

Update an integration filter's conditions — which trackers it covers, the call type, the duration bounds or the required lead status.

callrail_update_message_flow

Update a message flow's name, entry point or steps.

callrail_update_summary_email

Update a summary-email subscription's cadence, sections or filters.

callrail_update_user

Update an user's company access, name or email.

callrail_create_notification

Create a notification rule so someone is alerted about incoming calls or texts.

callrail_create_outbound_caller_id

Start verifying an external phone number so it can be used as the caller id on outbound calls.

callrail_delete_notification

Delete a notification rule.

callrail_delete_outbound_caller_id

Remove a verified Outbound Caller ID.

callrail_delete_tag

Permanently remove a tag and detach it from every call, text and form submission it was applied to.

callrail_get_outbound_caller_id

Get one Outbound Caller ID: its number, name and whether verification has completed.

callrail_list_notifications

List the call and text notification rules on this account — who gets alerted, for which company or tracker, on which call types, and through which channels (email, desktop, mobile push).

callrail_update_notification

Update a notification rule — change its scope, which call types trigger it, or which channels it uses.

callrail_list_accounts

List the CallRail account this connection is locked to.

Connect CallRail to your AI

Credentials off one CallRail screen, then an endpoint your client signs into. Nothing to deploy, and nothing to install.

Paste one API key, created under My Account → API Keys → Create API key. No OAuth popup, redirect URL or client secret. Then choose which account to connect and its workspace — every request is locked to it.

API key••••••••••••3f7a
ConnectionVerified

Then just ask for the work

  • Compare call and form-submission volume by source for last month

    • get_calls_summary
    • get_forms_summary
    • get_calls_timeseries
  • Mark last week's calls from our Google Ads number as qualified leads

    • list_trackers
    • list_calls
    • update_call
  • Spin up a source tracking number for the new radio spot in Dallas

    • list_companies
    • create_source_tracker
    • get_tracker
  • What pages did our best lead this week view before calling, and did they text back?

    • list_leads
    • get_lead_timeline
    • get_call_page_views

Use CallRail from the assistant you already open

One hosted endpoint, registered once per client. The same tools and the same permissions, whichever window the request comes from.

Claude DesktopCustom connector

Add the PopMCP URL under Settings → Connectors and the tools appear in every chat.

Claude WebCustom connector

The same endpoint, registered in the browser. Nothing to install on the machine you are working from.

ChatGPTCustom connector

Register PopMCP as a custom connector, then let ChatGPT read and update the account.

CodexDesktop & CLI

Wire the endpoint into Codex or the Codex CLI when a task needs live business context, not a fixture.

OpenCodeCoding agent

Register the remote MCP server in OpenCode's config for terminal-first and scripted agent runs.

ZCodeDesktop app

Add PopMCP as an MCP server in Z.ai's desktop app and work the account from the same window.

CallRail MCP server questions

What teams ask before putting CallRail behind an AI client.

Do I need an OAuth app or a redirect URL to connect CallRail?

No. CallRail shows an API key on one screen — My Account → API Keys → Create API key — and that single value is all the connect form asks for. There is no client secret, redirect URL or token refresh to manage; the key is held server-side and used over HTTPS. At connect time you also pick which CallRail account to connect and which workspace it belongs in, and every request is locked to that account.

How much of the CallRail API does the server cover?

All of it: 73 operations across 16 modules, split 34 read and 39 write, plus 17 triggers PopMCP can watch. 33 tools load into your AI client by default and the rest stay searchable, loading on demand. The modules span calls, trackers, companies, form submissions, users, tags, text messaging, integrations and webhooks.

Can the agent actually place calls and send texts, or is it reporting only?

It can do both, and the writes are real. callrail_create_call dials your business_phone_number first, then bridges whoever answers to the customer_phone_number; callrail_send_text_message sends an actual SMS or MMS from one of your tracking numbers. Outbound calls depend on a verified caller ID, which callrail_list_outbound_caller_ids lists for a company. callrail_get_account reports the account's plan and the hard call and SMS quotas it is billed against.

Can it pull call recordings, transcripts and the caller's browsing history?

callrail_get_call_recording returns a short-lived download URL for the audio plus a stand-alone player URL you can share. Transcription (CallScribe) and lead scoring (CallScore) are per-company feature switches, so callrail_get_company tells you whether they are on and callrail_update_company can turn them on. For the marketing side, callrail_get_call_page_views returns every page that visitor viewed before dialing, in order, with timestamps and referrers.

What is the difference between a source tracker and a session tracker?

A source tracker is one number dedicated to one channel — a billboard, a print ad, a Google Ads campaign, a specific referring site — created with callrail_create_source_tracker. A session tracker is a keyword pool: many numbers, one served per website visitor, so each call ties back to that visitor's keywords and browsing history, created with callrail_create_session_tracker. They have separate create and update tools, so say which kind you want or the agent has to guess. callrail_list_trackers labels the type of every number you already own.

Why do lead counts not match call counts?

callrail_list_calls returns one row per tracked call. callrail_list_leads returns people, deduplicated across every interaction they have had with the business — calls, texts, forms and chats — so one persistent customer is a single lead no matter how often they get in touch. callrail_get_lead_timeline then gives that person's full interaction history with first-touch and last-touch attribution, the touchpoint that created and qualified the lead, tags and click ids such as gclid, gbraid, wbraid, msclkid and fbclid.

Do I have to run or host the CallRail MCP server myself?

No. PopMCP hosts it and gives you a Streamable HTTP MCP URL. There is nothing to deploy, no callback URL to register, and no infrastructure to keep running or patch.

Which AI clients can use this MCP server?

Any client that supports a remote Streamable HTTP MCP server — Claude Desktop, Claude Web, ChatGPT custom connectors, Codex and the Codex CLI, OpenCode and Z.ai's ZCode, as well as editors such as Cursor, Windsurf and Zed. Your client signs in to PopMCP with OAuth; the provider credential never leaves the server.

Why do only 33 of the 73 tools load by default?

Loading 73 tool definitions into every conversation burns context before the work starts. PopMCP loads a curated 33-tool set covering the everyday workflows and keeps the rest searchable, so your AI pulls a specialist tool only when a task needs it. You can switch a connection to the full catalog at any time.

What is the difference between a tool and a trigger?

A tool is something your AI calls — there are 73 here. A trigger is something PopMCP watches for you: 17 CallRail events that can start work on the PopMCP side. Triggers never enter your AI client's context, and none of them ask you to paste a callback URL into CallRail.

Connect CallRail to your AI in minutes

Launch a hosted MCP endpoint for CallRail, keep tool access under control, and start testing real workflow prompts right away.

Connect your first MCP