Skip to main content
Glama
PureGit90
by PureGit90

MCP Server: CRM Agent Tools — Working Demo

What This Does

A minimal, working MCP server (built with the official mcp Python SDK, stdio transport) that gives a Claude agent three tools: look up a CRM contact, log an action taken on that contact, and audit any prompt for token waste and API cost before it ships. A Streamlit app sits on top so the exact same tool definitions and functions can be browsed and called without a Claude Desktop or Claude Code MCP connection.

Related MCP server: suitecrm-mcp

How It Works

Claude agent (or this Streamlit form) calls a tool → mcp_server.py routes it to the matching function in tools.py → the function hits sample data or a live API if configured → a structured JSON result comes back → the caller (agent or UI) verifies it against the returned fields.

The Three Tools

  • lookup_crm_contact(email) — data lookup. Returns name, company, deal owner, deal stage, and days since last contact. Reads sample_data/crm_contacts.json first, falls back to a deterministic mock record if the email isn't in the sample file.

  • log_crm_action(contact_email, action, notes) — action tool. Writes a real, timestamped entry to sample_data/action_log.jsonl (not simulated, this is a genuine disk write standing in for a CRM write endpoint).

  • audit_prompt_cost(prompt_text, model) — structured status tool. Estimates token count and per-call cost, flags prompts that are long enough or repetitive enough to be worth rewriting as code instead of a bigger system prompt. Uses the live Anthropic token-counting endpoint if ANTHROPIC_API_KEY is set, otherwise a ~4 chars/token offline estimate.

Quick Start (Streamlit UI, zero config)

pip install -r requirements.txt
streamlit run app.py

Opens with sample CRM contacts pre-loaded. Click through the three tabs to call each tool directly, no API keys required.

Quick Start (real MCP server, connect to Claude)

pip install -r requirements.txt
python mcp_server.py          # runs over stdio, waits for an MCP client

Register it with Claude Code:

claude mcp add crm-agent-tools -- python /absolute/path/to/mcp_server.py

Or add it to claude_desktop_config.json under mcpServers (see the header comment in mcp_server.py for the exact block).

Smoke Test (no server, no UI)

python -c "from tools import lookup_crm_contact, log_crm_action, audit_prompt_cost; \
print(lookup_crm_contact('jordan@northwindtraders.com')); \
print(log_crm_action('jordan@northwindtraders.com', 'called', 'left voicemail')); \
print(audit_prompt_cost('Always remember to never forget to double check.'))"

Configuration

  • ANTHROPIC_API_KEY (optional) — enables live token counting in audit_prompt_cost via anthropic.messages.count_tokens. Without it, a chars/4 heuristic estimate is used instead.

  • CRM_API_KEY (optional, not wired to a live CRM in this demo) — if set, lookup_crm_contact notes that a real integration isn't connected yet rather than silently pretending it is.

Demo Limitations

  • This is an MVP demo — lookup_crm_contact reads a local JSON file instead of a live HubSpot/Airtable/Sheets API. Swapping in a real API call only touches the one function.

  • log_crm_action writes to a local JSONL file instead of a live CRM write endpoint, same swap-in-one-place design.

  • audit_prompt_cost uses a fixed per-model pricing table rather than a live pricing API, and assumes a flat 300-token output for the cost projection.

  • No auth/session management on the MCP server since this is a local stdio demo, not a hosted multi-tenant server.

F
license - not found
Not graded
quality - not tested
C
maintenance

Maintenance

0Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables interaction with SQLite databases, filesystem, AWS IAM, and Gmail through a master MCP server with a Streamlit UI optimized for Claude.
    1
  • A
    license
    Not graded
    quality
    A
    maintenance
    Open-source MCP gateway connecting AI agents like Claude Desktop and Claude Code to SuiteCRM. 24 CRM tools over SSE with OAuth2/OIDC auth, multi-entity support, ACL enforcement, and Prometheus/Grafana observability.
    1
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    A production-grade MCP server that wraps the GoHighLevel API v2, enabling Claude and other MCP clients to interact with GHL CRM as structured tools for managing contacts, conversations, pipelines, appointments, payments, and more.
    MIT

View all related MCP servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/PureGit90/mcp-server-claude-agent-demo'

If you have feedback or need assistance with the MCP directory API, please join our Discord server