使用说明(Markdown 格式)
一、项目简介
- AIMED 的这部分实现是一个可运行的 MCP 服务器端,遵循 Model Context Protocol 的核心职责,面向 LLM 客户端提供:资源数据访问、工具调用、以及可渲染的提示/上下文模板能力。
- 服务器具备多工作区隔离、向量嵌入检索、知识图谱数据结构,以及与前端仪表盘的深度集成能力,能够在运行时动态管理会话和能力声明。
二、主要功能点
- Model Context Protocol 服务端:处理 MCP 请求,返回 JSON-RPC 风格响应,支持 initialize、tools/call 等 MCP 方法。
- 资源、工具、Prompts 管理:提供对资源数据、可执行工具、以及 Prompt/模板的结构化管理与渲染。
- 多工作区隔离:为不同工作区创建独立的数据库与向量存储,确保数据隔离和稳定性。
- 数据库与迁移:SQLite 数据库 + Alembic 迁移,自动升级 schema。
- 向量检索与语义搜索:嵌入模型加载、向量存储(ChromaDB)以及基于向量的相似度检索。
- 知识图谱:将 Dispositions/Decisions/Patterns/CustomData 等实体及其关系以图形化方式组织和查询。
- UI 缓存与 UI-Cache 集成:集中缓存机制用于端到端工作区 UI 的状态和配置(如端口映射、Env Vars、UI 设置等)。
- 动态配置与测试工具:提供测试工具、工作流检测、以及便捷的测试用例与示例。
三、安装与运行步骤
- 前提条件
- Python 3.8 及以上环境(建议使用虚拟环境)
- Git 代码获取
- 安装与部署(简要步骤)
- 获取代码并进入仓库根目录
- 安装依赖(按仓库要求在虚拟环境中完成)
- 按需配置数据库路径、工作区根目录等参数
- 启动 MCP 服务器:在工作区目录执行以下命令之一(下列命令用于演示,实际路径请按实际环境调整):
- 启动模式为 HTTP 的 MCP 服务器: python -m src.context_portal_mcp.main --mode http --host 127.0.0.1 --port 8020 --workspace_id "/path/to/workspace"
- 验证与测试
- 通过 MCP 客户端工具或集成环境向服务器提交 MCP 请求,如 get_product_context、log_decision 等,确认服务端能按 JSON-RPC 风格返回响应。
- 服务器默认提供 health-check 端点,可用于健康状态检查。
四、服务器配置(MCP 客户端需要的配置信息) 说明:以下配置用于 MCP 客户端将请求发送给服务器(server_name、command、args 等信息均来自仓库实现)。请将 workspace_id 替换为目标工作区的实际目录或标识符。
{ "server_name": "conport", "command": "python", "args": [ "-m", "src.context_portal_mcp.main", "--mode", "http", "--host", "127.0.0.1", "--port", "8020", "--workspace_id", "/path/to/workspace" ] }
说明与注释
- server_name:服务器端在 MCP 客户端中的标识名,测试用例中使用的是 conport,与仓库中的实现保持一致。
- command:启动 MCP 服务器所需的执行命令,通常为 Python 解释器。
- args:启动参数,包含运行模式(http)、监听地址、端口、以及工作区标识符。工作区标识应与实际部署环境相匹配,用以实现多工作区的隔离与数据定位。
五、基本使用方法(简易入门)
- 通过 MCP 客户端使用工具调用服务器提供的功能,例如通过工具名 get_product_context 获取产品上下文、log_decision 写入决策、get_decisions 获取决策列表等。
- 服务器支持多种传输协议(如 HTTP JSON-RPC、STDIO、SSE、WebSocket),默认以 HTTP JSON-RPC 作为对外通信方式,便于集成和调试。
- 若需要在前端仪表盘中查看知识图谱、历史记录、以及向量检索结果,可结合 AIMED 提供的 UI 组件与后端 API 进行联动。
六、注意事项
- 由于实现包含多工作区、向量存储和 UI 缓存等内容,实际部署时应确保工作区根目录结构、UI 缓存路径与数据库路径的一致性与权限正确性。
- 向量嵌入与向量检索模块依赖相关模型与向量数据库,请确保网络环境允许模型加载及外部依赖的正确安装。
- MCP 客户端不需要在此输出中包含实现细节,且配置示例已给出可直接使用的 JSON 结构。
七、可扩展性与维护
- 代码库具备完善的工具、上下文、知识图谱与向量检索能力,可扩展以支持更多 MCP 工具、更多工作区和更丰富的上下文类型。
- 积极维护数据库迁移、FTS 的索引与触发器、以及向量数据库的版本与一致性。
二级说明(对开发者的快速要点)
- MCP 服务器实现:核心逻辑在 src/context_portal_mcp/ 与 handlers、db、vector_store_service 及 UI 缓存等子模块中,提供了工具执行、上下文更新、以及向量嵌入等能力。
- 运行入口:src/context_portal_mcp/main.py,支持通过命令行参数启动 HTTP 服务,并绑定工作区。
- 数据存储:SQLite 数据库,Weak/强一致性通过 WAL、Synchronous 设置、以及 Alembic 迁移维持。
- 向量存储:基于 Chromadb,与 Embedding Service 协同工作,面向相似性检索与知识图谱增强。
关键词 上下文服务, 向量检索, 知识图谱, 多工作区隔离, 实时推理
category_id 6
信息
分类
AI与计算