Reddit Stash Insights MCP Server
使用说明(Markdown 格式,便于快速上手)
-
项目简介
- 这是一个基于 MCP(Model Context Protocol)的后端服务器,旨在为你本地的 Reddit Stash 数据提供“资源管理、工具调用与提示渲染”的统一仲裁服务。通过 MCP 客户端(如 Claude Code)可调用 reddit_search、reddit_chat 等工具,在对话中获取上下文、执行检索和生成答案。
-
主要功能点
- 暴露 MCP 工具:reddit_search(执行档案内的搜索)、reddit_chat(基于 RAG 的问答)等,供 MCP 客户端调用。
- 通过后端引擎整合:将本地向量搜索、全文检索与 LLM 生产结合,返回可渲染的文本结果和来源信息。
- 支持会话上下文:维护对话历史,提供上下文给 LLM 生成更相关的回答。
- 使用标准的 JSON-RPC 风格响应:服务器端按 MCP 规范接收请求并返回文本内容、来源等信息。
-
安装步骤
- 安装依赖并启用 MCP 功能(示例命令)
- 在项目中启用 MCP 相关特性:pip install reddit-stash-insights[search,chat,mcp]
- 启动 MCP 服务器(推荐方式)
- 使用命令行直接运行:rsi mcp
- 或作为独立进程启动,确保服务器对 Claude Code 等 MCP 客户端可访问的启动方式(详见下方“服务器配置”中的启动命令配置)
- 安装依赖并启用 MCP 功能(示例命令)
-
服务器配置(MCP 客户端需要该信息来连接和交互;给出准确的服务器启动信息,便于配置客户端)
- server name: reddit-stash-insights
- command: ["python", "-m", "rsi.mcp_server"]
- args: [] (无额外参数时保持空数组;如需通过特定入口启动,请按实际部署调整)
- 注释:MCP 客户端通过该 server_name 对应的后端进程建立连接。command 指定启动服务器的命令(此实现通过 Python 模块 rsi.mcp_server 提供 stdio 传输的 MCP 服务)。args 为空表示无需额外参数;若你的部署需要额外环境变量或工作路径,可在 args 中添加。
-
基本使用方法
- 启动后端后,在 MCP 客户端中配置服务器信息,指向 server_name = reddit-stash-insights。
- 调用 reddit_search 工具进行档案检索,传入查询文本和可选的模式、数量等参数。
- 调用 reddit_chat 工具进行基于检索上下文的问答,传入查询文本和可选的上下文限制。
- 客户端将接收文本结果以及来源信息,便于在对话中引用来源。
-
额外说明
- 该实现当前通过 stdio 传输与 MCP 客户端进行通信(较适合 Claude Code 的桌面集成),若未来扩展到 SSE/WebSocket 传输,可相应修改运行入口和客户端配置。
- 如需自定义服务器展示信息或扩展工具,请修改 src/rsi/mcp_server.py 中工具定义和处理逻辑。