Skip to main content
Glama

fastly-mcp

Сервер Node.js Model Context Protocol для Fastly REST API. Он поддерживает транспорты stdio и Streamable HTTP, идентичности пользователей или учетных записей в рамках тенанта, постоянную конфигурацию Postgres и постоянные секреты Vault.

Гарантии

  • Каждый запрос Fastly использует пользовательский Fastly-Key вызывающего; в процессе не настраивается общий токен Fastly.

  • Материал токена записывается только в Vault по пути fastly/tenants/<tenant>/{users|accounts}/<principal>/http/auth/token-index/fastly.

  • Несекретная конфигурация использует таблицу Postgres fastly_config, ключами которой являются тенант, тип субъекта, идентификатор субъекта и ключ.

  • Мутации требуют MCP_ADMIN_AUTH_KEY через параметр инструмента authorizationKey, если эта переменная окружения установлена.

  • service_api_request поддерживает все документированные методы и пути Fastly, включая API, добавленные после выпуска этого сервера.

Related MCP server: Terros MCP Server

Инструменты

service_query_suggestion — это доступное только для чтения обнаружение схемы. Используйте его, когда намерение или правильный маршрут Fastly неясны; он возвращает рекомендуемые предварительные условия, проверки безопасности, схемы инструментов и примеры.

service_connection_info и service_scope_info — это инструменты обнаружения среды выполнения и тенанта/учетной записи, доступные только для чтения. Используйте их перед операционным рабочим процессом.

service_health_check вызывает GET /tokens/self с пользовательским токеном. fastly_list_services вызывает GET /service. fastly_list_versions вызывает GET /service/:service_id/version.

service_api_request — это запасной вариант с полным покрытием. Он принимает method, path, необязательные query, body, headers и обязательный fastlyToken. GET/HEAD доступны только для чтения; POST/PUT/PATCH/DELETE являются мутациями и требуют authorizationKey, если он настроен.

fastly_purge_service — это операция высокого риска, вызывающая POST /service/:service_id/purge_all. Подтвердите идентификатор службы и используйте ключ администратора. fastly_update_user_token — это операция высокого риска, сохраняющая заменяющий токен в Vault; укажите ровно одно из userId или accountId, а также tenantId, fastlyToken и ключ администратора.

Все ответы содержат JSON-текст вида { "ok": true, "status": 200, "data": {} }; при сбоях устанавливается MCP isError и возвращается { "ok": false, "status": 4xx, "error": "..." }. Поля, похожие на секреты, по умолчанию редактируются.

Конфигурация

Скопируйте .env.example в .env. Установите POSTGRES_*, VAULT_ADDR, VAULT_TOKEN или настройки Vault Agent, а также MCP_ADMIN_AUTH_KEY. TARGET_SERVICE_BASE_URL по умолчанию равен https://api.fastly.com. Используйте MCP_TRANSPORT_MODE=stdio, http или both.

Запустите локальные зависимости с помощью docker compose up -d postgres vault, затем инициализируйте Vault в соответствии с vault-production/README.md. Запустите сервер с помощью npm start или используйте npm run start:http для HTTP. HTTP-конечная точка по умолчанию — http://127.0.0.1:3000/mcp и требует токен носителя.

Режим внешних служб

Используйте docker-compose.external.yml, когда Fastly MCP подключается к внешним службам Vault и Postgres. Установите POSTGRES_HOST, VAULT_ADDR и соответствующие учетные данные перед запуском службы Compose только для приложения.

Инвентаризация и тесты

npm run inventory:generate получает индекс справочника API Fastly или JSON-документ OpenAPI, предоставленный FASTLY_OPENAPI_URL, и записывает artifacts/fastly-openapi-endpoints.json. Артефакт фиксируется, и CI завершается ошибкой, если генерация его изменяет.

npm test запускает тесты клиента Fastly, авторизации MCP, инфраструктуры поддержки персистентности, HTTP и Vault. GitHub Actions запускает генерацию инвентаря перед заданием тестов.

Регистрация MCP-клиента

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

Заметки по разработке

Fastly API использует TLS 1.2 или более позднюю версию и применяет отдельные лимиты на чтение, запись и очистку. Избегайте одновременных записей в одну и ту же службу. Никогда не регистрируйте и не фиксируйте значения fastlyToken. Этот проект выпущен под лицензией MIT; см. 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