Skip to main content
Glama
AlexWolfGoncharov

ff-crm-mcp

ff-crm-mcp

Two commands for a CRM MCP gateway:

  • ff-crm-mcp — one-shot CLI: open an MCP session, run one tool, exit.

  • ff-crm-mcp-stdio — stdio↔Streamable-HTTP bridge, so the gateway can be registered as an MCP connector.

Stdlib only. No Node, no PyPI dependencies, Python 3.9+.

Install

--python 3.12 matters: on a machine with no Python at all, uvx otherwise fails with Failed to spawn: python.

# no git, no package index — straight from a release asset
uvx --python 3.12 --from https://github.com/AlexWolfGoncharov/ff-crm-mcp/releases/download/v0.1.0/ff_crm_mcp-0.1.0-py3-none-any.whl ff-crm-mcp --doctor

# from source, where git is available
uvx --python 3.12 --from git+https://github.com/AlexWolfGoncharov/ff-crm-mcp ff-crm-mcp-stdio

Related MCP server: iikona-mcp-proxy

The package ships code only

No gateway URLs, no hostnames, no market data. The endpoint always comes from you:

export CRM_MCP_URL="https://<gateway>/receiver-crm/mcp"
ff-crm-mcp --list-tools
ff-crm-mcp --doctor

Some gateways present a certificate that does not cover their host. For those, and only those, add CRM_MCP_INSECURE_TLS=1 (or --insecure).

If you have a markets.json, point at it and use --market/--env instead:

export CRM_MCP_MARKETS=/path/to/markets.json
ff-crm-mcp --market in --env prod --doctor

Resolution order: --urlCRM_MCP_URL--market/--env via markets.json.

As a connector

One entry per market and env — the name is how you (and an agent) know which environment a call is writing to:

"crm-az-prod": {
  "command": "uvx",
  "args": ["--python", "3.12", "--from", "https://github.com/AlexWolfGoncharov/ff-crm-mcp/releases/download/v0.1.0/ff_crm_mcp-0.1.0-py3-none-any.whl", "ff-crm-mcp-stdio"],
  "env": {
    "CRM_MCP_URL": "https://<gateway>/receiver-crm/mcp",
    "CRM_MCP_INSECURE_TLS": "1"
  }
}

Restart the client afterwards; MCP servers are read at startup. The bridge prints the resolved URL to stderr on start, so the client log shows whether it reached the network.

On Windows, never use command: npx in a connector entry or an .mcpb manifest: it cannot spawn npx.cmd without a shell and dies with ENOENT. uvx has no such problem.

Diagnostics

ff-crm-mcp --doctor resolves the host through getaddrinfo, opens TCP 443, then runs a real initialize + tools/list and reports the tool count. Use it before blaming a gateway.

If the gateway is on a private network, note that nslookup and dig read /etc/resolv.conf and bypass the macOS scoped resolver — they report NXDOMAIN for hosts that applications resolve fine. --doctor uses getaddrinfo, which is what a real client does.

Guard rails

ff-crm-mcp refuses to create a communication that is not paused, refuses a promotional one without a control group, and refuses a destructive call without an explicit confirmation flag.

A connector enforces none of that — the bridge is transport only. Prefer the CLI wherever a shell is available.

Quirks it handles

  • A certificate that does not cover the gateway host. --insecure / CRM_MCP_INSECURE_TLS=1 for exactly those endpoints.

  • A gateway that echoes a numeric JSON-RPC id back as a string ({"id": 1}{"id": "1"}). A strict client never matches that reply to its request; the bridge restores the original id and its type.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityMaintained
ResponsivenessNo issues

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

  • A
    license
    Not graded
    quality
    D
    maintenance
    Local stdio proxy for Uno MCP Gateway that enables MCP clients without OAuth support to securely connect to authenticated remote servers.
    1
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Acts as a stdio-to-HTTP proxy for the 1C runtime-MCP service, enabling MCP clients like Claude Desktop to interact with 1C tools.
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    A bidirectional Model Context Protocol gateway that exposes OpenSquilla session capabilities to MCP hosts via stdio and connects to external MCP servers, bridging tool/resource requests to OpenSquilla Gateway WebSocket RPC.
    Apache 2.0
  • A
    license
    Not graded
    quality
    C
    maintenance
    A thin stdio-to-HTTP bridge that forwards MCP messages to the hosted Proxycept server, enabling stdio-only MCP clients to access Proxycept's tool catalog.
    204
    MIT

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/AlexWolfGoncharov/ff-crm-mcp'

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