Distrify Network MCP server
A FastMCP runtime that lets AI tools search electronic components, prices, and availability across the Distrify distributor network through one connection, federating queries across accessible distributors.
README
Distrify Network MCP server
A FastMCP runtime that lets AI tools (Claude, ChatGPT) search electronic components, prices and availability across the Distrify distributor network through one connection — discovering distributors, requesting access, and federating a single query across every distributor the user can access.
This is the protocol + routing plane. It is deliberately separate from:
- the per-distributor public REST API (the unchanged data plane it calls), and
- the existing Distrify Hub (the
automatesERP instance for usage/event telemetry) — unrelated and untouched.
Identity, the distributor directory and access grants live in a separate Frappe
"MCP management" instance (distrify_mcp_mgmt), reached over a service-token API.
Architecture
Claude / ChatGPT
│ Streamable HTTP /mcp + OAuth 2.1 (DCR via FastMCP OAuth Proxy)
▼
distrify-mcp-server (this repo — Python/FastMCP, dedicated vserver)
- tools: list_distributors, request_distributor_access, search/fetch,
search_components, get_price, get_availability, get_datasheet
- federated router (parallel fan-out, merge, partial-on-rate-limit)
│ reads directory + grants (service token) │ outbound X-DISTRIFY-* headers
▼ ▼
Frappe "MCP management" instance distributor PUBLIC API /api/v1/...
(directory, network users, grants, OAuth AS) (search_keyword, get_product_detail,
get_component_pricing — list + custom)
Layout
| Path | Purpose |
|---|---|
src/distrify_mcp/server.py |
FastMCP app + tool definitions + entrypoint |
src/distrify_mcp/router.py |
Distributor public-API client + federated fan-out |
src/distrify_mcp/mgmt_client.py |
Client for the Frappe management service API (+ dev fallback) |
src/distrify_mcp/normalize.py |
Tolerant extractors for public-API payloads |
src/distrify_mcp/config.py |
Env-sourced settings (DISTRIFY_MCP_*) |
Dockerfile, .github/workflows/build.yml |
Containerization + GHCR publish for Watchtower |
deploy/docker-compose.yml |
vserver stack (service + Watchtower auto-update) |
Local development
pip install -e ".[dev]"
cp .env.example .env # set DEV_CLIENT_ID / DEV_API_KEY from an API Key Management doc
distrify-mcp # serves Streamable HTTP at http://localhost:8000/mcp
Inspect the tools without an AI client:
npx @modelcontextprotocol/inspector
# connect to http://localhost:8000/mcp (Streamable HTTP)
Status
Read-only MVP, built in stages (see the plan). dev_mode runs against a single hardcoded
distributor until the management service API and OAuth are wired in. OAuth (FastMCP OAuth
Proxy → Frappe management IdP) and the management API are tracked as follow-up work.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.