在 n8n 里用 okdata:HTTP Request 节点和 MCP Client Tool

用 n8n 搭一个定时工作流,从 okdata 拉小红书、抖音或 X 的数据;或者通过 MCP 把全部接口交给 n8n 的 AI Agent。

这一页要搭的工作流是这样的:每天早上九点,n8n 去小红书按最新排序搜一遍你的品牌名,把新笔记推到团队群里。没人需要记得每天去刷。后半部分讲怎么把全部 51 个接口一次性交给 n8n 的 AI Agent,让它自己回答“B站今天什么在火”这类问题。

准备

  • n8n,云版或自部署都行。MCP 那部分需要 1.104 及以上版本;1.114 及以上更省事,默认的传输方式就是对的。
  • 一个 okdata 的 key,以 okd_ 开头。新 key 自带 $0.10 额度。怎么拿 key 见快速开始。

其他接入页都建议把 key 放在环境变量 OKDATA_API_KEY 里。在 n8n 里,更合适的地方是“凭证”:n8n 会加密保存,导出或分享工作流时也不会带上它。

第一步:把 key 存成凭证

  1. 新建一个凭证,类型选 Bearer Auth。
  2. 在 Bearer Token 里粘贴 key(只填 okd_...,不要带 Bearer,n8n 会自己加)。
  3. 命名为 okdata,保存。

如果你的 n8n 里找不到 Bearer Auth,就改用 Header Auth:Name 填 Authorization,Value 填 Bearer okd_...。

第二步:用 HTTP Request 节点做定时搜索

  1. 先放一个 Schedule Trigger,设成每天 09:00。
  2. 接一个 HTTP Request 节点:
    • Method:GET
    • URL:https://api.okdata.online/v1/xiaohongshu/notes/search
    • Authentication:选 Generic Credential Type,Generic Auth Type 选 Bearer Auth,再选刚才的 okdata 凭证。
    • 打开 Send Query Parameters,选 Using Fields Below,加两个参数:query 填品牌名,sort 填 latest。
  3. 单独运行一次这个节点。笔记在 data.items 里,这次花了多少钱在 meta.billing.amount 里。
  4. 接一个 Split Out 节点拆开 data.items,后面再接飞书、Slack、邮件或 Google Sheets 节点。

所有接口都是同一个套路:地址是 https://api.okdata.online/v1/ 加上把接口 id 的点换成斜杠,参数放在查询字符串里。每个参数在对应的接口页都写着。

第三步(可选):把全部接口交给 AI Agent

放一个 AI Agent 节点,配好对话模型,再给它挂一个 MCP Client Tool 作为工具:

  • Endpoint:https://api.okdata.online/mcp
  • Server Transport:HTTP Streamable
  • Authentication:Bearer Auth,选同一个 okdata 凭证
  • Tools to Include:All

这样 Agent 就有了四个工具:find、describe 免费查接口和价格,call 取数据,account 查余额。记得在 Agent 的系统提示里写上预算,比如“每次请求最多发起三次收费调用”。

如果只想把一个接口当工具,也可以把第二步的 HTTP Request 节点直接挂到 Agent 上,在 query 字段里写 {{ $fromAI('query', '要搜索的关键词') }},让模型自己填关键词。

第一句可以这样说

打开 AI Agent 的对话窗口,输入:

B站热门榜现在前十是什么?列出热度和链接,顺便告诉我这次 okdata 调用花了多少钱。

花多少钱

第二步的定时搜索每天一次调用。小红书笔记搜索每页 $0.02,一个月大约 $0.60。上面那句问 B站热门榜的,花 $0.002。Agent 调用的 find、describe、account 都免费,失败的调用也不扣费。

小心循环:如果工作流一直翻页,直到 page.has_more 为 false 才停,跑的次数可能比你想的多。给它定一个固定页数上限。

出问题时

  • 401 unauthorized。 凭证没选上,或者 token 里多了空格、写了两遍 Bearer。打开凭证,重新粘贴一次 key。
  • 402 insufficient_balance。 余额不够这次调用,没有扣费。充值后再跑,价格见定价页。
  • 429 rate_limited。 短时间内调用太多,多半是循环跑太快。返回里有 retry_after_seconds。在 HTTP Request 节点的设置里打开 Retry On Fail,等待时间不少于这个秒数,或者把循环放慢。被限流的调用不扣费。
  • MCP Client Tool 里没有工具。 检查 n8n 版本,Server Transport 是不是 HTTP Streamable,地址是不是以 /mcp 结尾。旧版本 n8n 里加的节点可能还显示 “SSE Endpoint” 字段,删掉重新加一个 MCP Client Tool 就好。

接着看

更新于 2026-11-12