Apollo MCP 服务器模板

Apollo MCP 服务器模板是一个用于快速部署 Apollo MCP 服务器的起点,提供 Railway 和 Render 的部署选项,支持 GraphQL 操作的结构化访问和 AI 工具的增强开发体验。

  • by apollographql
  • Dockerfile
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 apollographql/mcp-server-template

使用说明

Apollo MCP服务器模板

仅部署Apollo MCP服务器的起点。此模板为以下对象提供了简单的部署选项 铁路 和 渲染.

💡 快速开始:此模板使用具有合理默认值的Apollo MCP Server容器。您可以立即部署或根据您的特定需求自定义配置。

先决条件

  • A. GraphOS帐户 (提供免费和基于使用情况的分层)
  • 你的 APOLLO_KEY 和 APOLLO_GRAPH_REF GraphOS工作室

部署选项

选项1:使用铁路模板(推荐)

为了获得最简单的部署体验,请使用官方的Railway模板: 使用铁路模板进行部署

选项2:克隆和部署

要获得更多控制权或使用其他平台:

  1. 将此存储库分叉或克隆到您自己的存储库
  2. 设置环境变量 在您的部署平台中:
    • APOLLO_KEY -图形API键
    • APOLLO_GRAPH_REF -您的图形参考(例如。, my-graph@production)
  3. 使用以下选项之一进行部署:

铁路:使用上面的部署按钮或在Railway中连接您的仓库

渲染:使用上面的部署按钮或在Render中连接您的仓库

包含什么

  • Dockerfile--配置为使用Apollo MCP服务器容器
  • render.yaml--渲染部署配置
  • mcp.yaml--MCP服务器配置示例
  • .apollo/--JSON模式提供更好的IDE体验
  • .github/workflows/--自动依赖关系更新
  • .vscode/ 和 .idea/--推荐的编辑器设置(在提示时安装推荐的扩展)
  • renovate.json--保持MCP服务器版本最新

MCP服务器功能

启用后,MCP服务器提供:

  • AI助手的模式自检功能
  • 对GraphQL操作的结构化访问
  • 使用AI工具增强开发体验

地方发展

Docker快速测试:

docker build -t apollo-mcp-server .
docker run -it --env APOLLO_KEY=your-key --env APOLLO_GRAPH_REF=your-graph-ref -p 5000:5000 apollo-mcp-server

使用环境文件:

# Create .env file (don't commit this!)
echo "APOLLO_KEY=your-key-here" > .env
echo "APOLLO_GRAPH_REF=your-graph-ref-here" >> .env

# Run with env file
docker run -it --env-file .env -p 5000:5000 apollo-mcp-server

使用 http://localhost:5000/mcp 连接到您的MCP服务器。

在没有GraphOS的情况下本地运行

您可以使用任何GraphQL模式文件在本地运行Apollo MCP服务器,而无需连接到GraphOS。这有助于:

  • 没有互联网连接的地方发展
  • 发布前测试联盟更改
  • 在气隙环境中运行

使用本地架构运行的步骤

  1. 修改 schema.graphql 本地文件 使用API架构

  2. 编辑您的 mcp.yaml 当地资源

    operations:
      source: local
      paths: 
        - tools
    schema:
      source: local
      path: schema.graphql
    
  3. 创建修改后的Dockerfile 地方发展:

    FROM ghcr.io/apollographql/apollo-mcp-server:v0.8.0
    
    COPY mcp.yaml /mcp.yaml
    COPY schema.graphql /schema.graphql
    COPY tools /tools
    
    EXPOSE 5000
    WORKDIR /
    
    CMD ["mcp.yaml"]
    
  4. 在没有GraphOS凭据的情况下运行MCP服务器:

    # Build the container
    docker build -t apollo-mcp-server-local .
    
    # Run without APOLLO_KEY and APOLLO_GRAPH_REF
    docker run -it -p 5000:5000 apollo-mcp-server-local
    

关于地方发展的说明

  • 在向tools文件夹添加操作时,必须重新构建dockerfile(Docker不会自动热重新加载)

⚠️ 安全配置

此模板包括开发友好的默认值 尚未准备好生产。在部署到生产环境之前,请检查这些设置:

已启用自检工具

这些工具旨在帮助开发人员理解他们的图并生成可用作工具的操作。我们不建议在生产环境中运行这些面向消费者的体验,因为动态生成功能需要测试,以确保LLM能够轻松理解模式。我们建议使用 GraphOS合约 过滤掉模式中导致生成不良操作的字段。

  • 内省:提供任何 type 按名称,可以具有返回内容的深度级别。对于大型模式,应始终使用深度1
  • 搜索:允许根据一组搜索词搜索加载的架构。
  • 验证:根据加载的架构验证给定的GraphQL操作。
  • 执行:执行给定的GraphQL操作。

建议的后续步骤

一旦部署了MCP服务器,请考虑这些生产就绪的改进:

  • [ ] 设置CI/CD 自动部署较新版本
  • [ ] 启用Renovate 在您的仓库上保持MCP服务器的最新状态
  • [ ] 设置部署预览 供PR测试更改
  • [ ] 查看安全设置 在MCP服务器配置中:
    • []设置适当的身份验证/授权
  • [ ] 监控您的MCP服务器 具有GraphOS可观测性功能和OpenTetry
  • [ ] 清理未使用的部署文件 (例如,删除 render.yaml 如果使用铁路)

支持

对于以下问题:

许可证

此模板在MIT许可证下可用。看 许可证 了解详情。