Skip to main content
Glama
caa1211

GenPDM MCP Server

by caa1211

GenPDM MCP Server

Un esqueleto de servidor MCP TypeScript/Express para exponer una API GraphQL empresarial fija como herramientas MCP seguras y tipadas.

Características

  • Endpoint HTTP Streamable de MCP SDK v2 en ALL /mcp

  • Validación de JWT Bearer HS256 y comprobación de scopes

  • Límites de tasa en memoria por IP y por sujeto

  • Cliente GraphQL respaldado por un pool keep-alive de Undici acotado

  • Reintentos solo para queries, idempotencia de mutaciones, límites de concurrencia y de tamaño de respuesta

  • Upstream GraphQL simulado reproducible

  • Endpoints de liveness/readiness y apagado ordenado

El almacén de límites de tasa actual es deliberadamente local al proceso. src/rate-limit.ts contiene la frontera del adaptador para un futuro almacén basado en Redis. No trate los contadores actuales como globales cuando ejecute varias réplicas.

Related MCP server: gqai

Documentación

Automatización del repositorio:

  • AGENTS.md define las reglas de arquitectura y nomenclatura siempre activas.

  • genpdm-mcp-development guía a Codex en los cambios de operaciones GraphQL y de herramientas MCP.

Ejemplo ejecutable:

Ejecución local

Requiere Node.js 20 o superior.

Copy-Item .env.example .env
npm install
npm run dev:mock

En una segunda terminal:

npm run dev
$token = npm.cmd run --silent token

Configure un cliente MCP con el endpoint http://127.0.0.1:3000/mcp y la cabecera Authorization: Bearer <token>.

Herramientas disponibles:

  • get_customer: { "id": "cust-001" }, requiere customers:read

  • create_order: { "customerId": "cust-001", "items": [{ "sku": "SKU-1", "quantity": 2 }] }, requiere orders:write

Los endpoints de salud no requieren autenticación:

  • GET /health/live

  • GET /health/ready

Verificación

npm run typecheck
npm run build
npm test

Notas de producción

  • Sustituya la verificación HS256 por el verificador JWKS del IdP de la empresa.

  • Sustituya el almacén de límites de tasa en memoria por Redis antes de que el escalado requiera límites globales estrictos.

  • Inyecte las credenciales JWT y GraphQL desde un gestor de secretos.

  • Restrinja ALLOWED_HOSTS, CORS_ORIGINS y los ajustes de proxy de confianza para la topología de despliegue.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Turn any GraphQL endpoint into a set of MCP tools
    23
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    MCP that can proxy any GraphQL API and expose graphql operations as mcp tools.
    10 npm
    18
    Apache 2.0
  • A
    license
    Not graded
    quality
    D
    maintenance
    Automatically generates MCP tools from any GraphQL API by introspecting its schema, supporting queries, mutations, and authentication.
    5
    GPL 3.0