README
🚀 重新整合Stack Overflow与LLM代码工作流的Re-Stack MCP服务器
Re-Stack MCP服务器是一个模型通信协议(MCP)服务器,它借助Stack Exchange API,将Stack Overflow集成到基于大型语言模型(LLM)的编码环境(如Cursor、Windsurf、GPT、Claude等)中。这一整合让开发者能实时获取最新解决方案,恢复Stack Overflow重要的反馈循环,提升编码效率与质量。
🚀 快速开始
Re-Stack MCP服务器旨在解决当前LLM编码环境中存在的问题,通过将Stack Overflow集成进来,为开发者提供实时、准确的解决方案。下面将详细介绍其安装、使用及相关功能。
✨ 主要特性
解决LLMs知识截止问题
LLMs存在知识截止日期,无法实时获取新的Stack Overflow内容,导致建议过时。Re-Stack MCP服务器通过实时访问Stack Overflow,为开发者提供最新的解决方案。
恢复Stack Overflow反馈循环
在LLM出现之前,开发人员会在Stack Overflow上提问并贡献答案,帮助构建全球知识库。如今,许多问题在私下使用AI解决,从未得到文档记录。Re-Stack MCP服务器提示用户在遇到未记录的问题时发布问题,并鼓励开发人员在解决问题后贡献解决方案,恢复重要的反馈循环。
提供多种交互工具
服务器提供多个MCP工具用于与Stack Overflow交互,包括读取操作(如搜索、获取和筛选问题、答案、评论、标签、用户信息等)和写入操作(如发布新问题、提交答案、添加评论、编辑现有帖子等)。
📦 安装指南
先决条件
- Node.js 18+(支持ES2022)
- Stack Exchange API密钥(必需)
- Stack Apps注册(写入访问所需)
设置步骤
# 克隆仓库
git clone https://github.com/jagreetdg/re-stack-mcp.git
cd re-stack-mcp
# 安装依赖项
npm install
# 复制并配置环境变量文件
cp .env.example .env
# 根据需要编辑.env文件中的Stack Exchange API凭证
# 构建项目
npm run build
# 启动服务器
npm start
环境变量配置
STACKEXCHANGE_CLIENT_ID=your_client_id
STACKEXCHANGE_API_KEY=your_api_key
STACKEXCHANGE_SCOPE=write_access,private_info
STACKEXCHANGE_REDIRECT_URI=https://stackexchange.com/oauth/login_success
💻 使用示例
基础用法
const { StackExchange } = require('stackexchange');
const stackExchange = new StackExchange({
client_id: 'your_client_id',
client_secret: 'your_api_key'
});
async function getQuestions() {
try {
const response = await stackExchange.get('questions', { sort: 'newest' });
console.log(response.items);
} catch (error) {
console.error(error.message);
}
}
getQuestions();
此代码示例展示了如何使用Stack Exchange API获取最新的问题列表。
📚 详细文档
功能与工具
读取操作
- 问题:搜索、获取和筛选问题
- 答案:获取特定问题的答案
- 评论:获取帖子的评论
- 标签:浏览和搜索标签
- 用户:获取用户信息
写入操作(需要身份验证)
- 问题:发布新问题
- 答案:提交问题答案
- 评论:添加帖子评论
- 帖子:编辑现有帖子
身份验证
服务器支持Stack Exchange的OAuth 2.0身份验证用于写入操作:
- 在Stack Apps上注册并登录。
- 创建新的应用程序,获取Client ID和API密钥。
- 使用这些凭证配置环境变量文件。
🔧 技术细节
项目结构
src/:核心源代码目录。public/:静态资源和配置文件。package.json:项目依赖项和脚本。
依赖
- Stack Exchange API:用于与Stack Overflow交互。
- Express.js:用于构建服务器端点。
- dotenv:管理环境变量。
- Axios:用于HTTP请求。
开发流程
启动服务器
npm start
构建项目
npm run build
测试
npm test
📄 许可证
[项目许可证信息]
联系方式
- 作者:[你的名字]
- 邮箱:[你的邮箱]
- GitHub:[你的GitHub链接]
让我们一起将Stack Overflow与LLM整合,为未来的编码工作流程贡献力量!🚀
Scan to join WeChat group