🤖 AI Logger MCP Server
一个功能强大的 MCP (Model Context Protocol) 服务器,用于记录和管理所有 AI 交互历史,包括对话、代码生成等。配备直观的 Web 界面,让你可以轻松查看、搜索和分析所有记录。
✨ 功能特点
- 📝 自动记录 - 记录每次 AI 交互的详细信息
- 💻 代码追踪 - 特别记录生成的代码片段和编程语言
- 🔍 强大搜索 - 快速搜索历史记录
- 📊 统计分析 - 查看交互类型、语言分布等统计数据
- 🌐 Web 界面 - 美观的浏览器界面,实时查看所有记录
- 🏷️ 标签系统 - 使用标签分类和组织记录
- 📤 数据导出 - 导出为 JSON 格式便于分析
🚀 快速开始
1. 安装依赖
pip install -r requirements.txt2. 配置 Claude Desktop
在 Claude Desktop 的配置文件中添加 MCP 服务器配置:
macOS/Linux: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"ai-logger": {
"command": "python",
"args": ["/path/to/ai_logger_mcp.py"]
}
}
}将 /path/to/ai_logger_mcp.py 替换为实际的文件路径。
3. 重启 Claude Desktop
配置完成后,重启 Claude Desktop 使配置生效。
4. 启动 Web 界面(可选)
python ai_logger_web.py然后在浏览器中访问: http://localhost:5000
📖 使用指南
MCP 工具使用
在 Claude 对话中,可以使用以下工具:
1. 记录交互 (log_interaction)
记录一次 AI 交互:
请记录这次对话:
- 用户输入: "如何实现用户登录功能"
- AI 响应: "你可以使用 JWT 进行身份验证..."
- 类型: conversation记录代码生成:
请记录这次代码生成:
- 用户输入: "写一个快速排序算法"
- AI 响应: "以下是 Python 实现..."
- 类型: code_generation
- 代码: def quick_sort(arr): ...
- 语言: python
- 标签: ["算法", "排序"]2. 查看最近记录 (get_recent_logs)
显示最近 20 条记录只看代码生成记录:
显示最近的代码生成记录3. 搜索记录 (search_logs)
搜索包含 "登录" 的记录搜索 Python 相关的记录4. 查看统计 (get_statistics)
显示交互统计信息5. 获取 Web 界面地址 (get_web_ui_url)
如何访问 Web 界面?Web 界面功能
- 查看列表 - 浏览所有交互记录
- 实时搜索 - 输入关键词即时过滤
- 类型筛选 - 按交互类型筛选(对话/代码生成/函数调用/其他)
- 统计面板 - 查看总记录数、今日记录、各类型分布
- 导出数据 - 一键导出所有记录为 JSON 文件
- 自动刷新 - 每 30 秒自动更新数据
📂 数据存储
所有记录保存在:~/.ai_logger/logs/interactions.jsonl
每条记录的 JSON 格式:
{
"id": "20250422_143020_123456",
"timestamp": "2025-04-22T14:30:20.123456",
"interaction_type": "code_generation",
"user_input": "写一个斐波那契数列函数",
"ai_response": "以下是 Python 实现...",
"code_snippet": "def fibonacci(n):\n ...",
"language": "python",
"tags": ["算法", "递归"],
"metadata": {}
}🎯 使用场景
1. 代码学习追踪
记录每次让 AI 生成代码的过程,建立个人代码知识库:
我想让你帮我生成一个 React 组件,并记录下来:
[生成代码后]
请记录这次代码生成,标签添加: ["React", "组件", "前端"]2. 问题解决历程
记录解决问题的完整对话链:
[解决问题的多轮对话后]
请把我们刚才关于数据库优化的对话都记录下来3. 学习笔记整理
定期查看历史记录,回顾学习内容:
显示最近一周的所有 Python 相关记录4. 项目开发追踪
为特定项目添加标签,方便后续检索:
记录这次代码生成,标签: ["项目X", "后端", "API开发"]🔧 高级配置
自定义存储位置
修改 ai_logger_mcp.py 和 ai_logger_web.py 中的:
LOG_DIR = Path.home() / ".ai_logger" / "logs"修改字符限制
默认限制为 10,000 字符,可修改:
CHARACTER_LIMIT = 10000 # 改为你想要的值修改 Web 端口
默认端口为 5000,可修改 ai_logger_web.py 末尾:
app.run(host='0.0.0.0', port=5000, debug=True) # 改为其他端口🛠️ 技术栈
- MCP 服务器: Python + FastMCP
- 数据验证: Pydantic
- Web 框架: Flask
- 数据存储: JSONL (JSON Lines)
- 前端: 原生 HTML/CSS/JavaScript
📊 项目结构
ai-logger-mcp/
├── ai_logger_mcp.py # MCP 服务器主文件
├── ai_logger_web.py # Web 界面服务器
├── requirements.txt # Python 依赖
└── README.md # 本文档
数据目录:
~/.ai_logger/
└── logs/
└── interactions.jsonl # 所有记录数据🤝 贡献
欢迎提交 Issue 和 Pull Request!
📄 许可
MIT License
🔗 相关链接
💡 提示
- 定期备份 - 记录文件保存在
~/.ai_logger/logs/目录,建议定期备份 - 性能优化 - 如果记录过多(>10000 条),考虑定期归档旧记录
- 隐私保护 - 记录包含所有对话内容,注意保护敏感信息
- 标签规范 - 建立统一的标签命名规范,便于后续检索
❓ 常见问题
Q: MCP 服务器无法启动?
A: 检查 Python 版本(需要 3.10+)和依赖是否正确安装。
Q: Web 界面打不开?
A: 确保 Flask 服务器正在运行,检查端口 5000 是否被占用。
Q: 记录没有保存?
A: 检查 ~/.ai_logger/logs/ 目录权限,确保有写入权限。
Q: 如何清空所有记录?
A: 删除 ~/.ai_logger/logs/interactions.jsonl 文件即可。
享受使用 AI Logger! 如有问题或建议,欢迎反馈。
