返回市场
爱丽丝-MCP服务器

爱丽丝-MCP服务器

作者:soapko2 星标更新:2025-06-23

项目介绍

Alice - 本地MCP服务器

Alice 是一款轻量级的本地服务器,旨在支持AI编码环境中(如使用模型上下文协议(MCP)的环境)的敏捷任务工作流。它提供了一个后台管理系统,用于在您的机器上本地管理项目、任务、史诗和消息,并具有项目隔离功能以支持多个独立的软件项目。

请参阅文档部分获取详细指南链接。

主要特性

  • 项目管理: 创建和管理不同的项目。
  • 任务与史诗跟踪: 使用任务组织工作,并将它们分组到史诗中。
  • 消息记录: 将消息或笔记附加到特定的任务。
  • 项目隔离: 所有任务、史诗和消息都限定于一个项目。
  • 本地操作: 完全在您的本地机器上运行,使用简单的SQLite数据库。
  • MCP集成: 设计为在MCP环境中作为工具提供商使用。

设置

  1. 克隆仓库:

    git clone <repository-url> # 替换为实际URL
    cd alice-mcp-server
    
  2. 创建并激活Python虚拟环境:

    # 创建环境
    python -m venv venv
    
    # 激活环境(Linux/macOS)
    source venv/bin/activate
    
    # 激活环境(Windows)
    # venv\Scripts\activate
    
  3. 安装依赖项:

    pip install -r requirements.txt
    

运行服务器

启动带有热重载的开发服务器:

uvicorn app.main:app --reload

服务器通常可以在 http://127.0.0.1:8000 访问。

快速开始

  1. 启动服务器(见上文)。
  2. 创建项目:/projects/ 发送一个 POST 请求,附带唯一的项目名称。
    { "name": "my-new-project" }
    
  3. 获取 project_id 您可以通过列出项目(GET /projects/)或通过名称获取(GET /projects/by-name/my-new-project)来找到分配的整数ID。
  4. 使用项目范围的端点: 对于任务、史诗和消息的所有后续操作都需要在URL路径中包含 project_id(例如,/{project_id}/tasks/)。

项目隔离API结构

Alice 在URL路径中使用项目ID来确保数据隔离:

  • 项目管理: /projects/(例如,POST /projects/GET /projects/{project_id}
  • 任务: /{project_id}/tasks/(例如,POST /1/tasks/GET /1/tasks/{task_id}
  • 史诗: /{project_id}/epics/(例如,POST /1/epics/GET /1/epics/{epic_id}
  • 消息: /{project_id}/tasks/{task_id}/messages/(例如,POST /1/tasks/5/messages/

请将 1 替换为您实际的 project_id

运行测试

确保您已激活虚拟环境并安装了依赖项。然后运行:

pytest

API文档

当服务器运行时,您可以在浏览器中访问交互式API文档(由FastAPI提供):

  • Swagger UI: http://127.0.0.1:8000/docs
  • ReDoc: http://127.0.0.1:8000/redoc

文档

详细的文档可以在 docs/ 目录下找到:

贡献

欢迎贡献!请遵循以下准则:

  • 遵守编码风格(PEP 8,blackisort)。
  • 使用类型提示。
  • 文档公共函数和API。
  • 为新功能或错误修复编写单元测试。
  • 提交更改前确保所有测试和代码检查器通过。
  • 对于重大变更,请先打开一个问题讨论方法。