Terradev MCP Server

使用说明(Markdown 格式)

  • 项目简介 Terradev MCP Server 是一个完整的 MCP 服务器实现,围绕资源管理、工具注册与执行、以及 Prompt 渲染等核心能力,提供对 Claude Code 等 LLM 客户端的标准化后端服务。服务器通过 JSON-RPC 与客户端通信,支持多种传输方式(包括本地 STDIO 以及远端 SSE),并提供会话管理、能力声明和安全认证等功能。代码中包含 192 个 MCP 工具的完整实现、工具压缩/并行调度、以及用于 CUCo 等自研优化的工具集成。

  • 主要功能点

    • MCP 核心实现:完整的 List Tools、Call Tool、Read Resource、List Resources、Prompts 等接口,遵循 MCP 协议格式的请求与响应。
    • 资源与工具管理:提供对 Resources、Tools、Prompts 的托管、读取及渲染能力,支持动态扩展。
    • 工具注册与执行:内置大量工具集(如 GPU 价格、云端 Provision、K8s 管理、推理部署、数据治理、成本优化等),并通过 MCP 服务器注册与执行。
    • 工具压缩与并行调度:通过 terradev_mcp_optimizer 对工具进行命名空间压缩、描述压缩以及并行化执行,提升交互效率与带宽利用。
    • 安全与认证:提供 OAuth 2.0 PKCE 认证路径(Claude Connector 支持),SSE 接入与 Bearer Token 验证。
    • 多传输协议支持:支持 STDIO(本地 Claude Code)和 SSE(Claude.ai Connector/远端客户端)两种传输模式。
    • 监控与自检能力:健康检查、状态、日志、以及对 CUCo、Guardrails、Phoenix、Qdrant 等工具的集成能力。
    • Terraform + 云资源管理:大量 Terraform 基础设施操作工具,支持 GPU provisioning、K8s 集群、InferX/HF Spaces 等部署。
    • 延展性设计:具备按需加载工具、元工具(terradev_advanced)、以及缓存/LRU 机制,提升大规模工具集的可用性和性能。
  • 安装步骤

    1. 依赖准备
      • 安装 Terradev CLI 及相关依赖(参考仓库根部 README 的安装指南)。
      • 安装 Python 依赖(通常包含 mcp、aiohttp、starlette、uvicorn 等)。
    2. 启动 MCP 服务器
      • 本地 STDIO 模式(Claude Code 配置本地接入) 参考仓库 README 的自托管本地启动方式,使用 terradev_mcp.py 并设置传输为 stdio(默认)。
      • 远端 SSE 模式(Claude.ai Connector 使用) 参考仓库 README 的自托管远端服务器配置,使用 terradev_mcp.py --transport sse --port 8080(或通过 docker-compose 启动)
    3. 自托管示例(从 README 摘要)
      • 设置环境变量(如 Bearer Token、RunPod Key 等):
        • TERRADEV_MCP_BEARER_TOKEN(用于 Claude.ai Connector 的授权令牌)
        • TERRADEV_RUNPOD_KEY(RunPod 的 API Key,仅若使用 RunPod 提供的资源)
      • 安装并启动服务器:
        • pip install -r requirements.txt
        • python3 terradev_mcp.py --transport sse --port 8080
        • 或 使用 docker-compose up -d
      • 远程访问端点示例(SSE):
        • https://terradev-mcp.terradev.cloud/sse
        • Bearer token 持有者在 Claude.ai 设置中提供 Token
  1. 服务器状态与健康
    • GET /health:健康检查(未认证)
    • SSE 链接用于 Claude.ai Connector 的流式通信
    • 资源、工具、Prompts 的可用性随需要动态扩展
  • 服务器配置(MCP 客户端所需的最小配置信息) 备注:以下配置是供 MCP 客户端建立连接所需的最小信息集合,描述了服务器的名称、启动命令以及参数。客户端无需也不需要服务器端的完整实现细节。

    { "server_name": "terradev-mcp", "command": "python3 terradev_mcp.py", "args": [ "--transport", "sse", "--host", "0.0.0.0", "--port", "8080" ] }

    注释说明

    • server_name: MCP 服务器的名称标识,便于在客户端的多服务器场景中区分;
    • command: 启动 MCP 服务器的命令,在此处为 terradev_mcp.py,实际部署环境可替换为容器内对应入口;
    • args: 启动参数,建议使用 --transport,通过 SSE 与 Claude.ai 连接;若在本地 Claude Code 集成,请改用 --transport stdio 的配置组合。
  • 基本使用方法

    • 客户端连接
      • 本地 Claude Code:将服务器作为 STDIO 服务连接(按 MCP 客户端要求的 JSON-RPC 进行读写)。
      • 远端 Claude.ai Connector:通过 SSE 连接到 /sse 路径,使用 Bearer Token 进行认证。
    • 常用操作
      • 列出可用工具(List Tools):查询 Terradev MCP 所提供的 192 个工具,确保客户端缓存与压缩策略可用。
      • 调用工具(Call Tool):通过工具名与参数触发具体功能,如 GPU 价格查询、Provision、训练、路由等。
      • 读取资源(Read Resource):获取资源信息、状态、指标等(如 active_context、instances、jobs、spend、alerts)。
      • 获取 prompts:若有 Prompt 的定义,客户端可请求并渲染。
    • 认证与安全
      • Claude Connector 通过 OAuth2 PKCE 流程进行授权,MCP 服务器提供相应的授权端点。
      • Bearer Token 验证仅对受保护的端点生效,健康接口为公开。
    • 失败排查要点
      • 确认 terradev-cli 已正确安装并在 PATH 中;
      • 确认 TERRADEV_MCP_BEARER_TOKEN、TERRADEV_RUNPOD_KEY 等环境变量已按需设置;
      • 若遇到网络/认证错误,请参考服务器日志中给出的建议修正 CLI 命令、认证信息或代理设置。
  • 关键词 GPU provisioning, Terraform, multi-cloud, cloud orchestration, 模型推理

  • 分类ID 6

服务器信息