Outbound OS

MCP server for AI agents

Let Claude work your CRM, with a tool for every job.

Outbound OS ships an open-source MCP server with 36 tools. Claude and other MCP clients can find leads, read timelines, import a list, build and start campaigns and pull analytics from your live data — without exporting anything first.

What it looks like

Ask in words. It reads your actual data.

The assistant is not guessing from a summary you pasted in. It calls the same API the dashboard uses, against the live workspace, through the MCP server’s own service credential — so treat a connection like an admin login.

Campaigns are created as drafts, and your client can ask before every tool that sends or deletes.

What it unlocks

Natural-language requests, grounded in current records.

The useful part is not chatting about a CRM. It is letting the client call explicit tools against the workspace and show what it used.

“Which open deals went quiet this week?”

Review the pipeline from live activity.

The client can list relevant leads, open their timelines and compare current status with recent activity. The answer comes from CRM records rather than a spreadsheet copied yesterday.

list_leads · get_lead · lead_timeline

“Import these trade-show contacts and draft a follow-up.”

Prepare the work without pretending it was approved.

The client can import the list with the same merging rules as a CSV upload, preview who a campaign would reach and create it as a draft. A person reviews the recipients and template before starting it.

import_leads · campaign_preview_leads · create_campaign

“Pause automated sending and show me sender health.”

Use operational controls during a real incident.

An approved client can stop the automated queue, inspect WhatsApp sender readiness and see the current system state. That is a real write operation, not a recommendation in chat.

system_pause_resume · whatsapp_accounts · system_status

Tool coverage

The same operating model, exposed as explicit tools.

Leads

Read and write

List, search, inspect, create, update, assign, change status and work with lead timelines.

Messages

Read and write

Read WhatsApp and email history, request a suggested reply and send through connected accounts.

Campaigns

Read and write

Create and edit drafts, preview matching leads, start or pause campaigns and inspect results.

Analytics

Read

Pull current overview, funnel, campaign and email-performance data held by the product.

System

Read and control

Inspect sending and account state, list team members, and pause or resume automated sending.

All 36 tools

Every tool the server exposes.

Names as your client will show them.

Leads

  • list_leads
  • get_lead
  • create_lead
  • update_lead
  • delete_lead
  • import_leads
  • list_tags
  • lead_timeline
  • lead_assign
  • lead_set_status
  • lead_toggle_pause
  • bulk_lead_action

Campaigns

  • list_campaigns
  • get_campaign
  • create_campaign
  • update_campaign
  • delete_campaign
  • start_campaign
  • pause_campaign
  • campaign_preview_leads
  • campaign_ab_results

Messages

  • list_messages
  • send_whatsapp
  • send_whatsapp_file
  • list_media_files
  • send_email

Analytics

  • stats_overview
  • analytics_funnel
  • analytics_campaign_roi
  • analytics_email_performance
  • whatsapp_costs

System

  • system_status
  • system_pause_resume
  • whatsapp_accounts
  • whatsapp_templates
  • list_users

Set up

Two settings, one command, one client.

The MCP server is a second container that talks to your Outbound OS API. It stays off until you start it.

Full MCP setup guide
.env — generate each with: openssl rand -hex 32
MCP_SERVICE_TOKEN=<random>
MCP_BEARER_TOKEN=<random>
Start it
docker compose --profile mcp up -d
Connect Claude Code
claude mcp add --transport http outbound-os \
  https://mcp.your-host.com/mcp \
  --header "Authorization: Bearer <MCP_BEARER_TOKEN>"

Where the line is

It is a tool interface, not an autonomous salesperson.

It does not know facts you have not stored

Price, scope, terms and relationship context still need a reliable source in the CRM or an explicit person in the loop.

It does not make sending harmless

Some tools send immediately or change campaign state. Client approval settings and credential control matter.

It does not bypass WhatsApp or email policy

The same provider rules apply whether a person clicked the action or an approved MCP client called the tool.

FAQ

MCP questions

What is an MCP server?

MCP (Model Context Protocol) is an open standard that lets AI assistants call tools in other software. The Outbound OS MCP server gives Claude and other MCP clients a defined set of CRM tools instead of a pasted export.

Which AI clients work with it?

Any client that supports remote MCP servers over Streamable HTTP. Claude Code connects with a bearer token; claude.ai and the Claude apps connect as a custom connector through OAuth.

Can the AI send messages on its own?

Only if you let it. send_whatsapp, send_email and start_campaign are real actions. Keep your client set to ask before running write tools, and check the recipients before approving.

Does my CRM data go to the AI provider?

The results of the tools the assistant calls are sent to the model you are using, as with anything you show an assistant. Nothing is sent until a tool is called, and only what that tool returns.

Running on your server in five minutes.

One Docker command starts the app, creates the database and your first admin. The setup wizard does the rest.

Terminal
git clone https://github.com/thatsarpit/outbound-os.gitcd outbound-oscp .env.example .envdocker compose up -d

Open http://localhost:3001 and sign in