热榜都在吹 MCP Skills 万能,我搭了个 AI Agent 才发现最大的坑不是 Skill

最近打开掘金,满屏都是 MCP Skills 🔥

什么"10万人都在用的 top10 skills",什么"一句话生成整套 API"......说实话,看得我手痒。

我是个独立开发者,一直想给自己搭一个 AI Agent------不是那种对话机器人,是真正能帮我干活的 Agent:能读文档、能搜网页、能调不同的大模型做不同的事。

上周末终于动手了。踩的坑比想象中多得多,而且最大的坑根本不在 MCP 这层

先说需求:我想要什么样的 Agent

我的目标很明确:

  1. 用 MCP 把工具串起来(读飞书文档、搜索网页、操作数据库)
  2. 不同任务用不同模型(代码生成用 Claude,摘要用 GPT-4o-mini 省钱,中文理解用 DeepSeek)
  3. 整个 Agent 要能自主决策调哪个模型

看起来很简单对吧?MCP + Skills + 几个 API 就完事了。

哈哈哈哈,太天真了 😅

第一个坑:MCP Skill 写起来没那么丝滑

热榜文章把 MCP Skill 吹得跟写 README 一样简单。实际上......

yaml 复制代码
# 我以为的 Skill
name: doc-reader
description: 读取文档并总结

# 实际的 Skill(省略了一堆配置)
name: doc-reader
description: |
  读取指定 URL 的文档内容,支持 HTML/PDF/Markdown。
  输出结构化摘要,包含:标题、核心内容、关键数据。
  如果文档超过 8000 token,先分块再合并摘要。
tools:
  - web_fetch
  - file_read
input_schema:
  type: object
  properties:
    url:
      type: string
      description: 文档 URL
    format:
      type: string
      enum: [summary, full, key_points]

Skill 本身不难写,但调试 是真的烦。MCP 的错误信息很不友好,经常就一个 tool_call_failed,连哪里挂了都不告诉你。

我的建议:先在本地把每个 tool 单独跑通,再组装成 Skill。别上来就写一个大的。

第二个坑(也是最大的坑):多模型调用的地狱

Agent 跑起来了,Skill 也串好了。然后我发现了真正的问题------

我需要同时调 3 个不同厂商的大模型 API。

  • Claude Opus 4.6:写代码、复杂推理 → Anthropic API
  • GPT-4o-mini:轻量摘要、分类 → OpenAI API
  • DeepSeek V3:中文语义理解 → DeepSeek API

三个厂商,三套 SDK,三种认证方式,三个不同的 rate limit 策略。

python 复制代码
# 我最初的代码,看着就头疼
import anthropic
import openai
from openai import OpenAI as DeepSeekClient

# Claude
claude = anthropic.Anthropic(api_key=os.getenv("ANTHROPIC_API_KEY"))

# GPT
gpt = openai.OpenAI(api_key=os.getenv("OPENAI_API_KEY"))

# DeepSeek(用 OpenAI 兼容格式)
ds = DeepSeekClient(
    api_key=os.getenv("DEEPSEEK_API_KEY"),
    base_url="https://api.deepseek.com/v1"
)

def ask_model(task_type, prompt):
    if task_type == "code":
        # Claude 的消息格式和 OpenAI 不一样...
        resp = claude.messages.create(
            model="claude-opus-4-6-20250929",
            messages=[{"role": "user", "content": prompt}],
            max_tokens=4096
        )
        return resp.content[0].text
    elif task_type == "summary":
        resp = gpt.chat.completions.create(
            model="gpt-4o-mini",
            messages=[{"role": "user", "content": prompt}]
        )
        return resp.choices[0].message.content
    elif task_type == "chinese":
        resp = ds.chat.completions.create(
            model="deepseek-chat",
            messages=[{"role": "user", "content": prompt}]
        )
        return resp.choices[0].message.content

这代码能跑,但问题一堆:

  1. 三套错误处理 :Claude 返回 overloaded_error,OpenAI 返回 RateLimitError,DeepSeek 有时候直接超时。每个都得单独 catch
  2. Key 管理噩梦:3 个 API key,3 个账单页面,3 个用量监控
  3. 国内访问:Claude 和 OpenAI 在国内都不太稳定,经常超时。DeepSeek 倒是快,但不是所有任务都适合

我为了搞定网络问题,先后试了:

  • 自建代理 → 延迟不稳定,维护麻烦
  • 用 Cloudflare Workers 中转 → 有 CPU 时间限制,SSE 流式输出经常断
  • 直接买了个香港 VPS → 又多了一个要维护的东西 💀

折腾了两天,Agent 的核心逻辑 1 小时就写完了,80% 的时间都在跟 API 接入较劲

