Rivalize
官方代理商的競爭情報:競爭對手拆解、定價、廣告、評論與動能。預設為唯讀。
你可以用 Rivalize MCP 做什麼?
- 競爭者拆解 — 透過
teardown_competitor,要求對任何競爭者的定位、定價、廣告、社群曝光、評論、招聘與動能進行一次性的策略拆解。 - 全域搜尋 — 使用
list_universe_companies,依關鍵字、類別或層級搜尋 Rivalize 跨客戶的追蹤公司資料集。 - 報告導覽 — 使用
get_report,從已儲存的報告中提取特定章節或競爭者細節,例如定價或戰鬥卡。 - 競爭者追蹤 — 使用
list_competitors,查看您所追蹤競爭者的動能分數、威脅等級與 Brief 排名。 - 證據驗證 — 使用
get_evidence與get_freshness,檢查任何主張背後的來源,以及每位競爭者最近被觀察到的時間。 - 新增競爭者 — 透過
add_competitor,選擇將競爭者 URL 加入專案,這會消耗點數並排入分析佇列。
文件
Rivalize MCP 伺服器
為您的 AI 助手提供具來源、標註日期的競爭情報,透過模型上下文協定(Model Context Protocol)運作。
功能說明
此伺服器將 Claude、Cursor 或任何其他 MCP 用戶端連接到 Rivalize。您的助手可以透過一次呼叫拆解競爭對手的定位、定價、廣告、社群、評論、招聘和動能,搜尋 Rivalize 所追蹤公司的資料庫,並讀取您 Rivalize 帳戶中的專案、報告、戰鬥卡、時間軸和證據。每個答案都來自 Rivalize 已收集的資料,附有日期和來源,而非來自模型的記憶。
伺服器預設為唯讀。當您透過 RIVALIZE_MCP_ALLOW_WRITES=1 選擇啟用時,會提供一個寫入工具 add_competitor。
快速開始
需要 Node.js 22 或更新版本 (node --version)。
- 在 rivalize.ai 建立帳戶。
- 在 儀表板 → 設定 → API 金鑰 下建立 API 金鑰。金鑰以
rk_live_開頭。任何方案的金鑰都可用,包括免費方案(免費方案會受到讀取速率限制)。 - 使用以下其中一個區塊將伺服器新增到您的用戶端。
Claude Desktop
編輯 ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) 或 %APPDATA%\Claude\claude_desktop_config.json (Windows),然後重新啟動 Claude Desktop:
{
"mcpServers": {
"rivalize": {
"command": "npx",
"args": ["-y", "@rivalize/mcp"],
"env": { "RIVALIZE_API_KEY": "rk_live_..." }
}
}
}
Claude Code
claude mcp add rivalize -e RIVALIZE_API_KEY=rk_live_... -- npx -y @rivalize/mcp
Cursor
在您的專案中新增至 .cursor/mcp.json,或新增至 ~/.cursor/mcp.json 以套用至所有專案:
{
"mcpServers": {
"rivalize": {
"command": "npx",
"args": ["-y", "@rivalize/mcp"],
"env": { "RIVALIZE_API_KEY": "rk_live_..." }
}
}
}
Cline
在 Cline 中,開啟 MCP 伺服器 面板,選擇 設定,然後選擇 設定 MCP 伺服器。這會開啟 cline_mcp_settings.json。新增:
{
"mcpServers": {
"rivalize": {
"command": "npx",
"args": ["-y", "@rivalize/mcp"],
"env": { "RIVALIZE_API_KEY": "rk_live_..." }
}
}
}
儲存檔案。約 10 到 15 秒後,rivalize 伺服器會出現並帶有綠點(首次啟動會下載套件)。在 Windows 上,如果無法啟動,請使用 "command": "cmd" 和 "args": ["/c", "npx", "-y", "@rivalize/mcp"]。
如果您要求 Cline 為您安裝,請指向 llms-install.md。
任何 MCP 用戶端(stdio)
伺服器透過標準輸入和標準輸出進行 MCP 通訊。設定您的用戶端啟動:
| 設定 | 值 |
|---|---|
| 命令 | npx |
| 參數 | -y @rivalize/mcp |
| 環境變數 | RIVALIZE_API_KEY=rk_live_... |
| 傳輸方式 | stdio |
在 Windows 上,某些用戶端無法直接啟動 npx,因為它是 npx.cmd。請改用 cmd 作為命令,並使用 /c npx -y @rivalize/mcp 作為參數。
工具
十三個唯讀工具始終可用。add_competitor 僅在 RIVALIZE_MCP_ALLOW_WRITES 設定為 1、true 或 yes 時註冊;否則該工具對用戶端不存在。
| 工具 | 存取權限 | 功能說明 | 主要參數 |
|---|---|---|---|
teardown_competitor | 讀取 | 一次呼叫即可將競爭對手拆解為 Markdown 策略報告:定位、定價、廣告、社群、評論、招聘、動能和可攻擊的弱點,並附上資料最後更新的時間 | domain(必填) |
list_universe_companies | 讀取 | 搜尋 Rivalize 資料庫,即跨客戶的追蹤公司資料集 | q、category(slug)、layer、limit(1-100)、offset |
get_universe_company | 讀取 | 單一公司的完整資料庫檔案:身分、定價、功能、廣告、社群、評論、融資和招聘、排名、訊號、動能 | domain(必填)、layers |
list_projects | 讀取 | 您帳戶中的專案;回傳其他工具所需的 project_id | 無 |
list_reports | 讀取 | 您的報告,最新的優先。讀取不會產生報告 | project_id、limit(1-100)、offset |
get_report | 讀取 | 單一報告以 Markdown 呈現,可一次讀取全部、單一區段或單一競爭對手 | report_id(必填)、section、competitor、page |
list_competitors | 讀取 | 您追蹤的競爭對手,附動能分數、威脅等級區間,以及 API 提供時每個競爭對手在您的 Brief 上的排名 | project_id、limit(1-100)、offset |
get_competitor_intelligence | 讀取 | 單一追蹤競爭對手的最新儲存情報;欄位僅在實際測量過時才會出現 | competitor_id(必填) |
get_battlecard | 讀取 | 單一追蹤競爭對手的附引用銷售戰鬥卡。需要 Pro 方案 | competitor_id(必填) |
get_strategic_timeline | 讀取 | 競爭對手在定價、產品、人事、融資和內容/社群方面的行動時間軸,附證據連結 | project_id(必填)、days(30、90、180)、competitor_id、lanes、format、page |
get_competitive_landscape | 讀取 | 競爭對手目前或已儲存的每週位置,依活動和策略重要性分類 | project_id(必填)、week(YYYY-MM-DD)、format、page |
get_freshness | 讀取 | 專案中每個追蹤競爭對手最後一次實際被觀察到的時間和方式 | project_id(必填) |
get_evidence | 讀取 | 您產品或單一競爭對手事實背後的來源:URL、支援的內容以及讀取時間 | project_id(必填)、competitor_id |
add_competitor | 寫入,選擇啟用 | 將競爭對手 URL 新增至專案。會消耗點數並排入分析佇列 | project_id(必填)、urls(1-10,必填) |
project_id 和 competitor_id 是來自 list_projects 和 list_competitors 的 UUID。讀取您帳戶的工具只會看到您自己的資料。
報告區段
get_report 接受 section,讓您的助手可以只讀取問題所需的區段,而非整份報告:
| 區段 | 內容 |
|---|---|
tldr、biggest-threat、blind-spots、actions | 報告的主要區段(actions 是您的產品應該做的事) |
battlecards | 附引用的銷售戰鬥卡 |
competitors | 每個競爭對手的完整區段 |
pricing、momentum、app-store、strengths、weaknesses、key-findings、creators、ads、tech-stack | 從每個競爭對手區段收集的單一主題 |
報告只包含有資料的區段;要求任何其他名稱會回傳錯誤,列出報告實際擁有的區段。section 可與 competitor 組合使用,因此 section: "pricing" 搭配 competitor: "Acme" 會回傳 Acme 的定價。報告的虛構檢查所移除的主張會以 [removed — unverified] 呈現,與報告中完全相同。
長回應
每個回應都保持在 25,000 字元以下,且不會靜默截斷任何內容:
- Markdown(
get_report、get_strategic_timeline、get_competitive_landscape)會在區段邊界分頁。每頁以Page N of M開頭,顯示剩餘量以及下一頁的確切呼叫。 - 清單(
list_universe_companies、list_competitors、list_reports)回傳pagination.next_offset;從該處繼續,直到其為null。 - 物件(
get_universe_company,以及時間軸或概況 JSON)會限制長陣列,並在_capped中記錄上限。仍無法容納的欄位會列在_omitted中,並附上取得該欄位的呼叫。
範例提示
- 「拆解 linear.app。」(
teardown_competitor) - 「AI 開發工具領域有哪些參與者?」(
list_universe_companies) - 「總結我最新的報告,然後顯示我的競爭對手收費多少。」(
list_reports、搭配section: "pricing"的get_report) - 「本季哪些競爭對手動作最多,他們做了什麼?」(
get_competitive_landscape、get_strategic_timeline) - 「給我針對頭號競爭對手的銷售談話要點。」(
list_competitors、get_battlecard) - 「那個定價主張來自哪裡,有多新?」(
get_evidence、get_freshness)
設定
| 變數 | 必填 | 預設值 | 說明 |
|---|---|---|---|
RIVALIZE_API_KEY | 是 | 無 | 您的 Rivalize API 金鑰。必須以 rk_live_ 開頭;如果遺失或格式錯誤,伺服器會在啟動時退出並顯示訊息。 |
RIVALIZE_API_URL | 否 | https://rivalize.ai | Rivalize API 的來源。金鑰只能在簽發它的伺服器上使用:若使用 rivalize.ai 請保持未設定;若使用自架或非生產環境的 Rivalize 伺服器,請設定為該伺服器的來源,否則每次呼叫都會回傳 401。 |
RIVALIZE_MCP_ALLOW_WRITES | 否 | 關閉 | 1、true 或 yes(不分大小寫)會註冊 add_competitor。任何其他值或未設定,則伺服器保持唯讀。 |
HTTPS_PROXY / HTTP_PROXY | 否 | 無 | 透過公司代理伺服器路由請求。也會讀取小寫形式,兩者都設定時 HTTPS_PROXY 優先。NO_PROXY 會被採用。錯誤會指名代理伺服器主機,絕不會顯示其憑證。 |
疑難排解
「連線已關閉」
當伺服器無法啟動時,許多用戶端只會顯示「連線已關閉」或失敗狀態。伺服器會將原因列印為 stderr 的第一行,前綴為 rivalize-mcp:,大多數用戶端會將 stderr 保留在 MCP 日誌中。常見原因:
RIVALIZE_API_KEY遺失或無效。 日誌顯示rivalize-mcp: RIVALIZE_API_KEY is required,或表示金鑰看起來不像 Rivalize API 金鑰(必須以rk_live_開頭)。將金鑰放入伺服器的env區塊並重新啟動用戶端。- Node.js 版本低於 22。 執行
node --version並安裝 Node.js 22 或更新版本。您的用戶端使用其自身PATH中先出現的node和npx,這可能與您終端機中的不同。 - 沒有網路存取。
npx在首次執行時下載套件,每次工具呼叫都會前往https://rivalize.ai(或RIVALIZE_API_URL)。在公司代理後方時,請設定HTTPS_PROXY。網路錯誤會指名伺服器和原因代碼,例如ECONNREFUSED或ENOTFOUND。
若要直接查看訊息,請在終端機中使用相同的金鑰執行伺服器:
RIVALIZE_API_KEY=rk_live_... npx -y @rivalize/mcp
健康的伺服器會將 rivalize-mcp-server connected via stdio 列印到 stderr 並等待輸入(按 Ctrl+C 停止)。任何其他輸出都是您的用戶端無法連線的原因。
每次呼叫都回傳 401
金鑰被傳送到的伺服器拒絕,錯誤會指名該伺服器。檢查金鑰是否已被撤銷,以及 RIVALIZE_API_URL 是否未設定(除非金鑰是由不同的 Rivalide 伺服器簽發)。
工具顯示需要更高方案
所有方案都可使用讀取功能。某些功能(如戰鬥卡和完整時間軸或概況歷史)需要更高方案;錯誤會說明需要哪個方案並連結至 rivalize.ai/pricing。
Docker
儲存庫包含一個 Dockerfile,可在 Node 22 上建置相同的 stdio 伺服器,並以非 root 使用者身分執行。
docker build -t rivalize-mcp .
{
"mcpServers": {
"rivalize": {
"command": "docker",
"args": ["run", "-i", "--rm", "-e", "RIVALIZE_API_KEY", "rivalize-mcp"],
"env": { "RIVALIZE_API_KEY": "rk_live_..." }
}
}
}
使用 -i 且不使用 TTY 執行容器,因為 MCP 使用標準輸入和標準輸出。不帶值的 -e RIVALIZE_API_KEY 會從用戶端的環境傳遞金鑰,因此它永遠不會出現在 docker run 命令列上。如有需要,請以相同方式新增 -e RIVALIZE_API_URL 或 -e RIVALIZE_MCP_ALLOW_WRITES。
隱私權政策
此伺服器是 Rivalize API 的精簡用戶端。
- 傳送的內容與目的地。 每次工具呼叫都會成為對 Rivalize API 的 HTTPS 請求,目標為
https://rivalize.ai,或您在RIVALIZE_API_URL中設定的來源。請求會以 Bearer token 攜帶您的 API 金鑰、User-Agent為rivalize-mcp/<version>,以及工具的引數:例如公司網域、搜尋詞、專案、報告或競爭者 ID,若啟用寫入功能,還包括您新增的競爭者 URL。若您設定HTTPS_PROXY或HTTP_PROXY,請求會透過該代理伺服器傳送。不會傳送到其他任何地方。 - 不會傳送的內容。 沒有遙測、分析或當機報告。它不會讀取您機器上的檔案、您的對話或其他工具的輸出;它只會看到您的 MCP 用戶端傳遞給其自身工具的引數。
- 在本機儲存的內容。 無。它不會寫入任何檔案、保留任何快取,也不會在執行之間保存任何狀態。您的金鑰存放在 MCP 用戶端的設定中,而非此伺服器內。診斷訊息會傳送到 stderr,您的 MCP 用戶端可能會記錄這些訊息;它們絕不會包含您的 API 金鑰。
- Rivalize 如何處理請求。 API 會根據 rivalize.ai/privacy 的 Rivalize 隱私權政策處理這些請求。Rivalize 由 Downshift LLC 營運,該公司是這些資料的資料控制者。隱私問題請寄至 privacy@rivalize.ai。
安全性
請私下將漏洞回報至 support@rivalize.ai,主旨請包含「security」,不要公開在 issue 中。請附上套件版本(npm view @rivalize/mcp version,或上述的 User-Agent)、您做了什麼,以及發生什麼事。我們會確認您的回報,並持續通知您直到問題解決。
請將您的 API 金鑰視為憑證。將其保存在用戶端的 env 區塊或 shell 環境中,切勿放在共用或已提交的檔案中;若金鑰外洩,請在 Dashboard → Settings → API Keys 中撤銷。
貢獻
歡迎在 github.com/Downshift/rivalize-mcp/issues 提交錯誤回報和功能請求。帳戶與帳單問題請寄至 support@rivalize.ai。
若要在本機開發此伺服器:
npm ci
npm run typecheck
npm run build # emits dist/, which the rivalize-mcp bin runs
npm test # offline: every API call is mocked or served by a local fixture
server.json 是 MCP Registry 的條目。測試會根據官方 schema(收錄於 schema/)驗證它,並檢查其名稱、版本和套件是否與 package.json 相符。
變更紀錄
0.3.2
list_competitors現在會告訴您的助理如何挑選頂尖競爭者:當 API 回傳時,依據競爭者在您的 Brief 上的排名(brief.standing),否則依據momentum_score。threat_level被描述為其本質,即動量分數的區間,不再作為排名提供。- 當某列的排名仍在讀取中(
brief.state為deferred)時,list_competitors會再次請求同一頁,最多 4 次,每次間隔 1.5 秒。若 API 未回傳brief,則每次呼叫僅發出一次請求,與先前相同。 - 針對自架或非生產環境的 Rivalize 伺服器,401 提示及
add_competitor描述中的措辭更為清晰。
0.3.1
- 此儲存庫歷史的起點版本:十三個唯讀工具、可選的
add_competitor寫入工具、回應保持在 25,000 字元以下並提供明確分頁、代理伺服器支援,以及server.json中的 MCP Registry 條目。
授權
MIT,© 2026 Downshift LLC。請參閱 LICENSE。