mcpField
K
kilawatt-mcp-server

kilawatt-mcp-server

本地服务
github.com/KilaWattCloud云与基础设施01 周前更新

关于 kilawatt-mcp-server

kilawatt-mcp-server 让 Agent 通过账户 API 或 x402 付款向 Kilawatt Cloud 请求 GPU 算力。它还从真实网关响应中提供容量、价格、平台状态和作业恢复信息。

主要功能

  1. 01使用账户凭据配置 GPU 节点
  2. 02以 Base USDC 报价并运行作业
  3. 03设置单次和会话支出上限
  4. 04查询 GPU 容量、价格和平台状态
  5. 05检查并恢复带检查点的作业

适用场景

  1. 01为计算任务申请 GPU 算力
  2. 02使用 USDC 付款前查询报价
  3. 03查看服务可用性和 GPU 价格
  4. 04从最近的检查点恢复作业

MCP 相关

该 MCP 服务提供 9 个工具,用于查询 Kilawatt Cloud 容量、配置算力、付款、查看状态和恢复作业。工具调用 Kilawatt 网关并返回实际 HTTP 响应。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"kilawattcloud-kilawatt": {
"command": "npx",
"args": [
"-y",
"kilawatt-mcp-server"
],
"env": {
"KILAWATT_API_KEY": "<KILAWATT_API_KEY>",
"KILAWATT_BASE_URL": "<KILAWATT_BASE_URL>",
"KILAWATT_SITE_URL": "<KILAWATT_SITE_URL>",
"KILAWATT_X402_PRIVATE_KEY": "<KILAWATT_X402_PRIVATE_KEY>",
"KILAWATT_X402_MAX_USD_PER_JOB": "<KILAWATT_X402_MAX_USD_PER_JOB>",
"KILAWATT_X402_MAX_USD_PER_SESSION": "<KILAWATT_X402_MAX_USD_PER_SESSION>",
"KILAWATT_X402_URL": "<KILAWATT_X402_URL>"
}
}
}
}
启动命令npx -y kilawatt-mcp-server
需要配置的环境变量
KILAWATT_API_KEY密钥Your API key for the service
KILAWATT_BASE_URLOptional gateway endpoint override
KILAWATT_SITE_URLOptional site root for the discovery and resume tools
KILAWATT_X402_PRIVATE_KEY密钥Wallet private key for paying for x402 jobs
KILAWATT_X402_MAX_USD_PER_JOBMaximum USD spend per x402 job (default 0.25)
KILAWATT_X402_MAX_USD_PER_SESSIONMaximum USD spend per server session (default 1.00)
KILAWATT_X402_URLOptional x402 execution endpoint override

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

安装包
npmkilawatt-mcp-server0.3.0

工具

还没有获取到工具列表

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

详细介绍

Kilawatt Cloud MCP 服务

用于从 Kilawatt Cloud 请求 GPU 计算容量的 Model Context Protocol(MCP)服务,支持账户付款和 x402 付款选项。

Build Status npm version License

此服务会调用 Kilawatt 的真实网关。 每个响应都是 Kilawatt 公共 API 或 x402 端点返回的实际 HTTP 结果,不存在虚构响应。

目录

适用对象

所有示例都仅用于获取报价。请参阅 examples/README.md。

客户端设置步骤见 docs/clients.md。

端点

默认端点是 Kilawatt Cloud 的网关:https://www.kilawattcloud.dev/api/public/v1。使用 KILAWATT_BASE_URL 环境变量进行更改。

发现和恢复工具(get_capacity、get_platform_status、get_pricing、get_resume_info 和 resume_job)使用的是站点根地址:https://www.kilawattcloud.dev。使用可选的 KILAWATT_SITE_URL 环境变量进行更改。末尾的斜杠会被移除。

变量使用方默认值
KILAWATT_BASE_URLdeploy_gpu_nodehttps://www.kilawattcloud.dev/api/public/v1
KILAWATT_SITE_URLget_capacity、get_platform_status、get_pricing、get_resume_info、resume_jobhttps://www.kilawattcloud.dev

安装

通过 npx 安装并运行:

npx -y kilawatt-mcp-server

配置

设置 Kilawatt API 密钥,以使用 deploy_gpu_node、get_resume_info 或 resume_job。启动服务、使用 x402 工具,或使用 get_capacity、get_platform_status 和 get_pricing 均无需设置密钥:

export KILAWATT_API_KEY=kw_live_YOUR_KEY_HERE