转折:一个 base_url 解决的问题

后来在 V2EX 看到有人提了一嘴 API 聚合平台的思路,大意是一个 endpoint 搞定所有模型

研究了一圈,发现现在做这个的还不少。我最后选了一个叫 ofox.ai 的,原因很简单:

  1. OpenAI 格式兼容 --- 只要改一个 base_url,代码几乎不用动
  2. 国内直连,不用翻墙 --- 阿里云/火山云节点,延迟比我自建代理还低
  3. 50+ 模型一个 key --- Claude、GPT、Gemini、DeepSeek 全有

改完之后的代码:

python 复制代码
from openai import OpenAI

# 一个 client 搞定所有模型
client = OpenAI(
    api_key=os.getenv("OFOX_KEY"),
    base_url="https://api.ofox.ai/v1"
)

def ask_model(task_type, prompt):
    model_map = {
        "code": "claude-opus-4-6-20250929",
        "summary": "gpt-4o-mini",
        "chinese": "deepseek-chat",
    }

    resp = client.chat.completions.create(
        model=model_map[task_type],
        messages=[{"role": "user", "content": prompt}],
        stream=True  # 流式输出也正常
    )

    result = ""
    for chunk in resp:
        if chunk.choices[0].delta.content:
            result += chunk.choices[0].delta.content
    return result

从 30 行变成 15 行,三套 SDK 变成一套,三个 key 变成一个。

延迟实测对比(北京,单位 ms):

模型 直连官方 自建代理 聚合平台
Claude Opus 4.6 超时 ❌ ~3200 ~1800
GPT-4o-mini 超时 ❌ ~1100 ~650
DeepSeek V3 ~400 ~400 ~380

国产模型差距不大,但海外模型的差距是真的明显。不用自己折腾网络这一点就值了。

最终效果:Agent 跑起来了

MCP Skill + 多模型 Agent 的最终架构很简单:

scss 复制代码
用户输入
  ↓
MCP Router(根据意图选择 Skill)
  ↓
┌─────────────┬──────────────┬─────────────┐
│ doc-reader   │ code-gen     │ data-query  │
│ (GPT-4o-mini)│ (Claude)     │ (DeepSeek)  │
└─────────────┴──────────────┴─────────────┘
  ↓              ↓              ↓
  统一 API 层(一个 endpoint,一个 key)

跑了一周,稳定性还不错。Agent 能根据任务自动选模型,成本也控制住了------轻量任务走便宜模型,重活才上 Claude/GPT。

总结:MCP 不是银弹,API 层才是基建

掘金热榜把 MCP Skills 吹上天了,但实际搭 Agent 你会发现:

  1. MCP Skill 本身不难,难的是调试和组合
  2. 多模型调用才是真正的基建问题 --- 如果你的 Agent 只调一个模型,那随便搞。但凡要用 2 个以上,API 管理就变成大坑
  3. 别自己造网络轮子 --- 自建代理、VPS 中转这些路我都走过,ROI 太低。能花钱解决的问题就别花时间

给同样在搞 AI Agent 开发的朋友一个建议:先把 API 层搞定,再去折腾 MCP 和 Skill。地基不稳,上层建筑盖得再花哨也白搭。


如果你也在搞 Agent 或者 MCP 相关的东西,评论区聊聊你踩过什么坑?🤔

相关推荐
苡~4 小时前
【claude skill系列 - 10】Claude_Skill全栈实战_从0到1构建个人AI助手
人工智能·ai编程·api 中转站·稳定ai编程工具
孟健5 小时前
AI 编程的临界点:当三家巨头同时宣布我们不写代码了
aigc·ai编程
玹外之音5 小时前
IDEA + Codex · 32ai 零魔法直连各模型
openai·ai编程
李同学Lino5 小时前
【保姆级教程】Claude Code 进阶指南:用 Everything Claude Code 打造更有“记忆”的 AI 程序员
ai编程
猫头虎6 小时前
【汉化中文版】OpenClaw(Clawdbot/Moltbot)第三方开源汉化中文发行版部署全指南:一键脚本/Docker/npm 三模式安装+Ubuntu 环境配置+中文汉化界面适配开源版
docker·npm·开源·aigc·ai编程·远程工作·openclaw
秒云6 小时前
MIAOYUN | 每周AI新鲜事儿 260212
人工智能·语言模型·aigc·ai编程
一条咸鱼_SaltyFish7 小时前
AI编程实战:从方法论到团队协作的完整路径
团队开发·ai编程·方法论
HUHA8 小时前
我一个后端,用AI做了个导航页,发现开发模式真的变了
ai编程
水木姚姚9 小时前
AI编程画马(含AI辅助创作)
人工智能·ai编程