关于 IvoryOS MCP
IvoryOS MCP 将 MCP 客户端连接到 IvoryOS,用于机器人控制和工作流管理。它提供平台检查、工作流脚本与数据处理、执行任务及控制进度的工具。
主要功能
- 01查看平台和执行状态
- 02列出、加载和提交工作流脚本
- 03访问工作流执行数据
- 04运行任务和优化器活动
- 05暂停、恢复或停止工作流
适用场景
- 01运行前检查机器人平台状态
- 02准备并提交工作流脚本
- 03使用参数或优化器运行工作流
- 04暂停或停止正在运行的工作流
MCP 相关
向 MCP 客户端提供 IvoryOS 平台信息、工作流资源和机器人控制工具。工具可触发托管 Python 代码中的操作。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
14收录的工具列表 · 更新于 2 周前
此工具无需参数。
详细介绍
IvoryOS MCP 服务
使用 IvoryOS 和模型上下文协议(MCP)作为机器人控制接口,用于设计和管理工作流,并与当前硬件/软件执行层交互。
🧩 在 Claude Desktop 中一键安装(桌面扩展)
- 下载
ivoryos-mcp-<version>.mcpb。 - 双击该文件(或将其拖入 Claude Desktop,或依次选择“设置” → “扩展” → “高级设置” → “安装扩展…”)。
- 填写你的 ivoryOS URL、用户名和密码,然后启用扩展。
Claude Desktop 会自行安装 Python 和依赖项,无需安装其他内容。该扩展在你的计算机上运行,因此只需能够连接到网络上的 ivoryOS。
构建 .mcpb(在此仓库中进行,需要 Node.js):
npx @anthropic-ai/mcpb pack . ivoryos-mcp-<version>.mcpb
确保 manifest.json 中的 version 与 pyproject.toml 保持同步。.mcpbignore 可将 .env 和构建文件排除在软件包之外。
🚀 使用 Claude Desktop 快速入门(手动配置)
安装 uv。 打开配置文件,然后添加 IvoryOS MCP 配置。
- macOS:~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"IvoryOS MCP": {
"command": "uvx",
"args": [
"ivoryos-mcp"
],
"env": {
"IVORYOS_URL": "http://127.0.0.1:8000/ivoryos",
"IVORYOS_USERNAME": "<IVORYOS_USERNAME>",
"IVORYOS_PASSWORD": "<IVORYOS_PASSWORD>"
}
}
}
}
📦 安装
安装 uv。
1. 克隆仓库
git clone https://gitlab.com/heingroup/ivoryos-mpc
cd ivoryos-mcp
2. 安装依赖项
使用 IDE(例如 PyCharm)时,可能已配置 uv 环境,可以跳过本节。
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
uv pip install -r uv.lock
⚙️ 配置
选项 1:在 .env 中更改 ivoryOS URL 和登录凭据。
IVORYOS_URL=http://127.0.0.1:8000/ivoryos
IVORYOS_USERNAME=admin
IVORYOS_PASSWORD=admin
选项 2:在 ivoryos_mcp/server.py 中更改 ivoryOS URL 和登录凭据。
url = "http://127.0.0.1:8000/ivoryos"
login_data = {
"username": "admin",
"password": "admin",
}
🚀 安装服务(在 Claude Desktop 中)
mcp install ivoryos_mcp/server.py
✨ 功能
| 类别 | 功能 | 路由 | 描述 |
|---|---|---|---|
| ℹ️ 通用工具 | platform-info | GET /instruments | 获取 ivoryOS 信息和平台签名 |
execution-status | GET /executions/status | 检查系统是否繁忙,以及当前/上一个任务的状态 | |
| ℹ️ 工作流设计 | list-workflow-scripts | GET /library/<deck_name> | 列出数据库中的所有工作流脚本 |
load-workflow-script | GET /library/<workflow_name> | 从数据库加载工作流脚本 | |
submit-workflow-script | POST /draft/submit_python | 将工作流 Python 脚本保存到数据库 | |
get-optmizer-schema | POST /executions/optimizer_schema | 获取所有优化器架构 | |
| ℹ️ 工作流数据 | list-workflow-data | GET /executions/records | 列出可用的工作流执行数据 |
load-workflow-data | GET /executions/records/<workflow_id> | 加载执行日志和数据文件 | |
| 🤖 直接控制 | execute-task | POST /instruments/<component> | 直接调用平台功能 |
| 🤖 工作流运行 | run-workflow-repeat | POST /executions/config | 使用静态参数重复运行工作流脚本 |
run-workflow-kwargs | POST /executions/config | 使用动态参数运行工作流脚本 | |
run-workflow-campaign | POST /executions/campaign | 使用优化器运行工作流活动 | |
| 🤖 工作流控制 | pause-and-resume | GET /executions/pause-resume | 暂停或恢复工作流执行 |
abort-pending-workflow | GET /executions/abort/next-iteration | 完成当前迭代,并中止后续执行 | |
stop-current-workflow | GET /executions/abort/next-task | 安全停止当前工作流 |
⚠️ ℹ️ 是资源,但由于 MCP Python SDK 与 Claude Desktop 集成目前存在问题,因此被标记为工具。
建议 ℹ️ 任务仅使用allow always
🤖 任务使用allow once。 这些任务会在托管的 Python 代码中触发实际操作。
🧪 示例
示例提示词使用抽象的 SDL 示例。
平台信息

加载预置工作流脚本

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