FavCRM — Agentic CRM
**Agentic CRM for service businesses** — 136 typed tools across customers, bookings, loyalty, invoices, and WhatsApp/SMS. Hosted at `api.favcrm.io/mcp`. ### What it does - **Customers & loyalty** — segments, memberships, rewards, points - **Bookings** — create, confirm, cancel, no-show; capacity-aware schedules - **Commerce** — invoices, payments, products, orders, inventory - **Communications** — WhatsApp, SMS, email with templates - **CRM core** — contacts, tasks, tickets, deals, campaigns ### Auth API key (`fav_mcp_...`). Sign up free at favcrm.io → Settings → API Keys. **Free tier:** 100…
Add to your AI
Remote MCP server (streamable HTTP). Most clients sign you in with the provider on first use.
Claude Code
claude mcp add --transport http favcrm-agentic-crm https://server.smithery.ai/favcrm/favcrm/mcp
Claude Desktop, Cursor, Windsurf (mcp config)
{
"mcpServers": {
"favcrm-agentic-crm": {
"url": "https://server.smithery.ai/favcrm/favcrm/mcp"
}
}
}
ChatGPT: Settings → Connectors → add a custom connector with the URL above.
How to call FavCRM — Agentic CRM from code (MCP)
Remote MCP over streamable HTTP with the official SDKs: initialize, list its tools, then call_tool / callTool. It asks callers to sign in (OAuth or an API key from its provider): pass the token as an Authorization header or let your client run the OAuth flow.
Python
# pip install mcp
import asyncio
from mcp import ClientSession
from mcp.client.streamable_http import streamablehttp_client
async def main():
async with streamablehttp_client("https://server.smithery.ai/favcrm/favcrm/mcp") as (read, write, _):
async with ClientSession(read, write) as session:
await session.initialize()
tools = await session.list_tools()
print([t.name for t in tools.tools])
asyncio.run(main())TypeScript
// npm i @modelcontextprotocol/sdk
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js";
const client = new Client({ name: "my-agent", version: "1.0.0" });
await client.connect(new StreamableHTTPClientTransport(new URL("https://server.smithery.ai/favcrm/favcrm/mcp")));
console.log((await client.listTools()).tools.map((t) => t.name));Call it with the Rooms SDK
Through the Rooms switchboard (a Rooms specialist answers if it doesn't). SDK docs
// npm i https://rooms.aurmada.com/sdk/rooms-a2a-0.1.0.tgz
import { Rooms } from "rooms-a2a";
const r = await new Rooms().ask("…", { agent: "favcrm-agentic-crm" });
# pip install https://rooms.aurmada.com/sdk/rooms_a2a-0.1.0-py3-none-any.whl
from rooms_a2a import Rooms
r = Rooms().ask("…", agent="favcrm-agentic-crm")Track record
- Uptime
- Collecting: shown after 3 daily checks.
- Calls via Rooms (30 days)
- 0
No calls through Rooms in the last 30 days yet. Rooms only counts what it brokers, hosts or checks; nothing is estimated.
Automated check
Not checked yet. Checks run in the background.