关于 Affiliate Networks MCP
Affiliate Networks MCP 让出版商、品牌和代理机构通过 Claude 或 Codex 查询多个联盟网络的数据。它在本地运行并实时获取 API 数据,各网络适配器的成熟度有所不同。
主要功能
- 01跨网络报告
- 02出版商与品牌侧数据
- 03实时 API 查询
- 04本地凭据存储
- 05可选本地结果缓存
适用场景
- 01比较多个网络的出版商收益
- 02跟踪待处理交易和项目变化
- 03查看所管理品牌的收入
MCP 相关
它作为本地 MCP 服务通过 stdio 运行,并连接联盟网络 API。设置工具可协助将其配置到受支持的 MCP 客户端。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://mcp.agenticaffiliate.ai/mcpclaude mcp add --transport http ai-agenticaffiliate-affiliate-networks https://mcp.agenticaffiliate.ai/mcp{"mcpServers":{"ai-agenticaffiliate-affiliate-networks":{"type":"http","url":"https://mcp.agenticaffiliate.ai/mcp"}}}在 Cursor 中打开{"servers":{"ai-agenticaffiliate-affiliate-networks":{"type":"http","url":"https://mcp.agenticaffiliate.ai/mcp"}}}在 VS Code 中打开{"mcpServers":{"ai-agenticaffiliate-affiliate-networks":{"type":"http","url":"https://mcp.agenticaffiliate.ai/mcp"}}}{"mcpServers":{"ai-agenticaffiliate-affiliate-networks":{"serverUrl":"https://mcp.agenticaffiliate.ai/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
详细介绍
affiliate-mcp
将你的联盟网络接入 Claude 或 Codex。
联盟网络运营方: 大多数适配器由社区构建,状态为
experimental。采用适配器能让你的团队获得所有权和验证渠道;升级为partial或production仍需提供当前证据并经过维护者审核。请在adopt-this-network标签下查找你所在网络的议题。
联盟网络涉及两方,但双方都没有一流的 AI 工作空间集成。
发布商通过加入联盟计划赚取佣金。 品牌方(以及管理这些计划的代理机构)负责运营这些计划并支付佣金。我想在自己常用的 AI 工作空间中查询联盟数据;但没有任何网络为这两方推出集成,因此我构建了一套覆盖面广的 Beta 版本,支持发布商和广告主两方面的工作。
如果你是发布商,可以询问:
“上个月我在所有网络中一共赚了多少?”
“哪些计划的交易在 90 天后仍处于待处理状态?”
“比较我的月度收入。”
如果你属于品牌方——负责运营计划,或是管理多个品牌的代理机构——可以询问:
“Acme 的计划本季度表现如何?”
“显示我所有客户本周的收入。”
“联盟数据中有异常吗?”
你的 AI 工作空间会判断要调用哪些网络,从其 API 实时获取数据并给出答案。你可以用 Claude 或 Codex 将结果整理成表格、制成 artifact、写成发给老板的邮件,或按你的需要处理。
免费且开源,采用 MIT 许可证。请自备密钥。产品理念请阅读 AI 原生联盟数据宣言。
适用人群
此工具服务于两类用户。选择适合你的角色,也可以两者都选,如果你身兼两职。
你是发布商。 你通过联盟计划赚取佣金,仪表板跟不上你的思考速度,并且希望通过一次对话覆盖你加入的所有网络。
你属于品牌方。 你负责运营联盟计划,或是管理多个品牌计划的代理机构。你希望通过一个问题同时查询多个网络和品牌,并发现仪表板中容易被忽视的情况:发布商趋势下滑、退款激增、链接失效、计划收益趋近于零。
无论属于哪种情况,你都不需要了解 API 或编写代码。非技术用户可使用 Claude Desktop,要求如下:
- 你现有的联盟网络登录账号。
- 已安装 Claude Desktop。
技术用户需要使用终端、Node.js 20 或更高版本,以及 Claude Desktop、Claude Code、Codex 或其他兼容的本地 stdio MCP 客户端;在依赖未经测试的客户端使用流程之前,请先查看下方的支持状态。
如果你在联盟网络工作, 这也适合你。在各网络采用自己的适配器之前,内置适配器都只是占位符。请参阅 CONTRIBUTING.md 中的“采用你的网络”。
为什么要用?
一个问题,覆盖所有网络和品牌。 “显示各个推广计划的收益”,会并行查询你配置的发布商网络。在品牌侧,“显示我所有客户本周的收入”会同时查询你注册的每个品牌与网络组合。
用日常语言,而不是筛选条件。 不必再点击日期选择器和已保存的视图。“上一季度,状态为待处理,按金额排序”就是完整的提示词。
默认情况下,数据留在你的设备上。 它在本地运行。你的密钥保存在 ~/.affiliate-mcp/.env 中,并限制为仅你的用户帐户可访问。可选的匿名使用情况遥测默认关闭,且绝不包含联盟营销数据、凭据、提示词、参数、结果或错误文本。各网络收到的 API 调用与通过其控制面板发起的相同。
发现控制面板中容易被忽略的问题。 打包的技能会显示过期交易、未启用的推广计划、失效的深层链接以及周环比下降。
可选的本地结果缓存。 持久缓存默认关闭。在 ~/.affiliate-mcp/.env 中设置 AFFILIATE_MCP_CACHE=on,即可在本地缓存选定的推广计划库存和已结束的报告时段,并仅授予所有者访问权限。尚未结束的时段和当前时段始终实时查询。如果在共享设备上无法确保文件权限,请保持缓存关闭。运行 affiliate-networks-mcp cache clear 可删除缓存结果;有关存储和保留政策,请参阅 PRIVACY.md。
开始使用
选择以下两种主要方式之一。两者都运行相同的本地 MCP 服务,并将凭据保存在你的设备上。
方式 1:非技术用户,Claude Desktop
使用适用于宿主的 Claude Desktop .mcpb。无需使用终端、Node.js 或手动配置。
- 从最新的 GitHub 发布页面下载
affiliate-networks-mcp-<version>.mcpb。 - 在 Claude Desktop 中,打开 设置 → 扩展 → 高级设置 → 安装扩展…,然后选择下载的文件。
- 添加你所用网络的凭据,然后询问 Claude:“你可以访问哪些联盟营销网络?”
此扩展不会自动更新:下载最新的 .mcpb 并覆盖安装;已保存的凭据会保留(各安装方式的完整步骤)。
原生扩展目前为 Awin、CJ、Impact 和 Partnerize 提供安全的设置字段。它会运行完整的服务,因此现有的 ~/.affiliate-mcp/.env 仍可启用所有其他适配器。其余网络的便携式浏览器设置流程正在规划中;在此之前,添加这些网络时请使用下方的技术方式。
独立的 Electron/DMG 设置应用是面向现有 macOS 用户的仅修复兼容性备用方案,并非第三种主要入门方式。如需了解它目前适用的场景,请参阅 desktop/README.md。
Track 2:面向技术和半技术用户,CLI 加本地 stdio
需要安装 Node.js 20 或更高版本。如果尚未安装,请访问 Node.js 下载页面。
1. 运行设置向导。 打开终端(macOS)或 PowerShell(Windows):
npx affiliate-networks-mcp setup
向导会一次引导你设置一个网络,询问你想使用哪一侧, 指出在哪里可以找到各项凭据,然后通过实时网络验证凭据。
对于品牌侧网络,向导会询问这些凭据可以访问哪些品牌,
然后让你选择本地昵称。映射会保存到
~/.affiliate-mcp/brands.json,请参阅管理品牌。
2. 检查所有配置是否已就绪。
npx affiliate-networks-mcp test
每个网络应显示一行:状态正常时显示 ok,
异常时显示 error — <reason>。
3. 将其连接到本地 MCP 客户端。 使用适用于宿主的程序包、CLI 安装程序或本地 stdio 配置。设置向导会在最后自动提供已打包的 CLI 安装程序目标。
Claude Desktop(Mac/Windows 应用):
npx affiliate-networks-mcp install
查找 Claude Desktop 配置,在现有内容旁添加 affiliate 条目,
并先创建带时间戳的备份。完成后重启 Claude Desktop。标志:使用
--desktop / --code / --codex 选择一个,使用 --all 包含
Codex 并跳过提示,使用 --dry-run 预览;如果现有配置不是有效的
JSON,则使用 --force-overwrite。
Claude Code(终端):
claude plugin marketplace add bobberrisford/affiliatemcp
claude plugin install affiliate-networks-mcp@affiliatemcp
一步注册 MCP 服务和捆绑的技能。(或者使用上面的
install 命令——它也能检测 Claude Code。)已经在 Claude Code
会话中?只需让它安装 affiliate-mcp 插件,它就会替你运行这些命令;
无需在终端间切换。
Codex(OpenAI,终端或 IDE 扩展):
npx affiliate-networks-mcp install --codex
这会将本地 stdio MCP 服务添加到 ~/.codex/config.toml;Codex CLI
和 Codex IDE 扩展使用相同的 MCP 配置。手动设置:
codex mcp add affiliate -- npx -y affiliate-networks-mcp
验证:打开 Codex,运行 /mcp,然后询问**“你可以访问哪些联盟网络?”**
这是对 OpenAI/Codex 的支持,不支持 ChatGPT 连接器。
ChatGPT 需要可访问的 HTTPS MCP 服务,且支持范围另行限定。
Claude Cowork 桌面版(组织账户):
Cowork 会从 GitHub 仓库同步插件,但会阻止组织市场使用公开
仓库——因此你需要先创建一个私有镜像。设置向导会在最后提供此选项,
或者运行 install 并选择 Cowork:
npx affiliate-networks-mcp install # detects your clients, offers Cowork
(或者直接运行:npx affiliate-networks-mcp cowork-mirror。)
它会创建 <you>/affiliatemcp-internal 作为私有仓库,并将上游仓库镜像到其中。
如果你已登录 GitHub CLI (gh),程序会自动使用它;否则会明确告知你如何获取
GitHub 令牌,并提示你粘贴令牌——与设置网络时“粘贴凭据”的流程相同。
使用 --sync 重新运行,可根据新版本刷新镜像。
然后,使用组织管理员权限,在 Cowork 中依次选择:组织设置 → 插件
→ 添加插件 → GitHub → 输入 <you>/affiliatemcp-internal → 从同步后的市场安装
affiliate-networks-mcp。
想手动编辑 Claude Desktop 配置吗?
打开 Claude Desktop 配置文件:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
在 mcpServers 中添加 affiliate 条目——保留其他同级条目:
{
"mcpServers": {
"affiliate": {
"command": "npx",
"args": ["affiliate-networks-mcp"]
}
}
}
保存后重启 Claude Desktop。
对于其他本地 stdio MCP 客户端,请将服务命令配置为
npx -y affiliate-networks-mcp。这些客户端原则上兼容,
但尚未经过官方端到端流程测试。现有的 VS Code/Copilot 安装程序候选方案是
#49 中的草稿 PR。
客户端支持状态
这些标签描述的是入门流程,而非每个网络适配器都经过实时验证。“已测试”指仓库自有的自动化验证,并非针对每个主机版本的实时验证。成熟度详情请参阅 REPORT.md。
| 客户端或路径 | 支持状态 | 含义 |
|---|---|---|
Claude Desktop .mcpb | 已发布并通过发布测试 | 面向非技术用户的主要路径。CI 会构建并对软件包进行冒烟测试。目前,安全设置字段涵盖 Awin、CJ、Impact 和 Partnerize。 |
| Claude Desktop CLI/手动配置 | 已发布并经过测试 | 面向技术用户的本地 stdio 路径。安装程序和配置行为均有自动化测试覆盖。 |
| Claude Code 插件和 CLI 注册 | 已发布并经过测试 | 面向技术用户的路径,包含打包的技能和本地 MCP 注册。 |
| Codex CLI 和 IDE 扩展 | 已发布并经过测试 | 使用共享的本地 Codex MCP 配置的技术路径。这不代表支持 ChatGPT 连接器。 |
托管连接器(mcp.agenticaffiliate.ai) | 已发布并经过测试,付费 | 通过 OAuth 使用远程 MCP,适合无法运行本地服务的用户。任何能够添加自定义连接器的客户端都可以使用,包括 Claude。支持四个网络(Awin、CJ、Impact、Rakuten),并非所有适配器。只读;凭据存放在加密保险库中,由浏览器驱动的操作仅在本地执行。请参阅 PRIVACY.md 和安全页面。 |
| Claude Cowork 私有镜像 | 部分发布 | 需要私有镜像并由组织管理员跟进;这并非面向个人的简易设置路径。 |
| Cursor、VS Code 和通用本地 MCP 客户端 | 原则上可用,但尚未形成经过测试的一方使用流程 | 本地 stdio 服务原则上兼容。特定客户端的设置、打包和支持责任由 #207 跟踪。 |
| 便携式浏览器凭据设置 | 计划中,尚未发布 | 旨在无需使用终端即可配置所有网络凭据。相关安全问题及是否弃用 DMG 的决定由 #206 跟踪。 |
| ChatGPT | 可通过托管连接器使用,但尚未形成经过测试的一方使用流程 | ChatGPT 无法直接使用此本地 stdio 服务,因此需要使用上文所述的托管连接器;免费本地路径无法用于 ChatGPT。目前没有经过测试的 ChatGPT 设置指南,也尚未在连接器目录中列出。 |
确认是否配置成功。 在新的 Claude 对话中,询问 “你可以访问哪些联盟网络?”——你应该能看到配置过的所有网络。如果注册过品牌,也可以试试 “列出我的品牌”。
之后如需断开连接,请运行 npx affiliate-networks-mcp uninstall;如果使用插件路径,请运行 claude plugin uninstall affiliate-networks-mcp。
匿名遥测
项目会读取 npm 和 GitHub 的汇总采用情况统计。npm 下载量代表下载次数,而非用户数:其中包括重复运行 npx、CI、缓存及其他自动化流量。
可选的运行时遥测需要明确选择加入,且每天最多发送一次。遥测包含软件包版本、启动界面、每月轮换的随机标识符,以及按网络、操作和粗略结果分类的计数。具体内容请参阅隐私政策。
affiliate-networks-mcp telemetry status
affiliate-networks-mcp telemetry enable
affiliate-networks-mcp telemetry disable
安装问题排查
Claude 会话中出现“Unknown skill: plugin”。 /plugin 是 shell 命令,而不是聊天斜杠命令。请在终端中运行 claude plugin marketplace add ...,不要在对话中运行。
Cowork 拒绝该市场仓库。 请确认仓库是私有的。公开仓库无法用于 org-marketplace 同步。运行 npx affiliate-networks-mcp cowork-mirror 创建私有镜像。
What affiliate networks… 没有返回任何结果。 MCP 服务已加载,但缺少凭据。请触发随附的
affiliate-network-setup-help
技能(询问“帮我设置联盟网络凭据”),或在终端中运行
npx affiliate-networks-mcp setup。
npm 缓存过期。 npx --yes affiliate-networks-mcp@latest 会强制重新获取。使用
npm view affiliate-networks-mcp version 验证已发布的版本。
你可以询问什么
打包的技能是预先编写好的对话模式。你无需调用它们——Claude 会根据你 输入的内容选择合适的技能。
发布商侧
- “我上个月赚了多少?” — 汇总所有发布商网络的收益报告, 按状态(待处理、已批准、已支付、已撤销)分类,并标记逾期 超过 90 天的未付款项。
- “我的所有联盟网络运行正常吗?” — 一次性检查身份验证和 功能。
- “帮我设置 Awin”(或 CJ、Impact、Rakuten)— 引导式 凭据设置,并逐字引用控制面板菜单路径。
- “审计我网站地图 https://mysite.com/sitemap.xml 中的联盟链接” — 读取网站地图,按网络分类每个联盟链接,并标记失效或已拒绝的 链接。也可以直接提供 URL、HTML 或 Markdown。
品牌侧
- “Acme 本季度的表现如何?” — 汇总该品牌绑定网络的数据报告。 显示顶级发布商、状态分类和同期变化。
- “显示我本周所有客户的收入。” — 按品牌汇总的业务组合 总览,并为表现下滑的品牌提供“需要关注”小节。
- “本周联盟数据有什么异常吗?” — 按周扫描收入下降、撤销激增、 前 10 名退出和失效计划。专为通过 Claude 自带的定时功能安排运行而设计。
- “设置 Acme 的策略和 KPI” — 在设置期间绑定品牌,通过
client-onboarding记录 咨询背景,然后让报告、异常监控和业务组合总览据此呈现评估结论。它绝不会授权 对网络进行写入操作,也不会更改数据。
网络
该仓库目前提供 86 个适配器,覆盖 72 个网络系列。覆盖范围确实广泛,但成熟度各异;
大多数适配器仍处于 experimental 阶段。在将其用于生产工作之前,请查看
下表和 REPORT.md。
| Network | Setup time | Approval required | Supported ops | Notes |
|---|---|---|---|---|
| 2Performant | 5 min | no | 6 / 7 | no clicks |
| AccessTrade | 10 min | no | 6 / 7 | no clicks |
| Adcell | 10 min | no | 6 / 7 | no clicks |
| Addrevenue | 5 min | no | 7 / 7 | pagination quirks |
| Admitad | 15 min | no | 6 / 7 | clicks gated |
| Admitad (advertiser) | 12 min | no | 7 / 7 | see notes |
| Adrecord | 5 min | no | 6 / 7 | no clicks |
| Adservice | 10 min | no | 6 / 7 | no clicks |
| Adtraction | 5 min | no | 6 / 7 | no clicks |
| Adtraction (advertiser) | 6 min | no | 7 / 7 | see notes |
| Affilae | 5 min | no | 6 / 7 | no clicks |
| Affiliate Future | 5 min | no | 6 / 7 | no clicks |
| Affise | 10 min | no | 7 / 7 | no clicks |
| Afilio | 10 min | no | 6 / 7 | no clicks |
| Amazon Creators | 10 min | yes (~1 days) | 6 / 7 | no clicks |
| AvantLink | 10 min | no | 6 / 7 | no clicks |
| Awin | 5 min | no | 6 / 7 | no clicks |
| Awin (advertiser) | 6 min | no | 7 / 7 | see notes |
| Belboon | 10 min | no | 6 / 7 | no clicks |
| CAKE | 10 min | no | 6 / 7 | no clicks |
| CJ Affiliate | 8 min | no | 6 / 7 | no clicks |
| CJ Affiliate (advertiser) | 8 min | no | 7 / 7 | pagination quirks |
| ClickBank | 10 min | no | 6 / 7 | no clicks |
| Commission Factory | 10 min | no | 6 / 7 | clicks gated |
| Commission Factory (advertiser) | 7 min | no | 7 / 7 | pagination quirks |
| Connexity | 10 min | no | 6 / 7 | no clicks |
| Coupang Partners | 10 min | no | 6 / 7 | no clicks |
| Daisycon | 15 min | no | 6 / 7 | no clicks |
| Daisycon (advertiser) | 15 min | no | 7 / 7 | see notes |
| Digistore24 | 5 min | no | 6 / 7 | no clicks |
| eBay Partner Network | 10 min | yes (~3 days) | 7 / 7 | see notes |
| Eduzz | 10 min | no | 6 / 7 | no clicks |
| Effiliation | 5 min | no | 6 / 7 | no clicks |
| eHUB | 5 min | no | 7 / 7 | see notes |
| Everflow | 10 min | yes (~1 days) | 7 / 7 | see notes |
| Everflow (Advertiser) | 10 min | no | 7 / 7 | no clicks |
| financeAds | 10 min | yes (~2 days) | 6 / 7 | no clicks |
| FirstPromoter | 5 min | no | 6 / 7 | no clicks |
| FlexOffers | 10 min | no | 6 / 7 | no clicks |
| Flipkart Affiliate | 10 min | no | 6 / 7 | no clicks |
| GrowSurf | 10 min | no | 6 / 7 | no clicks |
| Hotmart | 10 min | no | 6 / 7 | no clicks |
| Howl | 5 min | no | 6 / 7 | clicks gated |
| Impact | 6 min | no | 7 / 7 | upstream variability |
| Impact (advertiser) | 8 min | no | 7 / 7 | see notes |
| Indoleads | 5 min | no | 6 / 7 | no clicks |
| Involve Asia | 5 min | no | 6 / 7 | no clicks |
| Kwanko | 10 min | no | 6 / 7 | no clicks |
| Kwanko (advertiser) | 10 min | no | 6 / 7 | no clicks |
| LeadDyno | 5 min | no | 6 / 7 | no clicks |
| Levanta | 5 min | no | 6 / 7 | no clicks |
| LinkConnector | 5 min | no | 6 / 7 | no clicks |
| Lomadee | 15 min | no | 6 / 7 | no clicks |
| Monetizze | 5 min | no | 6 / 7 | no clicks |
| mrge | 10 min | no | 6 / 7 | no clicks |
| NetRefer | 15 min | yes (~5 days) | 6 / 7 | no clicks |
| Offer18 | 10 min | no | 6 / 7 | no clicks |
| Optimise Media | 10 min | no | 6 / 7 | no clicks |
| Partnerize | 10 min | no | 7 / 7 | no clicks |
| Partnerize (Advertiser) | 5 min | no | 6 / 7 | no clicks |
| Partnero | 5 min | no | 6 / 7 | no clicks |
| PartnerStack | 5 min | no | 6 / 7 | no clicks |
| PartnerStack (advertiser) | 6 min | no | 7 / 7 | no clicks |
| Pepperjam | 5 min | no | 6 / 7 | no clicks |
| Post Affiliate Pro | 5 min | no | 6 / 7 | no clicks |
| Profitshare | 5 min | no | 6 / 7 | no clicks |
| Rakuten Advertising | 12 min | yes (~5 days) | 6 / 7 | clicks gated |
| Refersion | 5 min | no | 6 / 7 | no clicks |
| Rewardful | 5 min | no | 6 / 7 | no clicks |
| Scaleo | 10 min | yes (~1 days) | 7 / 7 | see notes |
| ShareASale | 10 min | no | 6 / 7 | no clicks |
| ShopMy | 10 min | no | 6 / 7 | no clicks |
| Skimlinks | 10 min | no | 6 / 7 | no clicks |
| Sovrn Commerce | 10 min | no | 6 / 7 | no clicks |
| Tapfiliate | 5 min | no | 6 / 7 | no clicks |
| Tolt | 5 min | no | 6 / 7 | no clicks |
| Tradedoubler | 15 min | no | 6 / 7 | clicks gated |
| Tradedoubler (Advertiser) | 10 min | no | 7 / 7 | no clicks |
| TradeTracker | 10 min | no | 7 / 7 | see notes |
| Travelpayouts | 5 min | no | 6 / 7 | no clicks |
| TUNE | 10 min | no | 7 / 7 | no clicks |
| ValueCommerce | 10 min | no | 6 / 7 | no clicks |
| ValueCommerce (advertiser) | 10 min | no | 6 / 7 | no clicks |
| Webgains | 10 min | no | 6 / 7 | no clicks |
| Webgains (advertiser) | 10 min | no | 7 / 7 | see notes |
| Yieldkit | 5 min | no | 7 / 7 | see notes |
有些网络会要求你等待审批(eBay、Rakuten),之后才会开放 API 访问权限。设置向导会准确告诉你每种情况下该怎么做。“支持的操作”少于 7/7,只表示网络本身没有向用户开放这些数据——并非我们这边缺少功能。
**(advertiser)**行是面向品牌方的适配器。它们使用不同于 publisher 行的凭据类型(有时使用相同的认证模型,但背后绑定的是不同账户;各网络的说明会具体注明),并且品牌 ID 是按调用选择的,而不是写入凭据中。v0.1 中的所有品牌方适配器都为只读——客户端会在任何非 GET HTTP 方法离开你的设备前将其拦截。完整的编辑立场,包括已知的上游问题和只读原则,见 REPORT.md。
10 分钟参与贡献
第一次提交 PR 不应耗费超过一个晚上。步骤如下:
-
选择一个 issue。 浏览
good-first-pr队列。每个 issue 都列有文件路径、验收要点和测试方法。发表评论认领。 -
确保检查通过。 一条命令即可在几秒内运行完整的 PR 前检查——类型检查、lint、测试和构建:
git clone https://github.com/bobberrisford/affiliatemcp.git cd affiliatemcp npm install npm run verify如果
npm run verify在本地通过,CI 就会通过。 -
提交 PR。 使用默认模板(简短摘要 + 测试计划)。工作日会在 24 小时内进行首次审查——完整的 PR 流程和按优先级排列的四个待帮助领域,请参阅
CONTRIBUTING.md。
如果你在联盟营销网络工作,最有价值的贡献就是接手该网络自己的适配器——请查看
adopt-this-network
issues。
待开发
大家提出过需求、但尚无适配器的网络。如果你在其中某个网络工作——或者已经拥有 API 访问权限并希望参与贡献——这里是最有用的起点。请参阅 CONTRIBUTING.md 了解工作流,并在开始前新建或加入一个跟踪 issue。
| 网络 | 需要支持的方向 | 备注 | 跟踪 issue |
|---|
Awin 参考实现
Awin 是当前的参考实现,展示了此仓库未来的发展方向。它保留了七个规范的 publisher 工具,并增加了 Awin 专属工具,用于账户、计划详情、佣金组、按交易 ID 查询、交易查询、广告主/创意/活动报告、Link Builder、Offers,以及针对受限产品 Feed 和 Proof of Purchase API 的安全占位工具。
若想了解产品方向,请从这里开始:
凭据存储位置
运行设置向导时,它会在你的设备上写入一个文件:~/.affiliate-mcp/.env,并将其权限限制为仅你的用户账户可访问(文件模式为 0600)。这是网络控制面板之外唯一存放 API 密钥的地方。publisher 和品牌方凭据都存储在此处,并按网络 slug 分别保存;你可以像处理其他文件一样打开、编辑、删除或复制它。
如果你注册了任何品牌方网络,向导还会在旁边写入 ~/.affiliate-mcp/brands.json,将你为每个品牌设置的本地昵称(例如 acme)映射到该品牌所关联的每个网络中的品牌 ID(仅 publisher 的使用方式下此文件为空)。
本地路径始终免费且功能完整;目前已有面向四个网络的可选托管层级。
管理品牌
品牌侧流程新增了一个概念:本地品牌别名。为每个客户(或你自己的每个品牌)取一个简短昵称;工具会将其映射到该品牌在其注册的每个网络上的网络品牌 ID。实际的 brands.json 如下所示:
{
"version": 1,
"brands": {
"acme": [
{ "network": "impact-advertiser", "credentialId": "default", "networkBrandId": "IA-12345" },
{ "network": "cj-advertiser", "credentialId": "default", "networkBrandId": "7654321" }
]
}
}
同一个逻辑品牌可以出现在多个网络下;这样一来,*“Acme 在所有网络上的收益”*就会分别使用各网络上对应的品牌 ID。你可以手动编辑此文件来重命名、移除或添加品牌,也可以重新运行 npx affiliate-networks-mcp setup 以交互方式注册新品牌(向导会跳过文件中已有的品牌)。
以下三个技能针对品牌侧进行了优化:
programme-performance-report
(单品牌、按发布商汇总),
agency-portfolio-rollup
(每个品牌 × 网络,按品牌汇总),以及
programme-anomaly-watch
(定期扫描每周环比异常)。
在终端中使用
call 会运行与 MCP 服务相同的已注册操作,适用于快速检查、脚本和 CI(完整用法请运行 call --help)。某些调用会联系上游网络(例如,generate_tracking_link 会生成一个链接)。支持架构感知的 key=value 解析,可保留字符串 ID、转换数字,并接受逗号分隔或 JSON 数组;--args '<json>' 可传入完整对象。结果以 JSON 输出到 stdout;失败时会将 NetworkErrorEnvelope JSON 输出到 stderr,并以非零状态码退出。
npx affiliate-networks-mcp call --list [--network awin]
npx affiliate-networks-mcp call --describe awin list_transactions
npx affiliate-networks-mcp call awin list_transactions from=2026-01-01 limit=50
出现问题时
npx affiliate-networks-mcp doctor
此命令会对每个已配置网络进行实时诊断,并用英文告知你哪里出了问题以及如何修复。如果某个特定网络出现异常,请附上其别名:
npx affiliate-networks-mcp doctor rakuten
大多数故障都属于以下三种情况之一:令牌已过期、网络需要重新确认你的授权,或凭据末尾多输入了空格。JSON 还会报告 clientStrategies 的运行状况;它不会删除这些策略。
各网络的设置说明
每个网络都有一个简短页面,介绍控制面板导航、凭据的获取位置以及常见问题:
发布商侧:
-
Awin — API 令牌 + 发布商 ID。
-
CJ Affiliate — Developer Key(GraphQL)。
-
eBay Partner Network — OAuth 客户端 + 密钥 + 活动 ID;需要审批。
-
Everflow — API 密钥(由管理员签发);实验性功能,基于公开文档构建。
-
Impact — Account SID + Auth Token。
-
mrge — API 密钥 + 密钥 + 站点 ID;实验性功能,基于公开文档构建。
-
Partnerize — 应用密钥 + 用户 API 密钥;实验性功能,基于公开文档构建。
-
PartnerStack — Partner API 密钥;实验性功能,基于公开文档构建。
-
Rakuten Advertising — OAuth 客户端 + SID;需要审批。
-
Skimlinks — OAuth 客户端 ID + 密钥 + 发布商 ID + 域名 ID;实验性功能,基于公开文档构建。
-
Sovrn Commerce — API 密钥 + 密钥;实验性功能,基于公开文档构建。
-
Tradedoubler — Bearer 令牌 + 组织 ID;实验性功能,基于公开文档构建。
-
Admitad — OAuth2 客户端 ID + 密钥 + 网站 ID;实验性功能,基于公开文档构建。
-
Adservice — UID + 登录令牌(Cookie 会话);实验性功能,基于公开文档构建。
-
Adtraction — API 令牌;实验性功能,基于公开文档构建。
-
Afilio — 联盟营销令牌 + Aff ID;实验性功能,基于公开文档构建。
-
Commission Factory — API 密钥;实验性功能,基于公开文档构建。
-
Coupang Partners — 访问密钥 + 密钥(HMAC);实验性功能,基于公开文档构建。
-
Daisycon — OAuth2 客户端 ID + 密钥 + 刷新令牌 + 发布商 ID;实验性功能,基于公开文档构建。
-
Eduzz — 邮箱 + 公钥 + API 密钥;实验性功能,基于公开文档构建。
-
FlexOffers — API 密钥;实验性功能,基于公开文档构建。
-
Hotmart — OAuth2 客户端 ID + 密钥;实验性功能,基于公开文档构建。
-
Indoleads — Bearer 令牌;实验性功能,基于公开文档构建。
-
Kwanko — API 令牌;实验性功能,基于公开文档构建。
-
Lomadee — 应用令牌 + 来源 ID + 发布商 ID + 报告登录凭据;实验性功能,基于公开文档构建。
-
Monetizze — API 密钥;实验性功能,基于公开文档构建。
-
ValueCommerce — 报告 API 密钥对;实验性功能,基于公开文档构建。
-
Webgains — API 密钥 + 发布商 ID + 活动 ID;实验性功能,基于公开文档构建。
-
Affise — 每个租户的基础 URL + API-Key 标头;租户 CPA 引擎;实验性功能,基于公开文档构建。
-
Scaleo — 每个租户的基础 URL + API 密钥(查询参数);租户引擎;实验性功能,基于公开文档构建。
-
Offer18 — 每个租户的基础 URL + key/aid/mid(查询参数);租户引擎;实验性功能,基于公开文档构建。
-
CAKE — 每个实例的基础 URL + API 密钥 + 联盟成员 ID(XML API);实验性功能,基于公开文档构建。
-
NetRefer — 每个运营商的基础 URL + OAuth2(Azure AD);iGaming ASR 报告;实验性功能,基于公开文档构建。
-
Affilae — Bearer 令牌;单品牌;法国网络;实验性功能,基于公开文档构建。
-
Optimise Media — apikey 标头(服务帐户);英国/印度/亚太地区;实验性功能,基于公开文档构建。
-
AccessTrade — Token 标头 + 站点 ID;东南亚/日本,各国使用不同的基础 URL;实验性功能,基于公开文档构建。
-
Travelpayouts — X-Access-Token;全球旅行;实验性功能,基于公开文档构建。
-
Flipkart Affiliate — 联盟成员 ID + 令牌标头;印度;实验性功能,基于公开文档构建。
-
Adrecord — APIKEY 标头;北欧;实验性功能,基于公开文档构建。
-
Addrevenue — Bearer 令牌 + 渠道 ID;北欧;实验性功能,基于公开文档构建。
-
ShareASale — 联盟成员 ID + 令牌 + 密钥(签名);美国;实验性功能,基于公开文档构建。
-
Pepperjam — apiKey 查询参数;美国(Ascend,与 Partnerize 不同);实验性功能,基于公开文档构建。
-
AvantLink — 联盟成员 ID + 身份验证密钥 + 网站 ID(查询参数);美国/户外;实验性功能,基于公开文档构建。
-
Digistore24 — X-DS-API-KEY 标头;德国数字产品;实验性功能,基于公开文档构建。
-
ClickBank — DEV:CLERK 密钥标头 + 昵称;数字产品;实验性功能,基于公开文档构建。
-
TUNE — NetworkId + api_key(每个租户使用独立主机);HasOffers 引擎;实验性功能,基于公开文档构建。
-
Involve Asia — 密钥 + 密钥(令牌交换);亚太地区;实验性功能,基于公开文档构建。
-
TradeTracker — 客户 ID + 密语 + 站点 ID(SOAP 会话);荷兰/欧洲;实验性功能,基于公开文档构建。
-
Amazon Creators — API 密钥 + 合作伙伴标签;每个商城对应一个计划;实验性功能,基于公开文档构建。
-
Belboon — 魔术密钥 + 用户 ID(CSV 导出);德国/奥地利/瑞士;实验性功能,基于公开文档构建。
-
financeAds — API 密钥 + 发布商 ID;德国/奥地利/瑞士金融;实验性功能,基于公开文档构建。
-
Adcell — API 密钥 + 联盟成员 ID;德国/奥地利/瑞士;实验性功能,基于公开文档构建。
-
ShopMy — 品牌合作伙伴令牌;美国创作者网络;实验性功能,基于公开文档构建。
-
Levanta — Bearer 令牌;Amazon 创作者平台;实验性功能,基于公开文档构建。
-
Howl — NRTV-API-KEY 标头 + 发布商 ID;创作者链接网络;智能链接生成;实验性功能,基于公开文档构建。
-
Yieldkit — api_key + 密钥(查询参数);链接变现;支持点击数据;实验性功能,基于公开文档构建。
-
eHUB — apiKey 查询参数 + 发布商 ID;捷克/中东欧;支持点击数据;实验性功能,基于公开文档构建。
-
LinkConnector — API 密钥(查询参数);美国;实验性功能,基于公开文档构建。
-
Connexity — 发布商 ID + API 密钥;美国 CPC 电商(与 Skimlinks 不同);实验性功能,基于公开文档构建。
-
Affiliate Future — API 密钥 + 密码(查询参数);英国;拉取时间窗口为 1 天;实验性功能,基于公开文档构建。
-
Effiliation — API 密钥(查询参数);法国;实验性功能,基于公开文档构建。
-
2Performant — 邮箱 + 密码(会话登录);罗马尼亚;实验性功能,基于公开文档构建。
-
Profitshare — API 用户 + 密钥(HMAC 签名);罗马尼亚;实验性功能,基于公开文档构建。 品牌方 / 广告主:
-
Awin(广告主) — OAuth bearer token;通过
GET /accounts支持多品牌;仅限 Accelerate / Advanced 方案;只读。 -
CJ Affiliate(广告主) — Personal Access Token(GraphQL);通过 CID 列表支持多品牌;只读。
-
Everflow(广告主) — API 密钥(由管理员签发);支持多品牌;实验性功能,基于公开文档构建。
-
Impact(广告主) — Account SID + Auth Token;适用于代理机构或品牌直连;只读。
-
Partnerize(广告主) — application key + user API key;支持多品牌;实验性功能,基于公开文档构建。
-
PartnerStack(广告主) — public + secret key 密钥对(Vendor API);单品牌;实验性功能,基于公开文档构建。
-
Tradedoubler(广告主) — reports token + organisation ID;支持多品牌;实验性功能,基于公开文档构建。
-
Admitad(广告主) — OAuth2 client ID + secret + advertiser ID;支持多品牌;只读;实验性功能,基于公开文档构建。
-
Adtraction(广告主) — API token;支持多品牌;只读(POST-read 白名单);实验性功能,基于公开文档构建。
-
Commission Factory(广告主) — API 密钥;只读;实验性功能,基于公开文档构建。
-
Daisycon(广告主) — OAuth2 client ID + secret + refresh token;支持多品牌;只读;实验性功能,基于公开文档构建。
-
Kwanko(广告主) — API token;支持多品牌;只读;实验性功能,基于公开文档构建。
-
ValueCommerce(广告主) — report-API 密钥对;支持多品牌;只读;实验性功能,基于公开文档构建。
-
Webgains(广告主) — API 密钥 + account ID;支持多品牌;只读;实验性功能,基于公开文档构建。
-
Rewardful — API Secret(HTTP Basic);单品牌;基于 Stripe 的 SaaS;实验性功能,基于公开文档构建。
-
FirstPromoter — API 密钥 + account ID(Bearer);单品牌;SaaS 推荐;实验性功能,基于公开文档构建。
-
Partnero — API token(Bearer);单品牌;SaaS 推荐;实验性功能,基于公开文档构建。
-
GrowSurf — API 密钥 + campaign ID(Bearer);单品牌;推荐奖励 SaaS;实验性功能,基于公开文档构建。
-
LeadDyno — private key(查询参数);单品牌;SaaS 推荐;实验性功能,基于公开文档构建。
-
Post Affiliate Pro — 每个租户的 base URL + API 密钥(Bearer);单品牌;SaaS 引擎;实验性功能,基于公开文档构建。
-
Tolt — Bearer 密钥;单品牌;SaaS 推荐;实验性功能,基于公开文档构建。
-
Refersion — public + secret key 标头;单品牌;以 Shopify 为主的 SaaS;实验性功能,基于公开文档构建。
-
Tapfiliate — X-Api-Key 标头;单品牌;SaaS 推荐;实验性功能,基于公开文档构建。
适合好奇或技术型读者
affiliate-mcp 分为五个实用层。src/networks/ 下的适配器负责处理各网络的身份验证、API 特性、标准化和能力元数据。MCP 工具提供类型化操作,例如 affiliate_awin_list_transactions;六个元工具负责列表查询、诊断、品牌解析和客户端策略建议。技能和工作流将工具组合成联盟营销任务。MCP 提示词是可重复使用的模板,目前仅适用于 Awin。设置方式可将同一个本地服务连接到 Claude Desktop、Claude Code、Codex、Cowork,或其他兼容的本地 stdio MCP 客户端。
skills/ 下打包的技能是 Claude 遵循的对话模式,用于处理常见请求。发布商侧:
affiliate-earnings-report、
affiliate-network-status、
affiliate-network-setup-help、
audit-affiliate-links。品牌侧:
programme-performance-report、
agency-portfolio-rollup、
programme-anomaly-watch。
有关各网络的能力详情、已知上游特性,以及审核新网络声明时采用的编辑基准,请参阅
REPORT.md。该文件会在每次合并时根据各适配器的
network.json 重新生成,因此始终与代码保持同步。
仓库结构
如果你想浏览源代码,顶层文件夹如下:
src/— MCP 服务。入口文件为index.ts;src/networks/下每个网络各有一个文件夹(发布商适配器位于<slug>/,广告主适配器位于<slug>-advertiser/);共享基础组件位于src/shared/;打包的 Claude 技能位于skills/。docs/networks/— 各网络的设置指南(控制面板导航、凭据和常见故障),涵盖发布商侧和广告主侧。docs/README.md— 文档索引、权威资料顺序和审核规则。templates/new-network/— 添加网络适配器时可复制使用的脚手架。scripts/— 生成器和验证工具(validate:network、generate:readme、generate:report)。tests/— vitest 测试套件。不调用在线 API;所有测试均使用原样固定数据运行。examples/— Claude Desktop 配置片段。
添加网络
如果你在联盟营销网络工作,规范流程见
CONTRIBUTING.md 中的“采用你的网络”一节。
你可以通过 .github/CODEOWNERS 认领维护权,使用在线证据验证适配器,并覆盖 API 提供的任意侧。采用网络不会自动授予 production 状态;升级仍需满足与所有适配器相同的证据、新鲜度和维护者审核门槛。
如果表格中没有你最喜欢的网络,而且你也不在该网络工作,仍然可以添加它——而且不一定需要是开发者。用 Claude Code 打开此仓库,然后说 “将 [network name] 添加到 affiliate-mcp”。contribute 技能会启动并引导你完成整个流程:它会尽早询问你要添加哪一侧(发布商侧、品牌侧或两者),选择合适的脚手架和凭据范围约定,研究网络的 API,编写测试并起草文档。你负责编辑,Claude 负责敲代码。
如果你更愿意自己操作,CONTRIBUTING.md
介绍了人工参与的工作流程,AGENTS.md 是面向 AI 编码 Agent 的入门指南,而 templates/new-network/
则是可复制使用的脚手架。大家最常询问的网络已在 GitHub Issues 中用 good first issue 标签进行跟踪。
本地开发:
npm install
npm test
npm run typecheck
npm run lint
npm run build
状态
Beta — 现已提供。此仓库包含 86 个适配器,覆盖 72 个网络系列:63 个发布商侧适配器和 23 个广告商侧适配器。各适配器的支持情况有所不同;请查看生成的网络表格和 REPORT.md,了解每个适配器声明支持的操作、声明状态和已知限制。在真实的发布商、代理机构或品牌内部账号中确认其行为之前,适配器将保持 partial 或 experimental 状态。
许可证
MIT。请参阅 LICENCE。
致谢
本项目的实现离不开 Awin、CJ Affiliate、eBay Partner Network、Impact 和 Rakuten Advertising 的工程团队,因为他们发布了公开且有文档说明的 API,包括发布商端点,以及(对于 Awin、CJ 和 Impact)品牌侧广告商端点。这些适配器直接读取这些 API。如果某个网络没有可用的 API,适配器则可能会操作用户自己的仪表板会话(通过浏览器驱动)。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。