mcpField
S
Steadybit MCP Server

Steadybit MCP Server

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

关于 Steadybit MCP Server

这是一个已弃用且不再维护的 Steadybit 独立 MCP 服务,可供 LLM 工具查询实验设计、执行、环境、团队和模板,并可按配置从模板创建实验。Steadybit 平台现已提供内置远程 MCP 服务。

主要功能

  1. 01列出并获取实验设计
  2. 02筛选实验执行记录
  3. 03查询操作、环境与团队
  4. 04列出实验计划和模板
  5. 05按模板创建实验(需启用)

适用场景

  1. 01查看团队的实验设计
  2. 02按环境或状态筛选执行记录
  3. 03检查实验计划与模板
  4. 04从模板创建实验

MCP 相关

该独立 MCP 服务将 Steadybit 的实验、环境、团队及相关数据操作暴露为工具;创建实验需通过环境变量启用。项目已弃用,README 建议改用 Steadybit 平台内置的远程 MCP 服务。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"steadybit": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/inspector"
]
}
}
}
启动命令npx -y @modelcontextprotocol/inspector

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

安装包
npm@modelcontextprotocol/inspector

工具

还没有获取到工具列表

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

详细介绍

Steadybit MCP 服务

警告

已弃用。 此独立 MCP 服务已不再维护。请改用内置于 Steadybit 平台的托管 远程 MCP 服务——它无需本地安装,支持 OAuth,并提供更多工具 (环境、目标、操作、服务、实验设计、建议和运行分析)。 请参阅文档了解设置说明。

Steadybit 的 MCP 服务,可让 Claude 等 LLM 工具与 Steadybit 平台交互。

工具

  1. list-experiment-designs
    • 列出实验设计
    • 必需输入:
      • team(string):要列出实验设计的团队键
    • 返回:包含实验设计键和名称的列表
  2. get_experiment_design
    • 获取实验设计
    • 必需输入:
      • experimentKey(string):要获取的实验键
    • 返回:实验设计
  3. list_experiment_executions
    • 列出实验执行记录
    • 可选输入:
      • experiment(list of string):按一个或多个实验键筛选
      • environment(list of string):按一个或多个环境名称筛选
      • team(list of string):按一个或多个团队键筛选
      • state(list of string):按一个或多个结果状态筛选,可用值为 [CREATED, PREPARED, RUNNING, FAILED, CANCELED, COMPLETED, ERRORED]
      • from(string,ISO8601 日期):按创建日期起始时间筛选
      • to(string,ISO8601 日期):按创建日期截止时间筛选
      • page(number):请求的页码,默认为 0
      • pageSize(number):每页结果数,默认为 50,最大允许 100
    • 返回:实验设计
  4. get_experiment_execution
    • 获取实验执行记录
    • 必需输入:
      • executionId(number):要获取的执行记录 ID
    • 返回:实验执行记录
  5. list_actions
    • 列出当前已注册的操作
    • 可选输入:
      • page(number):请求的页码,默认为 0
      • pageSize(number):每页结果数,默认为 50,最大允许 100
    • 返回:操作列表
  6. list_environments
    • 获取环境列表
    • 返回:环境列表
  7. list_teams
    • 获取团队列表
    • 返回:团队列表
  8. list_experiment_schedules
    • 获取实验计划列表
    • 可选输入:
      • experiment(list of string):按一个或多个实验键筛选
      • team(list of string):按一个或多个团队键筛选
    • 返回:实验计划列表
  9. list_experiment_templates
    • 获取实验模板列表(名称和 ID)
  10. get_experiment_template
    • 获取实验模板及其设计
    • 必需输入:
      • templateId(string):用于创建实验的模板 ID
  11. create_experiment_from_template
    • 根据模板创建实验
    • 需要通过环境变量启用,例如 CAPABILITIES_ENABLED_0=CREATE_EXPERIMENT_FROM_TEMPLATE
    • 必需输入:
      • templateId(string):用于创建实验的模板 ID
      • environment(string):实验使用的环境
      • team(string):实验使用的团队
    • 可选输入:
      • placeholders(object):占位符键及其值的映射。
      • externalId(string):可选的外部 ID,可用于更新现有实验设计。
    • 返回:已创建实验的键;如果无法创建实验,则返回错误消息

