mcpField
G
Gcore Cloud Mcp Server

Gcore Cloud Mcp Server

本地服务
github.com/G-Core云与基础设施115 天前更新

关于 Gcore Cloud Mcp Server

通过 LLM 客户端调用 Gcore Cloud API 的 MCP 服务。操作者可选择预定义工具集或按模式匹配 API 工具,以限制开放的能力范围。

主要功能

  1. 01管理实例和云资源
  2. 02按工具集或通配符选择工具
  3. 03使用 GPU 与裸金属操作
  4. 04配置 API 凭据和项目设置
  5. 05验证 HTTP Host 与 Origin 标头

适用场景

  1. 01管理虚拟机操作
  2. 02为客户端筛选所需云工具
  3. 03操作 GPU 集群资源

MCP 相关

向 MCP 客户端提供所选 Gcore API 能力作为工具。通过 GCORE_TOOLS 配置工具范围,并支持 stdio 和经过防护的 HTTP 传输。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"gcore": {
"command": "uvx",
"args": [
"gcore-mcp-server@git+https://github.com/G-Core/gcore-mcp-server.git"
],
"env": {
"GCORE_API_KEY": "<GCORE_API_KEY>",
"GCORE_TOOLS": "<GCORE_TOOLS>"
}
}
}
}
启动命令uvx 'gcore-mcp-server@git+https://github.com/G-Core/gcore-mcp-server.git'
需要配置的环境变量
GCORE_API_KEY密钥
GCORE_TOOLS

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypigcore-mcp-server@git+https://github.com/G-Core/gcore-mcp-server.git

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Gcore MCP 服务

FOSSA Status

用于 Gcore API 的 MCP(Model Context Protocol)服务。此服务提供工具,供 LLM 助手通过 Gcore Cloud API 进行交互。

使用方法

注意: 由于可用资源有多种,一次性向大多数 LLM 客户端提供所有资源可能会使模型不堪重负,并导致工具之间出现混淆。对于大多数客户端,建议仅指定任务所需的资源,以确保性能和清晰度达到最佳。某些客户端(如 Claude Code)的处理方式有所不同,请参阅下文。

与 Cursor IDE 集成

将服务添加到 Cursor IDE 配置文件(~/.cursor/mcp.json)中:

{
  "mcpServers": {
    "gcore-mcp-server": {
      "command": "uvx",
      "args": ["--from", "gcore-mcp-server@git+https://github.com/G-Core/gcore-mcp-server.git", "gcore-mcp-server"],
      "env": {
        "GCORE_API_KEY": "4***1",
        "GCORE_TOOLS": "instances,management,cloud.gpu_baremetal.clusters.*"
      }
    }
  }
}
与 Claude Code 集成

将服务添加到 Claude Code 配置文件(~/.claude.json)中:

{
  "mcpServers": {
    "gcore-mcp-server": {
      "command": "uvx",
      "args": ["--from", "gcore-mcp-server@git+https://github.com/G-Core/gcore-mcp-server.git", "gcore-mcp-server"],
      "env": {
        "GCORE_API_KEY": "4***1",
        "GCORE_TOOLS": "*"
      }
    }
  }
}

设置 GCORE_TOOLS=* 会加载所有可用工具。由于 Claude Code 具有 Tool Search 功能,这种方式效果良好。与其他客户端不同,Claude Code 会延迟加载工具架构,仅在工具与查询匹配时按需获取。这意味着注册大量工具不会占用过多上下文窗口。

当工具占用的上下文窗口超过 10% 时,Claude Code 会显示警告。借助延迟加载,即使启用所有工具,也不会出现这个问题。

uvx 命令会在临时环境中运行服务,无需永久安装。详情请参阅在临时环境中运行(一次性执行)。

注意: 获取 Gcore API Key 的说明请参阅此处。