API 密钥必须以 kw_live_ 开头。API 密钥通过你的 Kilawatt Cloud 账户签发。如果你尚无生成密钥的权限,请联系 [email protected] 获取帮助。

与 Claude Desktop / Cursor 搭配使用

将此配置添加到 MCP 客户端设置中:

{
  "mcpServers": {
    "kilawatt": {
      "command": "npx",
      "args": ["-y", "kilawatt-mcp-server"],
      "env": {
        "KILAWATT_API_KEY": "kw_live_YOUR_KEY_HERE"
      }
    }
  }
}

使用 deploy_gpu_node 时,请将 kw_live_YOUR_KEY_HERE 替换为你的 Kilawatt API 密钥。仅使用 x402 时,请省略 KILAWATT_API_KEY。

使用 goose?请参阅 GOOSE.md。

运行服务

启动 MCP 服务:

npm start

或直接运行:

node index.js

服务通过标准输入/输出通道接收来自 Agent 的 MCP 请求。

可用工具

该服务提供九个工具:deploy_gpu_node、x402_quote、x402_run_job、x402_job_status、get_capacity、get_platform_status、get_pricing、get_resume_info 和 resume_job。

deploy_gpu_node

在 Kilawatt Cloud 上配置真实 GPU 算力。这会启动一台实际机器,并从调用者的 Kilawatt 钱包扣费。将 dry_run: true 设为仅检查价格和路由,不配置资源也不扣费。需要 KILAWATT_API_KEY。

参数类型必填默认值允许的值描述
gpu_type字符串否nvidia-h100最长 64 个字符的任意非空字符串(本地不会检查枚举值)GPU 型号标识符;网关决定接受哪些值
card_count整数否11 至 64GPU 数量
duration_seconds数字否6001 至 86400节点所需时长。预先计费。
routing_policy字符串否lowest_costlowest_cost、lowest_latency、zero_quota智能订单路由器选择节点的方式
dry_run布尔值否falsetrue、false仅定价和预授权
{
  "name": "deploy_gpu_node",
  "arguments": { "card_count": 2, "duration_seconds": 1800, "dry_run": true }
}
x402_quote

获取 GPU 作业的当前价格和 Base USDC 付款详情,无需付款。

参数类型必填默认值允许的值描述
gpu_type字符串否nvidia-h100nvidia-b300、nvidia-b200、nvidia-h200、nvidia-h100、nvidia-a100、nvidia-l40s、nvidia-l40、nvidia-a40、nvidia-a10、nvidia-rtx-a6000、nvidia-rtx-a5000、nvidia-rtx-a4500、nvidia-rtx-a4000、nvidia-rtx-5090、nvidia-rtx-4090、nvidia-rtx-3090GPU 型号
card_count整数否1nvidia-b200 为 1 至 4;nvidia-h100、nvidia-h200、nvidia-a100、nvidia-l40s 为 1 至 8;其他型号均为 1 至 16GPU 数量
duration_seconds数字否60060 至 86400作业时长(秒)
routing_policy字符串否不发送lowest_cost、lowest_latency、zero_quota路由策略
workload_type字符串否不发送agent_exec、fine_tune、batch_inference工作负载类型

已发布的输入架构声明 card_count 的最大值为 16。调用时,代码会强制执行上述针对各 GPU 型号的更严格限制。

x402_run_job

为一个 GPU 作业报价并使用 Base USDC 付款。接受与 x402_quote 相同的参数,另加:

参数类型必填描述
max_usd数字是必须大于 0。超过此金额或任一支出上限时,将拒绝付款。
confirm布尔值是必须为 true,否则不会付款。
x402_job_status

使用 x402_run_job 本地保存的 API 密钥,获取通过 x402 创建的作业状态。

参数类型必填描述
job_id字符串是1 至 128 个字符
get_capacity

读取当前 GPU 容量数据。只读。无需 API 密钥,也无需参数。调用 GET {KILAWATT_SITE_URL}/api/capacity。如果当前无法获取数据(HTTP 503,代码为 unavailable),工具会说明这一情况。

{ "name": "get_capacity", "arguments": {} }
get_platform_status

读取平台状态。只读。无需 API 密钥,也无需参数。调用 GET {KILAWATT_SITE_URL}/api/status。结果包含 status(operational、degraded、incident 或 unknown)、status_note、last_checked、status_page 和 latest_test_summary。

{ "name": "get_platform_status", "arguments": {} }
get_pricing

