BIP 监控 MCP 服务器
一个模型上下文协议(MCP)服务器,用于监控Next.js开发服务器,具备智能错误分类、智能诊断和性能追踪功能。
特点/特性
- 🔍 智能错误分类自动将错误分类为语法错误、运行时错误、构建错误、依赖问题和端口问题
- 💡 智能修复建议为每种错误类别提供可操作的修复建议
- 📊 性能追踪监控编译时间和构建性能指标
- 💾 持久化日志记录错误在不同会话中持续存在
~/.bip-monitor/ - 🔄 实时监控实时开发服务器监控,捕获标准输出/标准错误输出
- 📡 MCP 资源通过标准化的MCP资源访问错误和状态
- 🛠️ MCP 工具程序化控制开发服务器并查询错误
安装
对于Claude的代码命令行界面(CLI)
如果你的项目有 .mcp.json 文件,添加服务器配置:
{
"mcpServers": {
"bip-monitor": {
"command": "npx",
"args": ["-y", "bip-monitor-mcp"]
}
}
}或者在您的项目中本地安装:
npm install bip-monitor-mcp然后进行配置 .mcp.json:
{
"mcpServers": {
"bip-monitor": {
"command": "node",
"args": ["node_modules/bip-monitor-mcp/index.js"]
}
}
}对于Claude Desktop
在您的Claude桌面配置中添加:
macOS(苹果电脑操作系统): ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"bip-monitor": {
"command": "npx",
"args": ["-y", "bip-monitor-mcp"]
}
}
}重启Claude桌面以加载服务器。
MCP资源公司
服务器提供了以下资源:
bip://errors/recent
返回最后50个错误,包含分类和汇总统计信息。
{
"count": 10,
"errors": [...],
"summary": {
"syntax": 3,
"runtime": 2,
"build": 1,
"dependency": 0,
"port": 0
}
}bip://app/status
返回当前开发服务器的状态,包括运行时长和错误计数。
{
"status": "running",
"pid": 12345,
"startTime": 1699564800000,
"errorCount": 10,
"lastError": {...},
"uptime": 300000
}bip://logs/full
返回来自标准输出/标准错误日志的最后100行。如需更多控制,请使用 get_logs 工具。
bip://performance/metrics
返回性能指标,包括编译时间。
{
"lastCompileTime": 142,
"avgCompileTime": 156,
"compileTimes": [150, 142, 160, ...]
}MCP 工具
start_dev_server
启动并监控 Next.js 开发服务器。
参数:
cwd(字符串,必填):应用程序的工作目录
示例:
{
"name": "start_dev_server",
"arguments": {
"cwd": "/path/to/your/nextjs/app"
}
}get_errors
获取最近的错误,并可选择性地进行过滤。
参数:
limit(数字,默认值:10):要返回的错误数量category(字符串,默认: "all"):按类别过滤(语法|运行时|构建|依赖|端口|全部)
get_status
获取当前开发服务器的状态。
clear_errors
清除错误日志。
stop_dev_server
停止正在运行的开发服务器。
get_logs
使用灵活选项获取应用程序日志。
参数:
lines(数字,默认:100,最大:2000):从日志末尾返回的行数filter(字符串,可选):仅返回包含此文本的行(不区分大小写)
示例:
"Get the last 500 lines of logs"
"Get logs filtered by 'error' keyword"
"Get 1000 lines containing 'compile'"错误类别
| 类别 | 触发器 | 建议 | |
|---|---|---|---|
| 端口 | EADDRINUSE端口已被使用 | `lsof -ti:3000 \ | xargs kill -9` |
| 语法 | TypeScript/JSX 语法错误 | 指向确切的文件:行号 | |
| 依赖性 | 模块未找到错误 | pnpm install 或者 npm install | |
| 构建 | Next.js 构建失败 | rm -rf .next && pnpm dev | |
| 运行时 | 运行时异常 | 检查堆栈跟踪 |
日志文件
所有日志均存储在 ~/.bip-monitor/:
- errors.jsonl(文件名,可译为“错误信息.jsonl”或保持原样,具体根据上下文决定是否需要翻译文件名)JSON Lines格式中的最后100个错误
- app.log(应用程序日志)来自开发服务器的完整标准输出/标准错误(通过
get_logs工具) - performance.json(性能数据文件)编译时指标和性能数据
注: 使用 get_logs 工具,用于检索日志,支持自定义行数限制(最多2000行)和可选的文本过滤功能。
使用示例
使用 Claude Code CLI
Read bip://errors/recent使用Claude API
const resource = await client.readResource('bip://errors/recent');
console.log(resource.contents[0].text);查询错误
Use get_errors tool with limit=5 and category="syntax"启动开发服务器
Use start_dev_server with cwd="/Users/you/dev/my-nextjs-app"获取日志
Use get_logs with lines=500
Use get_logs with lines=1000 and filter="error"
Use get_logs with filter="compile"发展
从源代码构建
git clone https://github.com/The-Bip-App/bip-monitor-mcp.git
cd bip-monitor-mcp
npm install本地运行
node index.js服务器通过stdio使用MCP协议进行通信。
要求
- Node.js >= 18.0.0
- 使用Next.js的项目
pnpm dev或者npm dev剧本;脚本
许可证
麻省理工学院(MIT)
做出贡献
欢迎贡献!请提交问题或拉取请求。
支持
对于问题、疑问或功能请求,请在GitHub上提交一个议题。
