GenPDM MCP Server
Click on "Install 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 installed
Maintenance
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
- 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.4518Apache 2.0
- AlicenseNot gradedqualityDmaintenanceAutomatically generates MCP tools from any GraphQL API by introspecting its schema, supporting queries, mutations, and authentication.5GPL 3.0
Related MCP Connectors
Generate a typed SDK, CLI, and MCP server from any OpenAPI or GraphQL spec, and keep them current.
34 production API tools over one hosted MCP endpoint.
Query metrics, targets, entities, and team data in your Steep workspace via MCP.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/caa1211/genpdm-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server