Skip to main content
Glama

fastly-mcp

Un servidor Node.js Model Context Protocol para la API REST de Fastly. Admite transportes stdio y HTTP Streamable, identidades de usuario o cuenta con ámbito de tenant, configuración persistente de Postgres y secretos persistentes de Vault.

Garantías

  • Cada solicitud de Fastly utiliza la Fastly-Key con ámbito de usuario del llamante; no se configura ningún token compartido de Fastly en el proceso.

  • El material del token se escribe únicamente en Vault en fastly/tenants/<tenant>/{users|accounts}/<principal>/http/auth/token-index/fastly.

  • La configuración no secreta utiliza la tabla de Postgres fastly_config, con clave por tenant, tipo de principal, ID de principal y clave.

  • Las mutaciones requieren MCP_ADMIN_AUTH_KEY a través del parámetro de herramienta authorizationKey cuando esa variable de entorno está configurada.

  • service_api_request admite todos los métodos y rutas documentados de Fastly, incluidas las API añadidas después del lanzamiento de este servidor.

Related MCP server: Terros MCP Server

Herramientas

service_query_suggestion es un descubrimiento de esquema de solo lectura. Úselo cuando la intención o la ruta correcta de Fastly no estén claras; devuelve requisitos previos recomendados, comprobaciones de seguridad, esquemas de herramientas y ejemplos.

service_connection_info y service_scope_info son herramientas de descubrimiento de tiempo de ejecución y de tenant/cuenta de solo lectura. Úselas antes de un flujo de trabajo operativo.

service_health_check llama a GET /tokens/self con un token de usuario. fastly_list_services llama a GET /service. fastly_list_versions llama a GET /service/:service_id/version.

service_api_request es la vía de escape de cobertura completa. Acepta method, path, query opcional, body, headers y fastlyToken obligatorio. GET/HEAD son de solo lectura; POST/PUT/PATCH/DELETE son mutaciones y requieren authorizationKey cuando está configurado.

fastly_purge_service es de alto riesgo y llama a POST /service/:service_id/purge_all. Confirme el ID del servicio y use la clave de administrador. fastly_update_user_token es de alto riesgo y persiste un token de reemplazo en Vault; proporcione exactamente uno de userId o accountId, además de tenantId, fastlyToken y la clave de administrador.

Todas las respuestas contienen texto JSON con la forma { "ok": true, "status": 200, "data": {} }; los fallos establecen isError de MCP y devuelven { "ok": false, "status": 4xx, "error": "..." }. Los campos que parecen secretos se redactan de forma predeterminada.

Configuración

Copie .env.example a .env. Configure POSTGRES_*, VAULT_ADDR, VAULT_TOKEN o los ajustes de Vault Agent, y MCP_ADMIN_AUTH_KEY. TARGET_SERVICE_BASE_URL tiene como valor predeterminado https://api.fastly.com. Use MCP_TRANSPORT_MODE=stdio, http o both.

Ejecute las dependencias locales con docker compose up -d postgres vault, luego inicialice Vault según vault-production/README.md. Inicie el servidor con npm start, o use npm run start:http para HTTP. El endpoint HTTP tiene como valor predeterminado http://127.0.0.1:3000/mcp y requiere un token de portador.

Modo de servicios externos

Use docker-compose.external.yml cuando Fastly MCP se conecte a servicios externos de Vault y Postgres. Configure POSTGRES_HOST, VAULT_ADDR y las credenciales correspondientes antes de iniciar el servicio Compose solo de aplicación.

Inventario y pruebas

npm run inventory:generate obtiene el índice de referencia de la API de Fastly, o un documento JSON OpenAPI proporcionado por FASTLY_OPENAPI_URL, y escribe artifacts/fastly-openapi-endpoints.json. El artefacto se confirma y CI falla cuando la generación lo cambia.

npm test ejecuta las pruebas del cliente de Fastly, autorización de MCP, infraestructura de soporte de persistencia, HTTP y Vault. GitHub Actions ejecuta la generación de inventario antes del trabajo de pruebas.

Registro de cliente MCP

{
  "mcpServers": {
    "fastly-mcp": {
      "command": "npm",
      "args": ["run", "start:stdio"],
      "cwd": "/Users/{user}/Documents/GitHub/fastly-mcp"
    }
  }
}

Notas de desarrollo

La API de Fastly utiliza TLS 1.2 o posterior y aplica límites separados de lectura, escritura y purga. Evite escrituras concurrentes al mismo servicio. Nunca registre ni confirme valores de fastlyToken. Este proyecto se publica bajo la Licencia MIT; consulte LICENSE.

Install Server
A
license - permissive license
B
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • Access the Notra API for managing posts, brand identities, integrations, and schedules.

  • Issue, rotate and revoke scoped API-key passes for 25+ providers — the agent never sees a real key

  • 34 production API tools over one hosted MCP endpoint.

View all MCP Connectors

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/LesterAJohn/fastly-mcp'

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