Rivalize

官方

代理商的競爭情報:競爭對手拆解、定價、廣告、評論與動能。預設為唯讀。

你可以用 Rivalize MCP 做什麼?

  • 競爭者拆解 — 透過 teardown_competitor,要求對任何競爭者的定位、定價、廣告、社群曝光、評論、招聘與動能進行一次性的策略拆解。
  • 全域搜尋 — 使用 list_universe_companies,依關鍵字、類別或層級搜尋 Rivalize 跨客戶的追蹤公司資料集。
  • 報告導覽 — 使用 get_report,從已儲存的報告中提取特定章節或競爭者細節,例如定價或戰鬥卡。
  • 競爭者追蹤 — 使用 list_competitors,查看您所追蹤競爭者的動能分數、威脅等級與 Brief 排名。
  • 證據驗證 — 使用 get_evidence 與 get_freshness,檢查任何主張背後的來源,以及每位競爭者最近被觀察到的時間。
  • 新增競爭者 — 透過 add_competitor,選擇將競爭者 URL 加入專案,這會消耗點數並排入分析佇列。

文件

Rivalize MCP 伺服器

npm License: MIT

為您的 AI 助手提供具來源、標註日期的競爭情報,透過模型上下文協定(Model Context Protocol)運作。

功能說明

此伺服器將 Claude、Cursor 或任何其他 MCP 用戶端連接到 Rivalize。您的助手可以透過一次呼叫拆解競爭對手的定位、定價、廣告、社群、評論、招聘和動能,搜尋 Rivalize 所追蹤公司的資料庫,並讀取您 Rivalize 帳戶中的專案、報告、戰鬥卡、時間軸和證據。每個答案都來自 Rivalize 已收集的資料,附有日期和來源,而非來自模型的記憶。

伺服器預設為唯讀。當您透過 RIVALIZE_MCP_ALLOW_WRITES=1 選擇啟用時,會提供一個寫入工具 add_competitor。

快速開始

需要 Node.js 22 或更新版本 (node --version)。

  1. 在 rivalize.ai 建立帳戶。
  2. 在 儀表板 → 設定 → API 金鑰 下建立 API 金鑰。金鑰以 rk_live_ 開頭。任何方案的金鑰都可用,包括免費方案(免費方案會受到讀取速率限制)。
  3. 使用以下其中一個區塊將伺服器新增到您的用戶端。

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.aiRivalize 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 日誌中。常見原因:

  1. RIVALIZE_API_KEY 遺失或無效。 日誌顯示 rivalize-mcp: RIVALIZE_API_KEY is required,或表示金鑰看起來不像 Rivalize API 金鑰(必須以 rk_live_ 開頭)。將金鑰放入伺服器的 env 區塊並重新啟動用戶端。
  2. Node.js 版本低於 22。 執行 node --version 並安裝 Node.js 22 或更新版本。您的用戶端使用其自身 PATH 中先出現的 node 和 npx,這可能與您終端機中的不同。
  3. 沒有網路存取。 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。