读取各 GPU 级别每 GPU 小时的参考美元价格。只读。无需 API 密钥,也无需参数。调用 GET {KILAWATT_SITE_URL}/api/pricing。这些价格仅供参考。作业的确切价格来自未付款的 x402 请求,例如 x402_quote。

{ "name": "get_pricing", "arguments": {} }
get_resume_info

检查作业能否从上一个检查点恢复。此操作为只读,不会启动任何任务或产生费用。需要 KILAWATT_API_KEY。调用 GET {KILAWATT_SITE_URL}/api/jobs/{job_id}/resume-info。

参数类型必填描述
job_id字符串是36 个字符,由十六进制数字和连字符组成。发送任何请求前都会进行检查。

结果包含 job_id、checkpoint_count、last_checkpoint_at、can_resume、reason(null、no_checkpoint 或 job_still_running)和 resume_action。

{ "name": "get_resume_info", "arguments": { "job_id": "YOUR_JOB_ID" } }
resume_job

启动新的付费运行,以便在不同供应商处从作业的上一个检查点恢复。**此操作会产生费用。**需要 KILAWATT_API_KEY。请先调用 get_resume_info,并在确认前询问用户。仅调用一次 POST {KILAWATT_SITE_URL}/api/jobs/{job_id}/resume,绝不会自动重试。

参数类型必填描述
job_id字符串是36 个字符,由十六进制数字和连字符组成
confirm布尔值是必须恰好为 true
max_spend_usd数字是新运行的费用上限。必须大于 0。
duration_seconds整数否60 至 86400。仅在提供时发送。

所有参数都会在发送任何请求前于本地进行检查。如果检查失败,则不会发送任何内容。

{
  "name": "resume_job",
  "arguments": { "job_id": "YOUR_JOB_ID", "confirm": true, "max_spend_usd": 5 }
}
deploy_gpu_node 与 x402 工具的区别
  • deploy_gpu_node 中的 gpu_type 为自由文本(最多 64 个字符),而 x402 工具中的 gpu_type 为固定列表。
  • deploy_gpu_node 中的 card_count 最多允许 64,而 x402 工具中最多允许 16(部分 GPU 的上限更低)。
  • deploy_gpu_node 中的 duration_seconds 允许 1 至 86400,而 x402 工具中允许 60 至 86400。
  • deploy_gpu_node 默认将 routing_policy 设为 lowest_cost;除非你进行设置,否则 x402 工具不会发送路由策略。

工具结果根据 Kilawatt 网关返回的真实 HTTP 响应生成。

x402 设置

x402 工具允许你使用 Base USDC 请求算力,无需 Kilawatt 账户或 API 密钥。费用上限会在本地强制执行。

使用 x402 付款时,服务端必须能够读取以下环境变量:

变量用途默认值
KILAWATT_X402_PRIVATE_KEY兼容 Base 的钱包密钥,仅用于通过 x402_run_job 付款未设置
KILAWATT_X402_MAX_USD_PER_JOB单个付费作业的最高费用0.25
KILAWATT_X402_MAX_USD_PER_SESSION此服务端进程中的累计费用上限1.00
KILAWATT_X402_URL覆盖 x402 执行端点Kilawatt 生产端点

返回的 API 密钥会以受限文件权限存储在 ~/.config/kilawatt/x402-api-key。它绝不会显示在工具输出中。现有的 deploy_gpu_node 仍需要 KILAWATT_API_KEY。

**请为 x402 使用单独的小额钱包,并勿将其私钥放入提示词或共享配置中。**付款方不需要 ETH;交易由中介方提交。

对于 x402 用户:请确认你的 Base 钱包中有足够的 USDC,且费用上限允许支付相应金额。

错误处理

所有错误都会提供明确说明,并指出是否已分配资源或扣费。常见情况:

  • 400 Bad Request:参数无效(例如,card_count > 64)。修正后重试。
  • 401 Unauthorized:API 密钥缺失、格式错误或已撤销。请在 Kilawatt 账户中签发新密钥,或联系 [email protected]。
  • 402 Payment Required:付款未获接受。请检查余额和费用上限,然后重试。
  • 429 Rate Limited:达到并发或速率限制。请稍后重试。
  • 503 No Capacity:没有符合条件的可用节点。请尝试其他 gpu_type 或更小的 card_count。
  • Timeout:网关在 60 秒内未响应。未分配算力;如有需要,请重试。

Links

License

MIT

评论

支持 Markdown

第一次接触 MCP?

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

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