使用说明
MCP令牌分析器
一个强大的CLI工具,用于分析令牌使用情况和成本影响 模型上下文协议(MCP) 服务器。
🎯 这是什么?
MCP服务器向AI助手公开工具、资源和提示。其中每一个都会将令牌添加到您的上下文窗口中,这意味着:
- 成本增加 -代币越多=API账单越高
- 上下文限制 -来自MCP服务器的令牌将计入模型的上下文窗口
- 性能影响 -较大的上下文可能会减缓推理速度
此工具可帮助您 准确了解有多少代币 您的MCP服务器添加和 要花多少钱 跨不同的AI提供商。
✨ 特性
- 🔍 分析任何MCP服务器 -支持stdio传输(SSE即将推出)
- 📊 详细的代币细分 -按工具、资源和提示查看令牌
- 💰 成本估算 -计算OpenAI、Anthropic、谷歌等的成本
- 🎨 漂亮的CLI输出 -具有表格和颜色的丰富终端UI
- 📤 导出选项 -将结果保存为JSON以供进一步分析
- 🐍 纯Python -适用于Linux、macOS和Windows
📦 安装
独立脚本(最简单)
下载并运行-无需安装:
curl -O https://raw.githubusercontent.com/yourusername/mcp-token-analyzer/main/mcp-analyze.py
python3 mcp-analyze.py npx @modelcontextprotocol/server-filesystem /tmp
第一次运行时,脚本会自动设置一个虚拟环境(一次性设置约10秒)。
来自PyPI(发布时)
pip install mcp-token-analyzer
来源
git clone https://github.com/yourusername/mcp-token-analyzer.git
cd mcp-token-analyzer
pip install -e .
开发安装
git clone https://github.com/yourusername/mcp-token-analyzer.git
cd mcp-token-analyzer
pip install -e ".[dev]"
🚀 快速开始
分析一个流行的MCP服务器:
python3 mcp-analyze.py npx shadcn-ui-mcp-server
使用参数分析文件系统服务器:
python3 mcp-analyze.py npx @modelcontextprotocol/server-filesystem /tmp
显示每个项目的详细细分:
python3 mcp-analyze.py npx shadcn-ui-mcp-server --detailed
将结果导出为JSON格式:
python3 mcp-analyze.py npx server-name --json > results.json
将结果保存到文件:
python3 mcp-analyze.py npx server-name --save results.json
📖 用法
基本分析
python3 mcp-analyze.py <command> [args...]
例子:
python3 mcp-analyze.py npx @modelcontextprotocol/server-memory
输出:
╭─────────────────────────────────────────────────╮
│ 📊 Token Summary │
├─────────────────────────────────────────────────┤
│ Total Tokens 1,234 │
│ Tools 800 │
│ Resources 234 │
│ Prompts 200 │
╰─────────────────────────────────────────────────╯
💰 Cost Impact (per API call)
OpenAI
┌────────────────┬─────────────┬──────────────┐
│ Model │ Input Cost │ Output Cost │
├────────────────┼─────────────┼──────────────┤
│ GPT-4o │ $0.0031 │ $0.0123 │
│ GPT-4o mini │ $0.0002 │ $0.0007 │
│ GPT-4 Turbo │ $0.0123 │ $0.0370 │
└────────────────┴─────────────┴──────────────┘
选项
--detailed,-d-显示每个项目的详细细分--json-以JSON格式输出结果--save <file>,-s <file>-将结果保存到文件--version,-v-显示版本并退出--help-显示帮助消息
测试本地MCP服务器
您可以通过指定运行命令来分析任何MCP服务器:
# Python MCP server
python3 mcp-analyze.py python path/to/your_server.py
# Python MCP server with uv
python3 mcp-analyze.py uv run your-mcp-server
# Node.js MCP server
python3 mcp-analyze.py node path/to/server.js
# TS MCP server
python3 mcp-analyze.py npx tsx ~/MCP/src/index.ts
# Any executable MCP server
python3 mcp-analyze.py ./my-mcp-server --some-arg
示例
用详细的输出进行分析:
python3 mcp-analyze.py npx shadcn-ui-mcp-server --detailed
将分析保存为JSON格式:
python3 mcp-analyze.py npx server-name --json --save analysis.json
分析GitHub MCP服务器:
python3 mcp-analyze.py npx @modelcontextprotocol/server-github
🔧 程序化使用
您还可以将分析器用作Python库:
import asyncio
from mcp_analyzer import MCPAnalyzer, TransportConfig
async def main():
# Create analyzer
analyzer = MCPAnalyzer()
# Configure transport
config = TransportConfig(
type="stdio",
command="npx",
args=["shadcn-ui-mcp-server"]
)
# Run analysis
result = await analyzer.analyze(config)
print(f"Total tokens: {result.total_tokens}")
print(f"Tools: {result.breakdown.tools}")
print(f"Resources: {result.breakdown.resources}")
print(f"Prompts: {result.breakdown.prompts}")
asyncio.run(main())
成本计算
from mcp_analyzer import calculate_all_costs, format_cost
# Calculate costs for 1000 tokens
estimates = calculate_all_costs(1000)
for estimate in estimates:
print(f"{estimate.provider} - {estimate.model_name}:")
print(f" Input: {format_cost(estimate.input_cost)}")
print(f" Output: {format_cost(estimate.output_cost)}")
🏗️ 运作原理
- 连接到MCP服务器 -使用官方MCP Python SDK通过stdio连接
- 列出所有项目 -检索服务器公开的所有工具、资源和提示
- 计算代币 -使用tiktoken(OpenAI的标记器)计算每个项目的标记
- 估计成本 -根据主要供应商的当前定价计算成本
🤝 贡献
欢迎投稿!以下是如何开始:
- 复刻仓库
- 创建要素分支(
git checkout -b feature/amazing-feature) - 进行更改
- 运行测试(
pytest) - 格式代码(
black . && ruff check .) - 提交您的更改(
git commit -m 'Add amazing feature') - 推到分支(
git push origin feature/amazing-feature) - 打开拉取请求
开发设置
# Clone the repo
git clone https://github.com/yourusername/mcp-token-analyzer.git
cd mcp-token-analyzer
# Install dev dependencies
pip install -e ".[dev]"
# Run tests
pytest
# Format code
black .
ruff check .
# Type check
mypy mcp_analyzer
📝 定价数据
定价基于当前费率(截至2025年11月):
- OpenAI:GPT-5.1、GPT-5迷你、GPT-5-纳米、GPT-4o、o1
- Anthropic:克劳德十四行诗4.5,克劳德作品4.5,克劳德俳句3.5
- 谷歌:双子座2.5 Pro、双子座2.5 Flash、双子座3 Pro
定价数据保存在 mcp_analyzer/cost.py (或直接在 mcp-analyze.py 对于独立脚本)。
🛣️ 路线图
- []苏格兰和南方能源公司运输支持
- []用于分析的Web UI
- []代币可视化图表
- []历史成本跟踪
- []比较模式(比较多台服务器)
- []自定义定价配置文件
- []与流行的AI框架集成
📄 许可证
此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。
🙏 致谢
- 与 MCP Python SDK
- 代币计数由 令牌。
- CLI构建于 类型 和 富有的
🔗 链接
💬 支持
- 打开一个 问题 用于错误报告或功能请求
- 如果你觉得这个项目有用,就给它标上星号!
由...制作❤️ 面向人工智能开发社区
