公平MCP
A. 模型上下文协议(MCP) 将Claude连接到的服务器 整流罩 购买后调查平台。向Claude自然语言提问,了解哪些YouTube频道、播客和Instagram帐户正在为您的品牌带来订单和收入。
它做什么
购买后,Fairing问客户“你是怎么听说我们的?”。此服务器:
- 从公平API获取调查回复
- 将原始提及次数外推到估计的总订单数(考虑到调查的非受访者)
- 公开克劳德可以调用的9个工具来回答归因问题
你可以问克劳德的问题示例:
- “上个月,哪些YouTube频道的订单最多?”
- “与其他渠道相比,MrBeast的赞助表现如何?”
- “哪些播客带来的收入最高?”
- “向我展示本季度所有发现渠道的细分。”
需求
- Python 3.8+
- A. 整流罩 具有API密钥的帐户
- Claude Desktop(或任何兼容MCP的客户端)
设置
1.安装依赖项
pip install -r requirements.txt或者直接:
pip install mcp requests2.获取您的Fairing API密钥
登录您的Fairing帐户并从帐户设置中检索您的API密钥。
3.添加到克劳德桌面
编辑 ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"fairing": {
"command": "python",
"args": ["/absolute/path/to/fairing_mcp.py"],
"env": {
"FAIRING_API_KEY": "your_key_here"
}
}
}
}重新启动克劳德桌面。服务器在启动时自动发现您的调查问题ID——标准Fairing设置不需要手动配置。
4.手动运行(可选)
FAIRING_API_KEY=your_key python fairing_mcp.py配置
必需
| 变量 | 描述 |
|---|---|
FAIRING_API_KEY | 来自您Fairing帐户的不记名代币 |
可选--响应率调整
这些比率控制着原始提及计数如何外推到估计的总订单。默认值是合理的起点;在收集自己的数据时调整它们。
| 变量 | 默认值 | 描述 |
|---|---|---|
MAIN_QUESTION_RESPONSE_RATE | 0.33 | 回答主要“你是怎么听到的”问题的订单比例 |
YOUTUBE_CLARIFICATION_RESPONSE_RATE | 0.55 | 回答后续“哪个频道?”问题的YouTube受访者比例 |
PODCAST_CLARIFICATION_RESPONSE_RATE | 0.80 | 回答后续问题的播客受访者比例 |
INSTAGRAM_CLARIFICATION_RESPONSE_RATE | 0.80 | 回答后续问题的Instagram受访者比例 |
可选--问题ID覆盖
问题ID是 自动发现 在启动时。如果您的调查使用非标准措辞,您可以覆盖任何ID:
| 变量 | 目的 |
|---|---|
MAIN_QUESTION_ID | 覆盖主要归因问题ID |
YOUTUBE_CLARIFICATION_QUESTION_ID | 覆盖YouTube澄清问题ID |
PODCAST_CLARIFICATION_QUESTION_ID | 覆盖播客澄清问题ID |
INSTAGRAM_CLARIFICATION_QUESTION_ID | 覆盖Instagram澄清问题ID |
如果工具返回有关缺少问题ID的错误,请检查MCP服务器日志(stderr)。
可用工具
| 工具 | 说明 |
|---|---|
get_attribution_overview | 所有发现渠道的高级细分,包括计数和收入。最佳起点。 |
rank_youtube_channels | 按以下方式对YouTube频道进行排名 mentions, revenue, extrapolated_mentions,或 extrapolated_revenue |
get_channel_performance | 特定YouTube频道的详细统计数据(部分名称匹配) |
rank_podcast_channels | 按提及次数或收入对播客进行排名 |
get_podcast_performance | 特定播客的详细统计数据 |
rank_instagram_channels | 按提及次数或收入对Instagram帐户进行排名 |
get_instagram_channel_performance | 特定Instagram帐户的详细统计数据 |
get_creator_performance | 同时在YouTube、播客和Instagram上进行跨平台搜索 |
get_other_responses | 检查原始自由文本“其他”响应 |
所有工具均接受 after_date 和 before_date 作为ISO 8601字符串(例如。 "2025-01-01")用于日期过滤。支持排名工具 include_monthly_trend=True 按月细分。任何工具都可以接受 debug=True 返回分页元数据。
外推法是如何工作的
并非所有客户都回答了调查。服务器通过将原始提及除以复合响应率来估计渠道驱动的总订单:
extrapolated_orders = raw_mentions / compound_response_rate对于澄清问题(例如“哪个YouTube频道?”),复合率将主要问题率乘以澄清率:
compound = main_question_rate × clarification_rate
= 0.33 × 0.55 ≈ 0.18 (18% of orders are captured)因此,一个被提及100次的渠道意味着大约有556个订单。
渠道匹配的工作原理
搜索不区分大小写,使用两种策略:
- 子字符串匹配 --“Marine X”匹配“MarineX播客”
- 归一化模糊匹配 --去掉标点符号/空格,因此“Marine X”也与“MarineX”匹配
建筑
中的单文件实现 fairing_mcp.py,建立在 FastMCP.
fairing_mcp.py
├── Constants & config # Response rates, API base URL
├── Question ID discovery # Auto-resolves IDs from /api/questions at startup
├── Internal helpers # Rate resolution, extrapolation, paginated fetching
├── Channel matching # Fuzzy + exact match
└── MCP Tools (9 exported)故障排除
工具返回有关缺少问题ID的错误 检查MCP服务器进程的stderr日志。由于调查措辞不规范或API关键权限问题,自动筛选可能失败。设置相关 *_QUESTION_ID 要覆盖的环境变量。
推断的数字似乎不准确 默认响应率是估计值。在Fairing中衡量您的实际调查完成率并更新 MAIN_QUESTION_RESPONSE_RATE 以及相应的澄清率。
未返回日期范围的数据 Fairing默认为2025年8月22日,即省略日期的今天。明确传递 after_date/before_date 控制窗口的参数。
