反射MCP服务器
用于与PostgreSQL数据库集成的反射日志记录的模型上下文协议(MCP)服务器。该服务器使Claude等人工智能助手能够帮助您维护基于主题分类的个人反思日志。
以现代风格建造 FastMCP 框架和 派丹蒂克 类型安全、结构化输入/输出模型。
特性
资源(只读数据访问)
reflections://all-从你的日记中获取所有反思reflections://recent-获取最近5次反射reflections://id/{id}-通过ID获取特定反射
工具(动作)
add_reflection-添加带有文本和主题的新反射delete_reflection-按ID删除反射
鼓励
daily_reflection-每日日记的指导性提示topic_evaluation-评估和分析过去反思中的主题
先决条件
- Python 3.10+
- PostgreSQL 12+ -本地或远程运行
- 紫外线 -快速Python包安装程序和解析器(安装指南)
安装
1.安装uv(如果尚未安装)
pip install uv2.克隆或导航到项目
cd reflection-mcp3.安装依赖项
uv sync数据库设置
1.配置环境变量
创建一个 .env 包含以下内容的文件(替换为Supabase中的Connection URI):
# .env
DATABASE_URL=postgresql://postgres:postgres@localhost:5432/postgres2.用种子数据初始化数据库
运行SQL种子文件 seed.sql 在Supabase(SQL编辑器)中创建表并用20个示例反射填充它。
运行MCP服务器
启动服务器
uv run python -m src.main服务器将启动并监听MCP协议消息http://localhost:8000/mcp
MCP检验员测试
这 MCP检查员 是用于测试MCP服务器的开发工具。
安装MCP检查器
npx @modelcontextprotocol/inspector测试服务器
npx @modelcontextprotocol/inspector uv run python -m reflection_mcp.server这将打开一个web界面,您可以在其中:
- 浏览可用资源
- 具有不同输入的测试工具
- 试用提示模板
- 检查服务器响应
示例用法
添加反射
You: I want to add a reflection to my journal.
Claude: I'd be happy to help you add a reflection. What would you like to reflect on?
You: Today was challenging but rewarding. I completed a difficult project and learned a lot from the experience.
Claude: [Uses add_reflection tool]
Great! What mood would you say describes how you're feeling? (e.g., happy, accomplished, tired, etc.)
You: accomplished
Claude: [Adds reflection with mood and suggests relevant tags like "work", "learning", "achievement"]查看反射
You: Show me my recent reflections.
Claude: [Reads reflections://recent resource and displays the 5 most recent entries]发展
实施
此服务器使用 FastMCP 框架与 派丹蒂克 结构化数据模型:
@mcp.resource()-使用Pydantic返回类型定义只读数据端点@mcp.tool()-使用Pydantic输入/输出验证创建可执行操作@mcp.prompt()-添加提示模板
主要优点:
- 类型安全:Pydantic模型提供自动验证和类型检查
- 结构化输出:资源和工具返回结构正确、经过验证的数据
- 更好的文档:字段描述自动包含在API架构中
- 清洁代码:从类型提示自动生成架构消除了样板
