Interactive Feedback MCP Server
一个简洁高效的MCP(Model Context Protocol)服务器,为AI助手提供与用户实时交互的能力。
🚀 功能特性
- MCP协议支持: 完整实现MCP协议,提供
ask_user_question
工具
- 实时交互: 基于WebSocket的实时双向通信
- 现代化界面: 响应式Web界面,支持Markdown渲染和代码高亮
- 历史记录: 自动保存问答历史,支持恢复未完成的对话
- 自定义端口: 支持命令行配置端口号
- 文件日志: 所有日志输出到本地文件,便于调试和监控
- 简洁设计: 精简代码,专注核心功能,易于维护
- 优雅关闭: 完善的信号处理和资源清理
📦 安装依赖
npm install
🎯 使用方法
通过 npx 直接运行(推荐)✅
npx mcp-interactive-feedback
npx mcp-interactive-feedback 9000
npx mcp-interactive-feedback --help
直接从GitHub运行
npx github:yourusername/interactive-feedback-mcp
git clone https://github.com/yourusername/interactive-feedback-mcp.git
cd interactive-feedback-mcp
npm install
npm start
npm start 9000
node index.js 9000
本地安装
npm install -g mcp-interactive-feedback-server
mcp-interactive-feedback
mcp-interactive-feedback 9000
从源码运行
git clone https://github.com/yourusername/interactive-feedback-mcp.git
cd interactive-feedback-mcp
npm install
npm start
node index.js 9000
🔧 配置选项
端口号 | 服务器监听的端口号 | 8888 |
--help 或 -h | 显示帮助信息 | - |
🖥️ 界面布局
-
左侧面板(70%): 当前问答区域
- 显示AI提出的问题
- 提供答案输入框
- 支持Markdown格式显示
-
右侧面板(30%): 历史记录区域
🌐 访问界面
启动服务器后,在浏览器中访问:
📝 日志文件
所有服务器日志都会写入到 server.log
文件中,包括:
- 服务器启动/关闭信息
- 客户端连接/断开记录
- 问答交互日志
- 错误信息
tail -f server.log
cat server.log
📝 MCP工具
ask_user_question
向用户提出问题并等待回答。
参数:
question
(string): 要向用户提出的问题
返回:
示例:
{
"name": "ask_user_question",
"arguments": {
"question": "您希望使用哪种编程语言来实现这个功能?"
}
}
🧪 测试
运行手动测试脚本:
node manual-test.js
📁 项目结构
interactive-mcp/
├── index.js # 主服务器文件(简化版)
├── package.json # 项目配置
├── server.log # 服务器日志文件
├── qa_history.json # 问答历史记录
├── manual-test.js # 手动测试脚本
├── public/ # 前端静态文件
│ ├── index.html # 主界面
│ └── libs/ # 第三方库
└── temp_images/ # 临时图片目录
🔒 安全特性
- 自动端口绑定检测
- 优雅关闭处理(SIGINT、SIGTERM)
- 未捕获异常处理
- WebSocket连接状态监控
- 数据持久化保护
📄 许可证
MIT License
🤝 贡献
欢迎提交Issue和Pull Request!