项目简介
Madness Interactive 是一个构建 AI 驱动的本地开发和自动化工具及 Agent 生态系统的集合项目。其中,Omnispindle 被定位为一个分布式任务管理 MCP 引擎,作为 LLM Agent 的“神经中枢”,负责促进不同 Agent 之间的思想交流,编排跨多个 Agent 实例的任务,并通过 MCP 协议提供上下文信息和功能。
Todomill Projectorium 作为 Omnispindle 的一个集成示例,展示了如何利用 Omnispindle MCP 服务器的能力,让 AI Agent 与后端数据(如待办事项列表)进行交互和管理。
主要功能点
- 分布式任务编排: 作为核心任务引擎,管理和调度 Agent 之间的任务执行。
- Agent 协同: 支持多 Agent 之间的通信和协作。
- 上下文服务: 通过 MCP 协议提供资源(如 Todomill 中的待办事项)访问和管理能力。
- 工具调用: 支持 LLM Agent 调用外部功能(通过注册的工具)。
- Prompt 管理: 可能包含 Prompt 模板的定义和渲染能力(MCP 标准功能)。
- 会话管理: 维护 LLM Agent 的交互状态和会话上下文。
安装步骤
由于这是一个包含多个子项目的仓库,安装步骤可能因您关注的具体组件而异。对于核心的 Omnispindle MCP 服务器及其 Python 组件,基本步骤如下:
- 克隆仓库:
git clone https://github.com/MadnessEngineering/Madness_Interactive.git cd Madness_Interactive - 初始化子模块:
git submodule update --init --recursive - 安装 Python 依赖: 切换到 Python 项目目录(例如 'projects/python/Omnispindle' 或 'projects/python/mcp_server'),并安装所需的依赖。具体依赖请参考对应目录下的 'requirements.txt' 或 'setup.py' 文件。通常使用 pip:
注意:请查阅 'projects/python/mcp_server/' 目录下的具体 README 或文档,以获取最准确和详细的安装及配置指南。# 切换到 Omnispindle 目录 # cd projects/python/Omnispindle # 或其他包含服务器代码的目录 pip install -r requirements.txt
服务器配置
MCP 客户端需要知道如何启动并连接到 MCP 服务器。以下是 MCP 客户端配置中可能需要的服务器信息结构示例。请注意,具体的 'command' 和 'args' 取决于 Omnispindle 项目内部的实现细节和启动脚本。
{ "server_name": "Omnispindle", "description": "Madness Interactive ecosystem's Omnispindle MCP Server for task orchestration and context.", "command": "一个启动 Omnispindle MCP 服务器进程的命令", "args": [ "传递给服务器启动命令的参数列表,例如配置文件路径、监听端口等" ], "protocol": "stdout/stdin 或其他支持的协议,需查阅 Omnispindle 文档" }
- 'server_name': 服务器的唯一标识名称,例如 "Omnispindle"。
- 'description': 服务器功能的简要描述。
- 'command': 用于在系统上启动 Omnispindle MCP 服务器可执行文件或脚本的命令字符串。
- 'args': 一个字符串数组,包含传递给 'command' 的命令行参数。这些参数可能用于指定配置路径、网络端口、日志级别等。
- 'protocol': 客户端与服务器通信的传输协议,可能包括 "stdout/stdin" (stdio), "tcp", "websocket" 等。具体的支持协议需查阅 Omnispindle 的文档。
要获取准确的 'command' 和 'args',请参考 Madness Interactive 仓库中 'projects/python/mcp_server/' 目录下的文档或启动脚本。
基本使用方法
作为 MCP 服务器,Omnispindle 主要由 MCP 客户端(通常是 LLM 应用程序或 Agent 框架)通过 JSON-RPC 协议调用。
- 启动服务器: 根据上文提到的安装和配置,运行 'command' 启动 Omnispindle MCP 服务器进程。
- 客户端连接: 配置 MCP 客户端使用正确的 'server_name'、'command'、'args' 和 'protocol' 连接到 Omnispindle 进程。
- 能力声明: 客户端连接后,服务器会向客户端声明其提供的 Capabilities (Resources, Tools, Prompts)。
- 客户端调用: 客户端根据声明的能力,发送 JSON-RPC 请求(如 'mcp/resource/get', 'mcp/tool/execute', 'mcp/prompt/render')来获取上下文信息或触发工具执行。
- 服务器响应: Omnispindle 服务器处理请求,执行相应的逻辑(如访问 Todomill 数据、调用内部工具),并返回 JSON-RPC 响应给客户端。
最终用户不会直接与此 MCP 服务器交互,而是通过一个集成了 MCP 客户端的 LLM 应用程序或 Agent 界面进行操作。
信息
分类
AI与计算