modelscope·@hburgoyne/picard_mcp
暂无描述。
Picard MCP 是一个基于 Model Context Protocol (MCP) 标准构建的完整内存管理系统。它由两个主要组件组成:提供安全内存存储和检索服务的 MCP 服务器,以及展示如何与 MCP 服务器集成的 Django 客户端应用程序。该系统使用户能够存储、检索和管理他们的记忆,同时控制访问权限,并允许基于存储的记忆进行语义搜索和 AI 驱动的查询。
此实现遵循 Model Context Protocol 标准,允许 LLM 应用程序以标准化方式与服务器交互。MCP 服务器提供了以下功能:
MCP 服务器:基于 FastAPI 的 Model Context Protocol 实现,提供:
Django 客户端:演示与 MCP 服务器集成的 Web 应用程序:
Picard MCP 系统采用客户端-服务器架构,包含以下组件:
MCP 服务器:处理记忆存储、检索和 AI 操作的核心后端服务
Django 客户端:演示与 MCP 服务器集成的 Web 应用程序
Docker 基础设施:容器化部署,便于设置和扩展
系统提供了两种主要的认证方法:
这种简化的方法允许用户仅通过 Django 客户端进行一次认证,避免了需要单独对 MCP 服务器进行认证的需求:
/api/admin/clients/register 端点在 MCP 服务器上注册/api/user-tokens/user-token端点发起服务器端请求client_id和client_secret)API访问:
Authorization: Bearer {token})安全特性:
系统还支持遵循RFC 6749和RFC 7636标准的标准OAuth 2.0授权码流程与PKCE,以增强安全性。这种方法要求用户同时通过客户端和MCP服务器进行身份验证:
授权流程:
state参数code_verifier,并通过SHA-256导出code_challenge/authorize端点,携带以下参数:
response_type=codeclient_id (UUID格式)redirect_uriscope (空格分隔列表,例如memories:read memories:write)state (用于CSRF保护)code_challenge 和 code_challenge_method=S256)令牌交换:
state参数与授权请求中发送的一致/token端点用授权码换取访问令牌和刷新令牌API访问:
MCP服务器使用SQLAlchemy ORM,其关键模型如下:
用户模型:
is_active, is_superuser)带向量存储的记忆模型:
OAuth模型:
client_id、client_secret、重定向URI和授权范围系统使用Alembic进行数据库迁移,确保模式版本控制和易于更新。
Picard MCP的核心功能围绕记忆管理展开,主要包括以下几个组件:1. 内存存储:
text-embedding-3-small模型生成的向量嵌入,实现了语义搜索功能权限管理:
记忆检索:
大语言模型集成:
OAuth 2.0认证:
memories:read, memories:write, memories:admin)记忆管理:
用户管理:
AI集成:
用户界面:
OAuth客户端实现:
记忆工具:
记忆资源: memories://{memory_id}
用户记忆资源: users://{user_id}/memories
提交记忆工具: 创建新的记忆
更新记忆工具: 更新现有记忆- 参数: memory_id (UUID), text (字符串)
删除记忆工具: 删除一条记忆
查询记忆工具: 对记忆进行语义搜索
查询用户: 根据记忆查询用户的个性
客户端注册: /register
授权: /authorize
令牌交换: /token
通过向量嵌入技术,为项目提供记忆库和RAG上下文支持,以增强代码理解和管理,并与RooCode和Cline集成。
通过全局和分支特定的记忆库,管理跨 Claude AI 会话的项目文档和上下文的服务器,通过结构化的 JSON 文档存储实现一致的知识管理。
快递100 MCP Server提供快递信息查询、快递运费预估比价、快递时效查询(含发货前时效查询与在途动态时效查询)等功能。
一种模型上下文协议服务器,通过在语言模型交互之间高效缓存数据来减少令牌消耗,自动存储和检索信息以最小化冗余令牌使用。
通过集成DeepSeek R1的高级推理引擎以处理复杂推理任务,从而增强Claude推理能力的服务器。
通过简化的SOLID架构,启用提示词的创建、管理和模板化,允许用户按类别组织提示词并在运行时填充模板。