可选变量:

  • GCORE_BASE_URL:"https://api.gcore.com",
  • GCORE_CLOUD_PROJECT_ID:"1",
  • GCORE_CLOUD_REGION_ID:"76",
  • GCORE_CLIENT_ID:"2",
  • GCORE_ALLOWED_HOSTS:""(仅限 HTTP 传输;始终允许环回名称)
  • GCORE_ALLOWED_ORIGINS:""(仅限 HTTP 传输)
HTTP 传输安全

HTTP 传输(GCORE_TRANSPORT=http)会按 MCP Streamable HTTP 规范要求,验证每个请求的 Host 和 Origin 标头。这可以防止用户访问的网页通过 DNS 重绑定访问绑定到环回地址的监听器。

  • GCORE_ALLOWED_HOSTS 是一个逗号分隔的额外主机名列表,按 glob 模式匹配。双方的端口都会被忽略,因此只填写主机名(mcp.internal,而不是 mcp.internal:8000)。内置名称 127.0.0.1、localhost 和 ::1,以及监听器绑定的具体地址,始终会被接受。任何其他 Host 都会被拒绝,并返回 421 Misdirected Request。
  • GCORE_ALLOWED_ORIGINS 是一个逗号分隔的额外浏览器来源列表,同样按 glob 模式匹配。除此之外,FastMCP 始终接受与请求自身来源相同的 Origin,以及当 Host 是环回地址时的任何环回来源——因此,运行在你机器上的其他 Web 应用会被信任,而攻击者域名上的 DNS 重绑定页面不会。任何其他 Origin 都会被拒绝,并返回 403。没有 Origin 标头的请求(非浏览器 MCP 客户端的典型情况)不受影响。FastMCP 的已知限制:无法将 IPv6 字面量来源(如 http://[::1]:3000)加入允许列表,因为方括号会被识别为 glob 语法。

验证由 FastMCP 的严格模式主机/来源防护执行;无论绑定地址是什么,本服务都会为 HTTP 传输启用该模式。只有 gcore-mcp-server 入口点会应用此策略;通过其他运行器加载模块的 mcp 对象(例如 fastmcp run …:mcp)则不会应用。

不支持旧版 SSE 传输,且 GCORE_TRANSPORT=sse 会拒绝启动:FastMCP 不会对其 SSE 应用执行此验证,因此 SSE 监听器运行时不会受到保护。

HTTP 传输不会对客户端进行身份验证:任何能够访问监听器的人,都可以使用服务的 GCORE_API_KEY 调用所有已启用的工具。请将其绑定到环回地址,不要将其暴露给不可信网络。

配置

工具选择

本服务通过环境变量 GCORE_TOOLS 使用统一配置方式。此单个变量可以混合指定预定义工具集名称和自定义模式:

# Mixed toolsets and patterns
export GCORE_TOOLS="instances,management,cloud.gpu_baremetal.clusters.*,dns.records.create"

# Only toolsets
export GCORE_TOOLS="instances,management"

# Only patterns  
export GCORE_TOOLS="cloud.*,waap.*"

# Default behavior (if not set)
# Uses "management,instances" toolsets for HTTP mode, "management" for stdio
配置模式
  1. 默认模式(未配置)

    • HTTP 传输:使用 management,instances 工具集
    • stdio 传输:使用 management 工具集
  2. 工具集模式(预定义工具集合)

    • 使用预定义的工具集名称:instances、management、ai_ml 等
    • 示例:GCORE_TOOLS="instances,management"
  3. 模式匹配模式(自定义工具筛选)

    • 使用通配符模式匹配 Gcore SDK 中的工具名称
    • 精确匹配:cloud.instances.create、dns.records.delete
    • 通配符匹配:cloud.*、waap.*、cloud.gpu_baremetal.clusters.*
    • 示例:GCORE_TOOLS="cloud.instances.*,waap.*"
  4. 组合模式(工具集 + 模式)

    • 混合使用预定义工具集和自定义模式
    • 工具集定义的优先级高于模式匹配
    • 示例:GCORE_TOOLS="instances,cloud.gpu_baremetal.clusters.*"
可用工具集

系统包含若干适用于常见工作流的预定义工具集:

  • management:核心账户和项目管理
  • instances:虚拟机操作
  • baremetal:裸金属服务器操作
  • gpu_baremetal:GPU 裸金属集群管理
  • gpu_virtual:GPU 虚拟集群管理
  • networking:网络、Floating IP、负载均衡器
  • security:安全组、SSH 密钥、机密信息
  • storage:卷、文件共享
  • ai:AI 集群
  • ai_ml:AI/ML 推理服务
  • billing:费用报告和账单信息
  • containers:容器注册表
  • cdn:CDN 资源、源站组、证书和缓存管理
  • cleanup:删除和清理操作
  • list:列表/只读操作
模式语法

模式支持使用 * 进行通配符匹配:

  • 精确匹配:cloud.instances.create 仅匹配该特定方法
  • 通配符匹配:cloud.instances.* 匹配所有实例方法
  • 宽泛通配符:cloud.* 匹配所有云服务方法
  • 特定服务:waap.* 匹配所有 WAAP 方法
优先级系统

使用组合模式时:

  1. 工具集工具最先纳入(优先级最高)
  2. 模式匹配的工具随后添加
  3. 移除重复项,同时保留顺序
  4. 工具集定义优先于模式匹配
示例
# Development: Get specific tools for testing
export GCORE_TOOLS="cloud.instances.create,cloud.instances.delete,cloud.volumes.create"

# Full cloud management
export GCORE_TOOLS="management,instances,storage,networking"

# GPU cluster operations with custom additions  
export GCORE_TOOLS="gpu_baremetal,cloud.instances.create,waap.*"

# All services with wildcard
export GCORE_TOOLS="cloud.*,waap.*"

# Minimal setup
export GCORE_TOOLS="instances"

在临时环境中运行(一次性执行)

如果你想在不持久安装的情况下运行服务(例如快速测试或仅使用一次),可以使用 uvx。此命令会获取软件包,在临时环境中运行指定脚本,然后丢弃该环境。

要运行主分支中的最新版本:

uvx --from "gcore-mcp-server@git+https://github.com/G-Core/gcore-mcp-server.git" gcore-mcp-server

要运行特定版本(例如 v0.1.1):

uvx --from "gcore-mcp-server@git+https://github.com/G-Core/[email protected]" gcore-mcp-server

运行命令前,请记得设置所需的环境变量(例如 GCORE_API_KEY、GCORE_TOOLS 等)。

持久安装(安装为工具)

有关 uv 的详细安装说明,请参阅官方 uv 安装指南。

你可以使用 uv 将 gcore-mcp-server 安装为命令行工具。这样一来,无需每次指定源,即可在终端中全局使用该命令。

要安装主分支中的最新版本:

uv tool install "gcore-mcp-server@git+https://github.com/G-Core/gcore-mcp-server.git"

要安装特定版本(例如 v0.1.0):

uv tool install "gcore-mcp-server@git+https://github.com/G-Core/[email protected]"

安装后,uv 会提供 gcore-mcp-server 命令。如果系统未立即找到该命令,你可能需要运行 uv tool update-shell,或确保 uv 的工具 bin 目录位于 PATH 中。

安装后,你可以像运行其他命令一样运行它:

gcore-mcp-server

开发

本地开发环境设置
# Clone the repository
git clone https://github.com//G-Core/gcore-mcp-server.git
cd gcore-mcp-server

# Install development dependencies
uv venv
source .venv/bin/activate
uv sync --dev
调试和测试

调试和开发时,建议使用 MCP Inspector:

npx @modelcontextprotocol/inspector

MCP Inspector 提供了一个 Web 界面,可供你交互式测试和调试 MCP 服务,让你能够:

  • 浏览可用工具及其架构
  • 使用不同参数测试工具调用
  • 查看客户端与服务端之间的实时通信
  • 调试身份验证和连接问题

要将其用于本地开发服务:

  1. 在本地启动 MCP 服务
  2. 运行 Inspector 并连接到你的服务
  3. 使用 Web 界面测试你的工具

许可证

FOSSA Status

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。