ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

10 分钟用 TaoToken 跑通 MCP server:Claude Code 的第一次工具调用

10 分钟用 TaoToken 跑通 MCP server:Claude Code 的第一次工具调用 告别海外账号与网络限制稳定直连全球优质大模型限时半价接入中。 点击领取海量免费额度1. 目标与产物让 Claude Code 完成第一次 MCP 工具调用这篇快速上手的目标很具体在 10 分钟内让 Claude Code 通过 TaoToken 接入一个本地 stdio MCP server成功触发一次工具调用并把这次调用消耗的 token 数记录下来同时确认请求确实走了https://taotoken.net/api这个地址而不是别的中转或本地代理。TaoToken 在这里扮演的角色是 Claude Code 的默认供应商你在官网创建 API Key然后把 Claude Code 的ANTHROPIC_BASE_URL指向 TaoToken 的 API 地址模型请求就会经由 TaoToken 转发。MCP server 本身仍然跑在你本机通过 stdio 与 Claude Code 通信所以整条链路是「Claude Code → TaoToken API → 模型 → 回到 Claude Code → 调用本地 MCP 工具」。可复现的产物有四样一份settings.json环境变量片段包含ANTHROPIC_BASE_URL和ANTHROPIC_AUTH_TOKEN一条启动 Claude Code 的命令第一次 tool call 的日志摘录这次调用对应的 token 计数。下面按「先拿 Key、再写配置、再跑通、最后验证」的顺序展开。如果你还没有 Key可以先到 TaoToken 官网 注册并创建具体入口在 API Keys 页面。2. 操作步骤拿 Key、装 CLI、写配置2.1 创建 API Key登录 TaoToken 后进入控制台在 API Keys 页面新建一个 Key。建议按用途命名比如claude-code-mcp-test方便后续在用量页面对照这次实验的消耗。Key 只在创建时完整显示一次复制后先存到本地密码管理器或临时环境变量里。这一步不需要改任何 Base URL也不需要手动拼 endpoint。TaoToken 的 API 根地址就是https://taotoken.net/apiClaude Code 会在这个根地址上按 Anthropic 协议追加路径。2.2 安装 TaoToken CLI可选但推荐如果你希望用一条命令拉起 Claude Code 并自动注入供应商配置可以安装官方 CLInpm i -g taotoken/taotoken安装完成后用下面这条命令启动 Claude Codetaotoken cc -k YOUR_API_KEY -u https://taotoken.net/api -m MODEL_ID其中-k是刚创建的 Key-u是 TaoToken API 根地址-m是你要使用的模型 ID。模型 ID 以官网当前提供的列表为准不同时间可选的模型可能不同。CLI 会帮你把环境变量和启动参数准备好适合不想手写配置的场景。2.3 手写 settings.json 环境变量片段如果你更希望把配置固化到项目或用户级settings.json可以手动写入下面这段。Claude Code 读取的是ANTHROPIC_*系列环境变量{ env: { ANTHROPIC_BASE_URL: https://taotoken.net/api, ANTHROPIC_AUTH_TOKEN: YOUR_API_KEY, ANTHROPIC_MODEL: MODEL_ID, ANTHROPIC_SMALL_FAST_MODEL: MODEL_ID } }把YOUR_API_KEY换成你自己的 KeyMODEL_ID换成官网当前可用的模型 ID。ANTHROPIC_SMALL_FAST_MODEL用于轻量任务可以和主模型一致也可以选更便宜的型号。如果你使用 Codex 而不是 Claude Code对应的配置文件是config.toml字段名和结构不同需要按 Codex 的供应商配置写法填写base_url和api_key。本文聚焦 Claude CodeCodex 的写法可以参考 接入文档。2.4 准备一个本地 stdio MCP serverMCP server 用一个最小可用的 stdio 示例即可。下面是一个 Node.js 写的简单 server暴露一个echo工具接收text参数并原样返回// mcp-echo-server.js const readline require(readline); const rl readline.createInterface({ input: process.stdin, output: process.stdout, terminal: false, }); function send(msg) { process.stdout.write(JSON.stringify(msg) \n); } rl.on(line, (line) { let req; try { req JSON.parse(line); } catch { return; } if (req.method initialize) { send({ jsonrpc: 2.0, id: req.id, result: { protocolVersion: 2024-11-05, capabilities: { tools: {} }, serverInfo: { name: echo-server, version: 0.1.0 }, }, }); return; } if (req.method tools/list) { send({ jsonrpc: 2.0, id: req.id, result: { tools: [ { name: echo, description: 返回传入的文本, inputSchema: { type: object, properties: { text: { type: string } }, required: [text], }, }, ], }, }); return; } if (req.method tools/call) { const text req.params?.arguments?.text ?? ; send({ jsonrpc: 2.0, id: req.id, result: { content: [{ type: text, text: echo: ${text} }], }, }); return; } });保存为mcp-echo-server.js然后在 Claude Code 的 MCP 配置里注册它。Claude Code 的 MCP 配置通常写在settings.json的mcpServers字段或者项目级的.mcp.json{ mcpServers: { echo: { command: node, args: [/absolute/path/to/mcp-echo-server.js] } } }注意args里要用绝对路径stdio server 不会继承你当前 shell 的工作目录。2.5 启动 Claude Code配置写好后在项目目录下启动claude如果环境变量已经通过settings.json注入Claude Code 启动时会自动读取。你也可以在启动前手动 export 一遍确认没有拼写错误export ANTHROPIC_BASE_URLhttps://taotoken.net/api export ANTHROPIC_AUTH_TOKENYOUR_API_KEY export ANTHROPIC_MODELMODEL_ID claude启动后Claude Code 会加载 MCP server 列表。你可以在会话里输入/mcp查看已连接的 server 和工具。如果echo出现在列表里说明 stdio 链路已经通了。3. TaoToken 接入与配置要点这一节把接入相关的几个关键点集中说明避免在排障时来回翻文档。第一Base URL 只填到https://taotoken.net/api不要在后面追加/v1或其他路径。Claude Code 会按 Anthropic 协议自行拼接/v1/messages等 endpoint。多写一段路径会导致 404少写则可能被当成默认官方地址。第二认证走ANTHROPIC_AUTH_TOKEN不是ANTHROPIC_API_KEY。Claude Code 对这两个变量的处理不同用错会导致 401。TaoToken 的 Key 填在ANTHROPIC_AUTH_TOKEN里。第三模型 ID 以官网为准。不同账号、不同时间可选的模型可能不同ANTHROPIC_MODEL填错会返回模型不存在的错误。如果你不确定当前可用哪些模型可以在 模型对话页面 先试一次对话确认模型 ID 可用后再写进配置。第四如果你同时使用多个供应商可以用 CC Switch 这类工具管理三件套Base URL、API Key、模型 ID。切换时确保三件套一起换只换其中一项容易出现「地址对了但 Key 是别家的」这类混合错误。第五MCP server 本身不经过 TaoToken。TaoToken 只负责模型请求的转发stdio server 跑在本地由 Claude Code 直接拉起。所以排障时要区分两类问题模型请求失败看 TaoToken 配置工具调用失败看 MCP server 配置。4. 可验证结果与失败分支4.1 第一次 tool call 的日志摘录当 Claude Code 决定调用echo工具时终端会输出类似下面的日志不同版本措辞可能略有差异[claude-code] Tool call requested: echo [claude-code] Arguments: {text: hello taotoken} [mcp:echo] tools/call - echo [mcp:echo] result: echo: hello taotoken [claude-code] Tool call completed in 42ms这段日志说明三件事模型确实返回了一个 tool callClaude Code 把调用转发给了本地 MCP serverserver 返回了结果。如果只看到模型回复文字而没有 tool call说明模型没有选择调用工具可以换一个更明确的提示词比如「请调用 echo 工具参数 text 为 hello taotoken」。4.2 token 计数Claude Code 在每次请求后会显示 usage 信息通常包含 input tokens、output tokens 和 cache 相关字段。一次简单的 echo 调用input 大约在几百 token 量级取决于系统提示和工具描述长度output 通常很短。你可以在会话里输入/cost或查看终端输出的 usage 行把这次调用的数字记下来。更准确的做法是到 TaoToken 控制台的用量页面查看这次请求的记录。用量页面会按时间列出请求包含模型、token 数和状态码。对照时间戳你能确认这次 tool call 对应的请求确实走了 TaoToken而不是其他地址。控制台入口在 Console。4.3 失败分支401 UnauthorizedKey 填错、Key 被删除、或者把 Key 填到了ANTHROPIC_API_KEY而不是ANTHROPIC_AUTH_TOKEN。检查环境变量名和 Key 值确认没有多余空格。404 Not FoundBase URL 多写了路径比如https://taotoken.net/api/v1。改回https://taotoken.net/api。模型不存在ANTHROPIC_MODEL填了当前账号不可用的模型 ID。到官网确认可用列表后替换。MCP server 未连接/mcp里看不到echo。检查mcpServers配置的command和args确认node在 PATH 里脚本路径是绝对路径脚本本身能独立运行。工具调用没有触发模型回复了文字但没有 tool call。换更明确的提示词或者确认工具描述是否清晰。有些模型对工具调用的触发条件比较保守。token 计数对不上如果你在多个终端或多个项目里同时使用同一个 Key用量页面会混在一起。建议为这次实验单独创建一个 Key实验结束后可以删除或停用。5. 限制、成本与模型选择MCP server 的能力边界由 server 自己决定。本文的 echo server 只做文本回显不涉及文件系统、网络或数据库。如果你要接入更复杂的 server注意 stdio server 的权限和输入校验避免让模型直接操作敏感资源。成本方面TaoToken 的计费以官网当前公示为准。不同模型的单价不同tool call 本身会消耗 input token工具描述和参数和 output token调用决策和结果处理。一次 echo 调用的成本通常很低但如果你频繁调用工具或工具描述很长input token 会累积。建议在实验阶段用较小的模型或较短的提示词确认链路通了之后再换正式模型。模型选择上不是所有模型都擅长工具调用。有些模型对 MCP 工具的 schema 理解较好能稳定触发有些模型可能更倾向于用文字回答。你可以在 模型对话 里先手动测试几个模型对同一提示词的反应选出触发率高的那个再写进ANTHROPIC_MODEL。如果你打算长期用 Claude Code 做开发可以关注 Coding Plan它面向持续编码场景和按量计费的 API Key 是两种不同的使用方式。本文的实验用 API Key 即可完成不需要额外订阅。最后提醒一点本文不包含任何排行分数或评测对比。TaoToken 不是榜单参赛方官网标价也不等于 TaoToken 的售价。所有价格、模型列表和可用性以官网当前页面为准。如果你在接入过程中遇到配置问题优先查 接入文档里面按工具分类列出了环境变量和常见错误。 告别海外账号与网络限制稳定直连全球优质大模型限时半价接入中。 点击领取海量免费额度
返回列表