这是一个基于 FastMCP 的待办事项服务器,专为 Swarmonomicon 项目打造。该服务器借助 FastMCP 接收待办事项请求,并将这些请求存储于 MongoDB 中,以供 Swarmonomicon 待办事项工作者进行处理。
此服务器是基于 FastMCP 的待办事项服务器,主要用于接收待办事项请求,并将其存储在 MongoDB 中,供 Swarmonomicon 待办事项工作者处理。以下是使用该服务器的基本步骤:
克隆仓库:
git clone https://github.com/DanEdens/Omnispindle.git
cd Omnispindle
安装 uv(若尚未安装):
curl -LsSf https://astral.sh/uv/install.sh | sh
创建并激活带有 uv 的虚拟环境:
uv venv
source .venv/bin/activate # 在 Unix/macOS 上
# 或者
.venv\Scripts\activate # 在 Windows 上
使用 uv 安装依赖项:
uv pip install -r requirements.txt
若为开发环境,请安装额外的依赖项:
uv pip install -r requirements-dev.txt
创建配置文件 .env:
MONGODB_URI=mongodb://localhost:27017
MONGODB_DB=swarmonomicon
MONGODB_COLLECTION=todos
启动 FastMCP 服务器:
python -m src.Omnispindle
您可以通过多种方式使用 FastMCP 添加待办事项:
from fastmcp import FastMCPClient
client = FastMCPClient()
response = await client.call_tool("add_todo", {
"description": "Example todo",
"priority": "high", # 可选,默认为 "medium"
"target_agent": "user" # 可选,默认为 "user"
})
mosquitto_pub -t "mcp/todo/new" -m '{
"description": "Example todo",
"priority": "high",
"target_agent": "user"
}'
pytest tests/
pytest --cov=src tests/
pytest tests/test_todo_handler.py -v
此服务器是更大的 Swarmonomicon 项目的一部分,该项目提供以下功能:
有关 Swarmonomicon 项目及其功能的更多信息,请参阅 主要项目的文档。
本项目采用 MIT 许可证。
有关贡献到 Swarmonomicon 项目的更多详细信息,请参阅 主要项目的贡献指南。