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: mcp-amazon-sp-api

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
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (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 Servers

  • F
    license
    -
    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
    C
    quality
    B
    maintenance
    MCP server that exposes the Amazon Selling Partner API to Claude Desktop and any other MCP client. It wraps the python-amazon-sp-api SDK and ships 55+ tools across 19 SP-API scopes with automatic pagination, throttle-aware retry and multi-marketplace support.
    53
    2
    MIT
  • A
    license
    -
    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
  • F
    license
    -
    quality
    B
    maintenance
    A local-first CRM that exposes customer and project management tools via the Model Context Protocol (MCP), including an analytics server. It integrates seamlessly with Claude Code or a custom LlamaIndex ReAct agent.

View all related MCP servers

Related MCP Connectors

  • Agent Cost Allocator MCP — multi-tenant LLM cost attribution for chargeback billing. Companion to

  • Hosted Amazon Seller Central and Amazon Ads MCP server for Claude, ChatGPT, Cursor, and agents.

  • LeadConnector / GoHighLevel MCP Pack — wraps the GoHighLevel CRM for AI agents.

View all MCP Connectors

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