openaaas-mcp-adapter
This server acts as an MCP (Model Context Protocol) adapter for the OpenAaaS Agent Orchestration Network, enabling AI clients to discover, submit, and manage tasks on distributed remote AI agents.
Server Management
discover— Fetch API information from a specified server URLset_server_url— Configure and save a server address for future requestslist_servers— View all configured serversset_default_server— Switch which server is used by defaultremove_server— Delete a server configuration
Account Management
register— Create a client account to obtain an API keyupdate_profile— Update the current client's username
Service Discovery
list_services— Retrieve a summary list of available remote agent servicesget_service_usage— Get detailed usage instructions for a specific service, including capabilities, call conventions, return formats, and limitations
Task Lifecycle
submit_task— Submit a task prompt (with optional local file uploads) to a remote agent for executionget_task— Query the status and final result of a submitted taskcancel_task— Cancel a task that is currently executing
File Management
list_files— List all result files associated with a completed taskdownload_result— Download individual or all result files from a task
🚀 Quick Start
方式 | 入口 |
在线体验 |
|
下载客户端 | GitHub Releases — macOS / Windows 桌面客户端 |
什么是 OpenAaaS?
智能流动,数据静止 —— 让 Agent 走到数据身边,而不是把数据交给 Agent。
OpenAaaS 是一个面向 AI for Science 的 Agent 编排网络(Agent Orchestration Network):数据驻留在产生它的原地,Agent 能力通过网络流动到数据身边。
操作视频 | 截图 |
接入网络 查看节点列表 任务结果返回 |
论文:技术设计与实现细节详见 arXiv:2605.13618。
为什么选择 OpenAaaS?
1. Agent 编排,节点即 Agent
网络调度的对象不是脚本,而是拥有完整工具链的 Agent 实例。每个节点上的 Docker 容器内运行完整 Agent,能够自主决策、自主执行、自主调用子 Agent。任意 Agent(Claude Code、pi mono、Kimi 等)都可以像调用工具一样发现、委派并组合全球节点的其他 Agent。
2. 数据原地处理,零迁移
原始数据始终留在产生它的位置,远程 Agent 直接在数据旁工作。网络只传输任务描述与结果(KB~MB 级),不触碰原始数据(TB 级)。
传统云端方案 | OpenAaaS | |
数据流向 | 本地 → 云端 → 本地 | 原始数据原地不动 |
网络传输 | 原始数据(TB 级) | 任务描述与结果(KB~MB 级) |
防火墙要求 | 需开放入站端口 | 仅出站 HTTP 即可 |
敏感数据 | 必须出域 | 不出实验室 |
3. 免规范化接入,即插即用
无需统一数据格式,JSON/CSV/Excel/MATLAB/HDF5/厂商二进制格式均可原地处理。节点零配置入网:open-aaas-server run 首次启动自动生成 config.toml 和 SQLite。自描述 API + 渐进式能力发现,Agent 无需插件即可理解并调用全部服务。
4. 近数据端计算,低门槛部署
Rust 单二进制 + SQLite 嵌入式,零依赖部署,复制即用。Docker 隔离执行,每个任务独立沙箱。节点单向出站即可加入网络,无需公网 IP、无需开端口、无需 SSH——专为实验室防火墙和 NAT 环境设计。
如何使用?
公共服务器:https://api.open-aaas.com
方式 | 适合谁 | 入口 |
Jupyter Notebook (Binder) | 想先体验,无需安装 | |
桌面客户端 | 非技术用户 | |
Python SDK | Python/Jupyter 用户 |
|
MCP 适配器 | Claude/Cursor/Cline 用户 |
|
pi / kimi 插件 | 对话型 Agent 用户 | 对话中直接调用 |
Jupyter Notebook (Binder)
点击上方 Binder 徽章即可在浏览器中运行 binder/quickstart.ipynb,无需安装任何软件。
桌面客户端
基于 Tauri 的跨平台桌面应用,支持 macOS 和 Windows。适合非技术用户管理多个服务器、拖拽上传文件、实时查看任务进度。
macOS 和 Windows 用户可直接从 GitHub Releases 下载
.dmg或.msi安装包。macOS 首次打开需前往 系统设置 → 隐私与安全性 → 安全性 点击"仍要打开"。
Python SDK
pip install pyopenaaasimport pyopenaaas
client = pyopenaaas.Client()
client.register(name="your-name")
services = client.list_services()
task = client.submit_task(
service_id=services[0].id,
task_prompt="你的任务描述",
)
task = client.wait_for_task(task.id)
paths = client.download_all_files(task.id)MCP 适配器
openaaas-mcp-adapter 已发布至 PyPI。支持 MCP 的客户端(Claude Desktop、Cursor、Cline 等)只需一条配置即可接入:
{
"mcpServers": {
"openaaas": {
"command": "uvx",
"args": ["openaaas-mcp-adapter"]
}
}
}配置后重启客户端,即可在对话中调用全部能力。
详见 client-extension/openaaas-mcp-adapter/README.md。
pi / kimi 插件
在对话中直接说:
"帮我设置 OpenAaaS 的服务器地址为 https://api.open-aaas.com,然后提交一个数据分析任务"
客户端 Agent 自动完成注册、服务发现、任务提交和结果获取。
通用 Agent 框架
如果你的 Agent 没有 OpenAaaS 插件,直接访问 https://api.open-aaas.com。无需认证,返回完整 API 文档和使用说明,Agent 读取后即可自动完成注册、服务发现、任务提交。
部署自己的节点
预编译二进制(推荐)
无需安装 Rust,下载即可运行:GitHub Releases
组件 | 二进制文件名 |
Server |
|
Agent Core |
|
支持平台:
Server / Agent Core:Linux x64 (musl 静态链接)、Linux arm64 (musl 静态链接)、macOS arm64、Windows x64
桌面客户端:macOS、Windows
Linux 版本采用 musl 静态链接,不依赖系统 glibc,可在任意 Linux 发行版直接运行。
chmod +x open-aaas-server # Unix 用户
./open-aaas-server run首次启动自动生成 config.toml 和 SQLite 数据库。
从源码编译
cd server
cargo build --release
./target/release/open-aaas-server runAgent Core 部署详见 agent-core/README.md。
架构
客户端 Agent
(pi mono / Claude Code / Kimi Cli / Cline / 自研 Agent)
▲
│ 控制流:任务描述、心跳、结果(KB 级)
▼
───────────────────────────────────────────────────────────────────
OpenAaaS Server(网络枢纽)
Rust + SQLite — 轻量索引层
• 服务注册 • 任务路由 • 节点心跳 • 文件中转
▲
│ 短轮询(单向出站 HTTP)
▼
───────────────────────────────────────────────────────────────────
Agent Core(网络节点)
Rust + Docker — 部署在数据本地
• 向网络注册能力 • 轮询认领任务
• 容器沙箱隔离执行 • 上报结果
│
▼
[完整 Agent 实例]
(拥有完整工具链,在容器内自主决策、自主执行)
│
├─→ [本地数据集](TB 级)
├─→ [分析脚本](算法/模型)
└─→ [专用硬件](GPU/仪器)层级 | 组件 | 职责 |
客户端 Agent | pi mono / Kimi Cli / Codex / Open Code / 自研 Agent | 理解任务、发现网络节点、调度远端 Agent、整合结果 |
网络枢纽 | Server — 能力注册与调度中心 (Rust + SQLite) | 服务注册、任务路由、节点心跳、文件中转 |
网络节点 | agent-core — 能力执行节点 + Docker,容器内运行完整 Agent 实例 | 向网络注册自身能力、轮询认领任务、在沙箱中启动完整 Agent 实例隔离执行、上报结果 |
项目结构
OpenAaaS/
├── server/ # 网络枢纽(调度中心) (Rust)
├── agent-core/ # 网络节点(执行节点) (Rust)
├── client-app/ # 桌面客户端 (Tauri + Vue 3)
├── dash/ # 调试与管理员工具 (Python/Streamlit)
├── client-extension/ # 客户端扩展 — pi 插件、kimi 插件、MCP 适配器
├── pyopenaaas/ # Python SDK
└── binder/ # 示例 notebook 与脚本论文
arXiv:2605.13618 — https://arxiv.org/abs/2605.13618
参与贡献
欢迎参与贡献!请阅读 CONTRIBUTING.md。
开源许可
MIT License © IDM Explorer Lab
Maintenance
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Wolido/OpenAaaS'
If you have feedback or need assistance with the MCP directory API, please join our Discord server