设置

你需要拥有 Steadybit 账号和 API 令牌。你可以在 Steadybit 平台的 Settings → API Access Tokens 下创建 API 令牌。支持两种令牌类型:Admin 和 Team。

如果要创建实验,你需要使用要创建实验的团队的团队令牌。

支持的环境变量
  • API_TOKEN:用于身份验证的 API 令牌。必填。
  • API_URL:Steadybit API 的 URL。默认为 https://platform.steadybit.com/api。
  • CAPABILITIES_ENABLED_0、CAPABILITIES_ENABLED_1……:要启用的其他功能。目前支持:
    • CREATE_EXPERIMENT_FROM_TEMPLATE:启用 create_experiment_from_template 工具。
在 Claude Desktop 中使用

在 Claude Desktop 中,前往 Settings → Developer → Edit 并添加以下 JSON,将 <your-api-token> 替换为你的实际令牌:

{
  "mcpServers": {
    "steadybit": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "API_TOKEN",
        "ghcr.io/steadybit/mcp:latest"
      ],
      "env": {
        "API_TOKEN": "<your-api-token>"
      }
    }
  }
}

本地开发

前置条件
  • Java 21+
  • Maven 3.9+
  • Docker(仅 Docker 镜像流程需要)
  • Node.js / npx(用于运行 MCP 检查器)

MCP 服务使用 STDIO 传输,因此不会记录控制台日志。服务输出会写入你启动服务所在目录中的 steadybit-mcp.log。

构建
mvn clean install

生成的 jar 位于 target/mcp-<version>-SNAPSHOT.jar。

使用 MCP 检查器在本地运行
npx @modelcontextprotocol/inspector \
  java -jar target/mcp-1.0.0-SNAPSHOT.jar \
  -e API_URL=https://platform.steadybit.com/api \
  -e API_TOKEN=<your-api-token>

日志会写入你启动检查器所在目录中的 steadybit-mcp.log。

在 Claude Desktop 中使用本地 jar 运行

编辑 Claude Desktop 的开发者配置(Settings → Developer → Edit),使其指向本地 Java 二进制文件和 刚构建的 jar:

{
  "mcpServers": {
    "steadybit": {
      "command": "/path/to/your/java",
      "args": [
        "-jar",
        "/path/to/your/.m2/repository/com/steadybit/mcp/1.0.0-SNAPSHOT/mcp-1.0.0-SNAPSHOT.jar"
      ],
      "env": {
        "API_URL": "https://platform.steadybit.com/api",
        "API_TOKEN": "<your-api-token>",
        "LOGGING_FILE_NAME": "/path/to/Library/Logs/Claude/steadybit-mcp-server.log"
      }
    }
  }
}
  • MCP 客户端日志:~/Library/Logs/Claude/mcp-server-steadybit.log
  • MCP 服务日志:通过 LOGGING_FILE_NAME 配置的路径(默认为启动器旁的 steadybit-mcp.log)
运行测试
mvn test
构建 Docker 镜像
docker build -t steadybit/mcp -f Dockerfile .

然后创建 config.json,并使用该镜像运行检查器:

{
  "mcpServers": {
    "steadybit": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "API_TOKEN",
        "-e",
        "API_URL",
        "steadybit/mcp"
      ],
      "env": {
        "API_TOKEN": "<your-api-token>",
        "API_URL": "https://platform.steadybit.com/api"
      }
    }
  }
}
npx @modelcontextprotocol/inspector --config config.json --server steadybit
构建原生镜像

通过 sdkman 安装 GraalVM 24.0.1:

sdk install java 24.0.1-graalce
sdk use java 24.0.1-graalce

然后使用 native 配置文件进行构建:

mvn -Pnative native:compile

使用示例

示例提示词见 examples/examples.md。

许可证

MIT — 详情请参阅 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

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

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