MCP监视器
模型上下文协议(MCP)服务器的完整可观察性解决方案
一个全栈监控平台,为MCP服务器提供实时洞察、指标收集和日志聚合。使用受OpenTetry启发的Python SDK和现代Next.js仪表板构建。
概述
MCP监视器由三个主要组件组成:
- 开发包 -MCP服务器监控SDK
- 网络仪表盘 -用于可视化和管理的实时仪表板
- 演示服务器 -示例实现
特性
- FastMCP和标准MCP的框架支持
- 多个导出器(HTTP、控制台、复合、NoOp)
- stdio和HTTP I/O的传输监控
- 通过MCP通知捕获日志
- 实时指标仪表板
- 服务器管理和分析
- API密钥管理和认证
快速开始
1.安装SDK
cd sdk/mcp-monitor-sdk
pip install httpx2.检测您的MCP服务器
from mcp_monitor import FastMCPMonitor
from mcp_monitor.sdk.exporters import HTTPExporter
from fastmcp import FastMCP
monitor = FastMCPMonitor(
exporter=HTTPExporter(api_key="your-api-key")
)
mcp = FastMCP("my-server")
monitor.instrument(mcp)
@mcp.tool()
async def my_tool(x: int) -> int:
return x * 23.设置仪表板
cd web-app
npm install
npm run dev打开 http://localhost:3000 查看您的仪表板。
使用示例
基本FastMCP监控
from mcp_monitor import FastMCPMonitor
from mcp_monitor.sdk.exporters import ConsoleExporter
from fastmcp import FastMCP
monitor = FastMCPMonitor(exporter=ConsoleExporter())
mcp = FastMCP("server")
monitor.instrument(mcp)
@mcp.tool()
async def calculate(a: int, b: int) -> int:
return a + b生产设置
from mcp_monitor import FastMCPMonitor
from mcp_monitor.sdk.exporters import HTTPExporter, CompositeExporter, ConsoleExporter
monitor = FastMCPMonitor(
exporter=CompositeExporter([
HTTPExporter(api_key="your-api-key"),
ConsoleExporter()
]),
batch_size=10,
flush_interval=5.0
)标准MCP支持
from mcp_monitor import MCPMonitor
from mcp_monitor.sdk.exporters import ConsoleExporter
monitor = MCPMonitor(exporter=ConsoleExporter())
server = YourMCPServer()
monitor.instrument(server)出口商
- HTTP导出器 -将指标发送到仪表板API
- 控制台导出器 -将指标记录到控制台以供开发
- 复合材料出口商 -同时发送到多个后端
- NoOpExporter -以零开销禁用监控
项目结构
mcp-monitor/
├── sdk/
│ ├── mcp-monitor-sdk/ # Python monitoring SDK
│ └── demo-mcp-server/ # Example MCP servers
└── web-app/ # Next.js dashboard环境变量
仪表盘
创建 .env.local 归档 web-app/:
NEXT_PUBLIC_SUPABASE_URL=your-supabase-url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your-supabase-anon-key发展
SDK开发
cd sdk/mcp-monitor-sdk
pip install -e ".[dev]"
pytest仪表板开发
cd web-app
npm install
npm run dev许可证
MIT许可证
