使用说明
mcp优化器
市场就绪的Claude Code插件,用于MCP诊断、使用分析、项目范围界定和按需技能转换。
mcp-optimizer 帮助您回答四个不同的问题:
- 我的MCP服务器是否正常?
- 哪些服务器实际上在浪费代币?
- 我应该保留MCP,但将其范围扩大到这个项目吗?
- 我是否应该将重型MCP服务器转换为本地按需技能?
它同时运送:
- 中的显式插件命令
commands/ - 匹配捆绑技能
skills/
每 /mcp-optimizer:* 命令是一个精简的入口点,它委托给相应的捆绑技能,因此工作流逻辑保持在一个地方。
为什么存在
当MCP服务器连接到克劳德码时, 它的工具模式被加载到每个对话中 无论你是否使用它们。
| 场景 | 代币成本 |
|---|---|
| 线性MCP(31个工具) | ~3000+令牌/对话 |
| GitHub MCP(20+工具) | ~2000+令牌/对话 |
| 已连接3台MCP服务器 | ~6500+个令牌/对话 |
| 仅在需要时使用本地技能 | ~0个空闲令牌 |
这造成了三个常见问题:
- 大型MCP模式即使在空闲时也会浪费令牌。
- 损坏或重复的服务器会污染上下文并减慢会话速度。
- 全局MCP配置通常比单个项目所需的范围更广。
安装
来自GitHub(推荐)
-
将此存储库添加为市场。
/plugin marketplace add choam2426/mcp-optimizer -
安装插件。
/plugin install mcp-optimizer -
如果系统提示,请重新启动Claude Code,然后验证安装。
/help
来自另一个市场
如果 mcp-optimizer 包含在现有市场中:
/plugin marketplace add your-org/claude-plugins
/plugin install mcp-optimizer@your-org
组件概览
| 命令 | 类别 | 用于 | 主要输入 | 是否写入文件? |
|---|---|---|---|---|
/mcp-optimizer:mcp-doctor |
诊断 | 检查服务器运行状况、重复项和凭据 | --server, --fix |
没有 |
/mcp-optimizer:mcp-audit |
分析 | 测量实际会话使用中的令牌浪费 | --scope |
没有 |
/mcp-optimizer:mcp-optimize |
优化 | 在本地创建一个较小的项目 .mcp.json |
--dry-run, --min-sessions |
是,确认后 |
/mcp-optimizer:mcp-to-skills |
转换 | 将MCP服务器转换为本地按需技能 | <server-command> |
是,创建 .claude/skills/... |
推荐工作流程
-
从诊断开始:
/mcp-optimizer:mcp-doctor -
服务器健康后,测量实际浪费:
/mcp-optimizer:mcp-audit -
选择适合您目标的执行路径:
-
保留MCP,但仅限于此项目:
/mcp-optimizer:mcp-optimize -
将重型服务器转换为按需本地技能:
/mcp-optimizer:mcp-to-skills npx @linear/mcp-server
-
重要的区别是:
mcp-doctor是一个 诊断命令,而不是优化命令。mcp-audit是一个 分析命令 那个告诉你废物是从哪里来的。mcp-optimize和mcp-to-skills是 实际优化路径.
命令参考
诊断: /mcp-optimizer:mcp-doctor
使用 mcp-doctor 当您想在更改任何内容之前检查MCP服务器运行状况时。
它的作用:
- 测试配置的MCP服务器
- 测量响应时间
- 跨服务器查找重复的工具名称
- 标记丢失或可疑的凭据
- 提出具体的补救措施
命令形式:
/mcp-optimizer:mcp-doctor [--server <name>] [--fix]
论据:
| 参数 | 含义 | 默认值 |
|---|---|---|
--server <name> |
仅检查一个已配置的MCP服务器 | 检查所有已配置的服务器 |
--fix |
在报告中包含具体的补救命令 | 关闭 |
默认行为:
- 作为只读健康检查运行。
- 不会修改您的配置。
- 如果
--fix如果存在,它会建议命令或后续操作,但仍然不会自动编辑任何内容。
期待什么:
- 服务器健康报告
- 响应时间
- 重复工具发现
- 缺少凭据警告
- 推荐下一步,通常
/mcp-optimizer:mcp-audit问题解决后
示例:
/mcp-optimizer:mcp-doctor
/mcp-optimizer:mcp-doctor --server github
/mcp-optimizer:mcp-doctor --fix
分析: /mcp-optimizer:mcp-audit
使用 mcp-audit 在决定保留、删除、限定范围或转换什么之前,您需要有关令牌浪费的证据。
它的作用:
- 读取Claude Code会话历史记录
- 每台服务器架构开销估计
- 显示哪些工具被使用过,哪些工具从未使用过
- 排名优化机会
- 为高浪费服务器建议转换命令
命令形式:
/mcp-optimizer:mcp-audit [--scope project|all]
论据:
| 参数 | 含义 | 默认值 |
|---|---|---|
--scope project |
仅分析当前项目的会话 | 是 |
--scope all |
分析Claude可以检查的所有项目的会话 | 否 |
默认行为:
- 如果没有提供范围,
project使用范围。 - 该命令仅分析可用的会话历史记录。它不会修改配置或生成的技能。
期待什么:
- MCP服务器对令牌浪费进行排名
- 估计废物总量
- 未使用刀具比率
- 建议
/mcp-optimizer:mcp-optimize和/mcp-optimizer:mcp-to-skills
示例:
/mcp-optimizer:mcp-audit
/mcp-optimizer:mcp-audit --scope project
/mcp-optimizer:mcp-audit --scope all
优化: /mcp-optimizer:mcp-optimize
使用 mcp-optimize 当您仍然需要MCP,但不是每个全局服务器都应该加载到此项目中时。
它的作用:
- 分析哪些服务器与当前项目相关
- 建议在当地减少项目
.mcp.json - 估计代币节省
- 仅在确认后写入文件
命令形式:
/mcp-optimizer:mcp-optimize [--dry-run] [--min-sessions <N>]
论据:
| 参数 | 含义 | 默认值 |
|---|---|---|
--dry-run |
无需书写即可显示优化计划 .mcp.json |
安全规划行为 |
--min-sessions <N> |
至少需要 N 在提出更有力的建议之前 |
5 |
默认行为:
- 将优化视为计划优先的工作流程。
- 显示建议
.mcp.json在写作之前。 - 仅在本地写入项目
.mcp.json. - 从不修改全局Claude配置,例如
~/.claude.json.
期待什么:
- 保留/删除每个MCP服务器的推荐
- 每次会议的预计节省
- 完全提议
.mcp.json - 写作前的确认步骤
示例:
/mcp-optimizer:mcp-optimize
/mcp-optimizer:mcp-optimize --dry-run
/mcp-optimizer:mcp-optimize --min-sessions 10
转换: /mcp-optimizer:mcp-to-skills
使用 mcp-to-skills 当服务器有很多工具,但你只需要按需使用其中的几个。
它的作用:
- 检查目标MCP服务器
- 读取工具模式
- 为每个工具生成一个本地克劳德代码技能
- 默认为代理模式,除非本机模式明显更好
命令形式:
/mcp-optimizer:mcp-to-skills <server-command>
论据:
| 参数 | 含义 | 必填 |
|---|---|---|
<server-command> |
用于检查和转换的MCP服务器命令,例如 npx @linear/mcp-server |
是的 |
默认行为:
- 需要一个具体的MCP服务器命令。
- 将生成的本地技能写入
.claude/skills/. - 默认情况下,首选代理模式。
期待什么:
- 检测到的服务名称
- 生成技能目录
- 按工具描述
- 生成技能的自然语言请求示例
示例:
/mcp-optimizer:mcp-to-skills npx @linear/mcp-server
/mcp-optimizer:mcp-to-skills uvx mcp-server-gitlab
指挥与技能
此插件以两种形式公开相同的工作流:
commands/:显式用户调用的命令,如/mcp-optimizer:mcp-auditskills/:捆绑的技能Claude可以从自然语言请求中自动发现
在此存储库中:
- 该命令是公共显式入口点
- 匹配技能是规范的工作流实现
- 该命令将任务委托给匹配的技能,而不是重复指令
这意味着您可以:
- 直接调用该命令,或
- 用自然语言提问,让克劳德发现捆绑的技能
培养当地技能
/mcp-optimizer:mcp-to-skills 培养当地技能 .claude/skills/.
要点:
- 生成的本地技能是 不 命名空间为
/mcp-optimizer:*. - 它们是您的项目或工作树的独立本地技能。
- 当用户用自然语言请求工作流时,Claude应该发现它们。
转换后的请求示例:
List open Linear issues for the Engineering team
示例场景
| 情境 | 开始 | 为什么 |
|---|---|---|
| “我想我的一台MCP服务器坏了” | /mcp-optimizer:mcp-doctor |
优化前诊断健康状况 |
| “我想知道代币浪费从哪里来” | /mcp-optimizer:mcp-audit |
测量实际使用和浪费 |
| “此项目不应加载每个全局MCP服务器” | /mcp-optimizer:mcp-optimize |
保留MCP,但在本地范围内 |
| “这台服务器太重了,但我仍然需要一些工具” | /mcp-optimizer:mcp-to-skills |
将工具转化为本地按需技能 |
要求和注意事项
- Python 3.10+
- Claude Code已安装并正在运行
- 使用时,MCP服务器环境变量必须已经可用
mcp-doctor或mcp-to-skills mcp-audit取决于可用的Claude Code会话历史记录mcp-optimize仅在本地编写项目.mcp.json