fastly-mcp
fastly-mcp
Fastly REST API용 Node.js Model Context Protocol 서버입니다. stdio 및 Streamable HTTP 전송, 테넌트 범위의 사용자 또는 계정 ID, 영구 Postgres 구성, 영구 Vault 비밀을 지원합니다.
보장 사항
모든 Fastly 요청은 호출자의 사용자 범위
Fastly-Key를 사용합니다. 프로세스에 공유 Fastly 토큰이 구성되지 않습니다.토큰 자료는 Vault의
fastly/tenants/<tenant>/{users|accounts}/<principal>/http/auth/token-index/fastly에만 기록됩니다.비밀 아닌 구성은 Postgres 테이블
fastly_config를 사용하며, 테넌트, 주체 유형, 주체 ID, 키로 키가 지정됩니다.변이 작업은 해당 환경 변수가 설정된 경우
authorizationKey도구 매개변수를 통해MCP_ADMIN_AUTH_KEY가 필요합니다.service_api_request는 이 서버 릴리스 이후 추가된 API를 포함하여 문서화된 모든 Fastly 메서드와 경로를 지원합니다.
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을 호출합니다. 서비스 ID를 확인하고 관리자 키를 사용하세요. fastly_update_user_token은 고위험 작업이며 Vault에 교체 토큰을 영구 저장합니다. userId 또는 accountId 중 정확히 하나와 tenantId, fastlyToken, 관리자 키를 제공하세요.
모든 응답은 { "ok": true, "status": 200, "data": {} } 형태의 JSON 텍스트를 포함합니다. 실패 시 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-production/README.md에 따라 Vault를 초기화하세요. npm start로 서버를 시작하거나 HTTP의 경우 npm run start:http를 사용하세요. HTTP 엔드포인트는 기본적으로 http://127.0.0.1:3000/mcp이며 베어러 토큰이 필요합니다.
외부 서비스 모드
Fastly MCP가 외부 Vault 및 Postgres 서비스에 연결할 때 docker-compose.external.yml을 사용하세요. 앱 전용 Compose 서비스를 시작하기 전에 POSTGRES_HOST, VAULT_ADDR 및 해당 자격 증명을 설정하세요.
인벤토리 및 테스트
npm run inventory:generate는 Fastly의 API 참조 인덱스 또는 FASTLY_OPENAPI_URL에서 제공되는 JSON OpenAPI 문서를 가져와 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를 참조하세요.
Maintenance
Related MCP Servers
- AlicenseAqualityCmaintenanceEnables interaction with Slack workspaces as a user, supporting channel listing, message posting, threading, reactions, and user management via the Slack API.811MIT
- FlicenseAqualityNot gradedmaintenanceEnables interaction with the Terros platform's User API to manage and retrieve user profiles. Users can fetch authenticated account details, list users with filters, and lookup specific user information by ID.6
- FlicenseNot gradedqualityDmaintenanceProvides tools to interact with the Attio API, enabling management of resources in an Attio workspace.5
- AlicenseNot gradedqualityDmaintenanceEnables interaction with Vercel API to manage deployments, domains, projects, and environment variables.1,774MIT
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.
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/LesterAJohn/fastly-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server