GenPDM MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@GenPDM MCP ServerShow me the customer with ID cust-001"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
GenPDM MCP Server
A TypeScript/Express MCP server skeleton for exposing a fixed business GraphQL API as safe, typed MCP tools.
Features
MCP SDK v2 Streamable HTTP endpoint at
ALL /mcpHS256 Bearer JWT validation and scope checks
Per-IP and per-subject in-memory rate limits
GraphQL client backed by a bounded Undici keep-alive pool
Query-only retries, mutation idempotency, concurrency and response-size limits
Reproducible mock GraphQL upstream
Liveness/readiness endpoints and graceful shutdown
The current rate-limit store is intentionally process-local. src/rate-limit.ts contains the adapter boundary for a future Redis-backed store. Do not treat the current counters as global when running multiple replicas.
Related MCP server: gqai
Documentation
Repository automation:
AGENTS.mddefines always-on architecture and naming rules.genpdm-mcp-developmentguides Codex through GraphQL operation and MCP tool changes.
Runnable example:
Run locally
Requires Node.js 20 or newer.
Copy-Item .env.example .env
npm install
npm run dev:mockIn a second terminal:
npm run dev
$token = npm.cmd run --silent tokenConfigure an MCP client with endpoint http://127.0.0.1:3000/mcp and header Authorization: Bearer <token>.
Available tools:
get_customer:{ "id": "cust-001" }, requirescustomers:readcreate_order:{ "customerId": "cust-001", "items": [{ "sku": "SKU-1", "quantity": 2 }] }, requiresorders:write
Health endpoints are unauthenticated:
GET /health/liveGET /health/ready
Verify
npm run typecheck
npm run build
npm testProduction notes
Replace HS256 verification with the company IdP's JWKS verifier.
Replace the in-memory rate-limit store with Redis before horizontal scaling requires strict global limits.
Inject JWT and GraphQL credentials from a secret manager.
Restrict
ALLOWED_HOSTS,CORS_ORIGINS, and trusted proxy settings for the deployment topology.
This server cannot be deployed
Maintenance
Related MCP Connectors
Governed data discovery, exact queries, decisions, simulations, and runtime utilities over MCP.
Governed MCP gateway: one endpoint for your tools, with credential custody and audit log.
- typeshipOAuthdev.typeship
Generate a typed SDK, CLI, and MCP server from any OpenAPI or GraphQL spec, and keep them current.
Related MCP Servers
- MIT
- AlicenseNot gradedqualityDmaintenanceTurn any GraphQL endpoint into a set of MCP tools23MIT
- AlicenseNot gradedqualityDmaintenanceMCP that can proxy any GraphQL API and expose graphql operations as mcp tools.10 npm18Apache 2.0
- AlicenseNot gradedqualityDmaintenanceAutomatically generates MCP tools from any GraphQL API by introspecting its schema, supporting queries, mutations, and authentication.5GPL 3.0