Rivalize

resmi

Intelijen kompetitif untuk agen: pembongkaran kompetitor, harga, iklan, ulasan, dan momentum. Hanya-baca secara default.

Apa yang bisa Anda lakukan dengan Rivalize MCP?

  • Competitor teardown — Minta analisis strategi satu panggilan tentang positioning, harga, iklan, kehadiran media sosial, ulasan, perekrutan, dan momentum pesaing mana pun melalui teardown_competitor.
  • Universe search — Cari dataset lintas pelanggan Rivalize tentang perusahaan yang dilacak berdasarkan kata kunci, kategori, atau lapisan dengan list_universe_companies.
  • Report navigation — Ambil bagian tertentu atau detail pesaing dari laporan tersimpan Anda, seperti harga atau battlecard, menggunakan get_report.
  • Competitor tracking — Lihat skor momentum, tingkat ancaman, dan posisi Brief dari pesaing yang Anda lacak dengan list_competitors.
  • Evidence verification — Periksa sumber di balik klaim apa pun dan seberapa baru setiap pesaing diamati menggunakan get_evidence dan get_freshness.
  • Add competitors — Pilih untuk menambahkan URL pesaing ke proyek, yang menghabiskan kredit dan mengantrekan analisis, melalui add_competitor.

Dokumentasi

Server MCP Rivalize

npm License: MIT

Intelijen kompetitif yang bersumber dan bertanggal untuk asisten AI Anda, melalui Model Context Protocol.

Apa yang dilakukannya

Server ini menghubungkan Claude, Cursor, atau klien MCP lainnya ke Rivalize. Asisten Anda dapat membongkar positioning, harga, iklan, kehadiran sosial, ulasan, perekrutan, dan momentum pesaing dalam satu panggilan, mencari alam semesta Rivalize dari perusahaan yang dilacak, serta membaca proyek, laporan, battlecard, linimasa, dan bukti di akun Rivalize Anda sendiri. Setiap jawaban berasal dari data yang telah dikumpulkan Rivalize, dengan tanggal dan sumber, bukan dari ingatan model.

Server ini hanya-baca secara default. Satu alat tulis, add_competitor, tersedia saat Anda memilih dengan RIVALIZE_MCP_ALLOW_WRITES=1.

Memulai cepat

Membutuhkan Node.js 22 atau lebih baru (node --version).

  1. Buat akun di rivalize.ai.
  2. Buat kunci API di bawah Dasbor → Pengaturan → Kunci API. Kunci dimulai dengan rk_live_. Kunci dari paket apa pun berfungsi, termasuk paket gratis, yang mendapatkan pembacaan dengan batas kecepatan.
  3. Tambahkan server ke klien Anda menggunakan salah satu blok di bawah ini.

Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) atau %APPDATA%\Claude\claude_desktop_config.json (Windows), lalu mulai ulang 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

Tambahkan ke .cursor/mcp.json di proyek Anda, atau ~/.cursor/mcp.json untuk semua proyek:

{
  "mcpServers": {
    "rivalize": {
      "command": "npx",
      "args": ["-y", "@rivalize/mcp"],
      "env": { "RIVALIZE_API_KEY": "rk_live_..." }
    }
  }
}

Cline

Di Cline, buka panel Server MCP, pilih Konfigurasi, lalu Konfigurasi Server MCP. Ini membuka cline_mcp_settings.json. Tambahkan:

{
  "mcpServers": {
    "rivalize": {
      "command": "npx",
      "args": ["-y", "@rivalize/mcp"],
      "env": { "RIVALIZE_API_KEY": "rk_live_..." }
    }
  }
}

Simpan file. Server rivalize muncul dengan titik hijau setelah sekitar 10 hingga 15 detik (pengunduhan paket pertama kali). Di Windows, jika tidak dimulai, gunakan "command": "cmd" dan "args": ["/c", "npx", "-y", "@rivalize/mcp"].

Jika Anda meminta Cline untuk menginstalnya untuk Anda, arahkan ke llms-install.md.

Klien MCP apa pun (stdio)

Server berbicara MCP melalui stdin dan stdout. Konfigurasikan klien Anda untuk meluncurkan:

PengaturanNilai
Perintahnpx
Argumen-y @rivalize/mcp
LingkunganRIVALIZE_API_KEY=rk_live_...
Transportasistdio

Di Windows, beberapa klien tidak dapat meluncurkan npx secara langsung karena itu adalah npx.cmd. Gunakan cmd sebagai perintah dan /c npx -y @rivalize/mcp sebagai argumen sebagai gantinya.

Alat

Tiga belas alat hanya-baca selalu tersedia. add_competitor terdaftar hanya saat RIVALIZE_MCP_ALLOW_WRITES diatur ke 1, true, atau yes; tanpa itu, alat tidak ada untuk klien.

AlatAksesApa yang dilakukannyaArgumen kunci
teardown_competitorbacaPembongkaran strategi satu-panggilan dari pesaing sebagai Markdown: positioning, harga, iklan, sosial, ulasan, perekrutan, momentum, dan kelemahan untuk diserang, dengan kapan data terakhir disegarkandomain (wajib)
list_universe_companiesbacaCari alam semesta Rivalize, kumpulan data lintas-pelanggan dari perusahaan yang dilacakq, category (slug), layer, limit (1-100), offset
get_universe_companybacaProfil alam semesta lengkap untuk satu perusahaan: identitas, harga, fitur, iklan, sosial, ulasan, pendanaan, dan perekrutan, peringkat, sinyal, momentumdomain (wajib), layers
list_projectsbacaProyek di akun Anda; mengembalikan project_id yang diambil alat laintidak ada
list_reportsbacaLaporan Anda, terbaru terlebih dahulu. Membaca tidak pernah menghasilkan laporanproject_id, limit (1-100), offset
get_reportbacaSatu laporan sebagai Markdown, seluruhnya atau satu bagian atau satu pesaing pada satu waktureport_id (wajib), section, competitor, page
list_competitorsbacaPesaing yang Anda lacak, dengan skor momentum, pita tingkat ancamannya, dan, jika API menyediakannya, posisi setiap saingan di Brief Andaproject_id, limit (1-100), offset
get_competitor_intelligencebacaIntelijen tersimpan terbaru untuk satu pesaing yang dilacak; bidang hanya ada saat diukurcompetitor_id (wajib)
get_battlecardbacaBattlecard penjualan yang dikutip untuk satu pesaing yang dilacak. Membutuhkan paket Procompetitor_id (wajib)
get_strategic_timelinebacaLinimasa terkait-bukti dari pergerakan pesaing di seluruh harga, produk, orang, pendanaan, dan konten/sosialproject_id (wajib), days (30, 90, 180), competitor_id, lanes, format, page
get_competitive_landscapebacaPosisi mingguan saat ini atau tersimpan dari pesaing berdasarkan aktivitas dan kepentingan strategisproject_id (wajib), week (YYYY-MM-DD), format, page
get_freshnessbacaKapan setiap pesaing yang dilacak dalam proyek terakhir benar-benar diamati, dan bagaimanaproject_id (wajib)
get_evidencebacaSumber di balik fakta untuk produk Anda atau satu pesaing: URL, apa yang didukungnya, dan kapan dibacaproject_id (wajib), competitor_id
add_competitortulis, pilihTambahkan URL pesaing ke proyek. Menghabiskan kredit dan mengantrekan analisisproject_id (wajib), urls (1-10, wajib)

project_id dan competitor_id adalah UUID dari list_projects dan list_competitors. Alat yang membaca akun Anda hanya melihat data Anda sendiri.

Bagian laporan

get_report mengambil section sehingga asisten Anda dapat membaca bagian yang dibutuhkan pertanyaan alih-alih seluruh laporan:

BagianBerisi
tldr, biggest-threat, blind-spots, actionsBagian utama laporan (actions adalah apa yang harus dilakukan produk Anda)
battlecardsBattlecard penjualan yang dikutip
competitorsBagian setiap pesaing secara lengkap
pricing, momentum, app-store, strengths, weaknesses, key-findings, creators, ads, tech-stackSatu topik yang dikumpulkan dari bagian setiap pesaing

Laporan hanya memiliki bagian yang memiliki data; meminta nama lain mengembalikan kesalahan yang mencantumkan bagian yang dimilikinya. section menggabungkan dengan competitor, sehingga section: "pricing" dengan competitor: "Acme" mengembalikan harga Acme. Klaim yang dihapus pemeriksaan fabrikasi laporan muncul sebagai [removed — unverified], persis seperti di laporan.

Respons panjang

Setiap respons tetap di bawah 25.000 karakter, dan tidak ada yang dipotong secara diam-diam:

  • Markdown (get_report, get_strategic_timeline, get_competitive_landscape) dipecah menjadi halaman di batas bagian. Setiap halaman dimulai dengan Page N of M, berapa banyak yang tersisa, dan panggilan tepat untuk halaman berikutnya.
  • Daftar (list_universe_companies, list_competitors, list_reports) mengembalikan pagination.next_offset; lanjutkan darinya sampai itu adalah null.
  • Objek (get_universe_company, dan linimasa atau lanskap JSON) membatasi array panjang dan mencatat batas di _capped. Bidang yang masih tidak muat dicantumkan di _omitted dengan panggilan yang mengambilnya.

Contoh prompt

  • "Bongkar linear.app." (teardown_competitor)
  • "Siapa pemain di alat pengembang AI?" (list_universe_companies)
  • "Ringkas laporan terbaru saya, lalu tunjukkan apa yang pesaing saya kenakan." (list_reports, get_report dengan section: "pricing")
  • "Pesaing mana yang paling banyak bergerak kuartal ini, dan apa yang mereka lakukan?" (get_competitive_landscape, get_strategic_timeline)
  • "Beri saya poin bicara penjualan terhadap pesaing teratas saya." (list_competitors, get_battlecard)
  • "Dari mana klaim harga itu berasal, dan seberapa segar itu?" (get_evidence, get_freshness)

Konfigurasi

| Variabel | Wajib | Default | Deskripsi | |----------|---------|-------------| | RIVALIZE_API_KEY | ya | tidak ada | Kunci API Rivalize Anda. Harus dimulai dengan rk_live_; server keluar saat startup dengan pesan jika hilang atau salah format. | | RIVALIZE_API_URL | tidak | https://rivalize.ai | Asal API Rivalize. Kunci hanya berfungsi di server yang menerbitkannya: biarkan tidak diatur untuk rivalize.ai, dan untuk server Rivalize yang dihosting sendiri atau non-produksi atur ke asal server itu, atau setiap panggilan mengembalikan 401. | | RIVALIZE_MCP_ALLOW_WRITES | tidak | mati | 1, true, atau yes (huruf apa pun) mendaftarkan add_competitor. Nilai lain apa pun, atau tidak diatur, menjaga server hanya-baca. | | HTTPS_PROXY / HTTP_PROXY | tidak | tidak ada | Rute permintaan melalui proxy perusahaan. Bentuk huruf kecil juga dibaca, dan HTTPS_PROXY menang saat keduanya diatur. NO_PROXY dihormati. Kesalahan menyebutkan host proxy, tidak pernah kredensialnya. |

Pemecahan masalah

"Koneksi ditutup"

Saat server tidak dapat dimulai, banyak klien hanya menampilkan "Koneksi ditutup" atau status gagal. Server mencetak alasannya sebagai baris pertama stderr-nya, dengan awalan rivalize-mcp:, dan sebagian besar klien menyimpan stderr di log MCP mereka. Penyebab umum:

  1. RIVALIZE_API_KEY hilang atau tidak valid. Log berbunyi rivalize-mcp: RIVALIZE_API_KEY is required, atau mengatakan kunci tidak terlihat seperti kunci API Rivalize (harus dimulai dengan rk_live_). Letakkan kunci di blok env server dan mulai ulang klien.
  2. Node.js lebih lama dari 22. Jalankan node --version dan instal Node.js 22 atau lebih baru. Klien Anda menggunakan node dan npx mana pun yang muncul pertama di PATH sendiri, yang dapat berbeda dari terminal Anda.
  3. Tidak ada akses jaringan. npx mengunduh paket pada pertama kali dijalankan, dan setiap panggilan alat menuju ke https://rivalize.ai (atau RIVALIZE_API_URL). Di belakang proxy perusahaan, atur HTTPS_PROXY. Kesalahan jaringan menyebutkan server dan kode penyebab, seperti ECONNREFUSED atau ENOTFOUND.

Untuk melihat pesan secara langsung, jalankan server di terminal dengan kunci yang sama:

RIVALIZE_API_KEY=rk_live_... npx -y @rivalize/mcp

Server yang sehat mencetak rivalize-mcp-server connected via stdio ke stderr dan menunggu input (tekan Ctrl+C untuk berhenti). Apa pun lainnya adalah alasan klien Anda tidak dapat terhubung.

Setiap panggilan mengembalikan 401

Kunci ditolak oleh server yang dikirim, dan kesalahan menyebutkan server itu. Periksa bahwa kunci belum dicabut, dan bahwa RIVALIZE_API_URL tidak diatur kecuali kunci diterbitkan oleh server Rivalize yang berbeda.

Alat mengatakan membutuhkan paket lebih tinggi

Pembacaan tersedia di setiap paket. Beberapa kemampuan, seperti battlecard dan riwayat linimasa atau lanskap lengkap, membutuhkan paket lebih tinggi; kesalahan menyebutkan yang mana dan menautkan ke rivalize.ai/pricing.

Docker

Repositori menyertakan Dockerfile yang membangun server stdio yang sama di Node 22 dan menjalankannya sebagai pengguna non-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_..." }
    }
  }
}

Jalankan kontainer dengan -i dan tanpa TTY, karena MCP menggunakan stdin dan stdout. -e RIVALIZE_API_KEY tanpa nilai meneruskan kunci dari lingkungan klien, sehingga tidak pernah muncul di baris perintah docker run. Tambahkan -e RIVALIZE_API_URL atau -e RIVALIZE_MCP_ALLOW_WRITES dengan cara yang sama jika Anda membutuhkannya.

Kebijakan Privasi

Server ini adalah klien tipis untuk API Rivalize.

  • Apa yang dikirim, dan ke mana. Setiap panggilan alat menjadi permintaan HTTPS ke API Rivalize di https://rivalize.ai, atau origin yang Anda tetapkan di RIVALIZE_API_URL. Permintaan membawa kunci API Anda sebagai token Bearer, sebuah User-Agent dari rivalize-mcp/<version>, dan argumen alat: misalnya domain perusahaan, istilah pencarian, proyek, laporan, atau id pesaing, dan, jika penulisan diaktifkan, URL pesaing yang Anda tambahkan. Jika Anda menetapkan HTTPS_PROXY atau HTTP_PROXY, permintaan melewati proxy tersebut. Tidak ada yang dikirim ke tempat lain.
  • Apa yang tidak dikirim. Tidak ada telemetri, analitik, atau laporan kerusakan. Alat ini tidak membaca file di mesin Anda, percakapan Anda, atau keluaran alat lain; alat ini hanya melihat argumen yang diteruskan klien MCP Anda ke alatnya sendiri.
  • Apa yang disimpan secara lokal. Tidak ada. Alat ini tidak menulis file, tidak menyimpan cache, dan tidak menyimpan status antar proses. Kunci Anda berada di konfigurasi klien MCP Anda, bukan di server ini. Pesan diagnostik dikirim ke stderr, yang mungkin dicatat oleh klien MCP Anda; pesan tersebut tidak pernah menyertakan kunci API Anda.
  • Apa yang dilakukan Rivalize dengan permintaan. API memprosesnya berdasarkan Kebijakan Privasi Rivalize di rivalize.ai/privacy. Rivalize dioperasikan oleh Downshift LLC, pengontrol data untuk data tersebut. Pertanyaan privasi dikirim ke privacy@rivalize.ai.

Keamanan

Harap laporkan kerentanan secara pribadi ke support@rivalize.ai dengan "security" di baris subjek, bukan di masalah publik. Sertakan versi paket (npm view @rivalize/mcp version, atau User-Agent di atas), apa yang Anda lakukan, dan apa yang terjadi. Kami akan mengakui laporan Anda dan memberi tahu Anda hingga masalah tersebut diselesaikan.

Perlakukan kunci API Anda sebagai kredensial. Simpan di blok env klien Anda atau lingkungan shell Anda, jangan pernah di file bersama atau yang dikomit, dan cabut kunci yang bocor di bawah Dashboard → Settings → API Keys.

Kontribusi

Laporan bug dan permintaan fitur diterima di github.com/Downshift/rivalize-mcp/issues. Untuk pertanyaan akun dan penagihan, kirim email ke support@rivalize.ai.

Untuk mengerjakan server secara lokal:

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 adalah entri MCP Registry. Tes memvalidasinya terhadap skema resmi (divendorkan di schema/) dan memeriksa bahwa nama, versi, dan paketnya cocok dengan package.json.

Changelog

0.3.2

  • list_competitors sekarang memberi tahu asisten Anda cara memilih pesaing teratas: berdasarkan posisi pesaing di Brief Anda (brief.standing) saat API mengembalikannya, jika tidak, berdasarkan momentum_score. threat_level dijelaskan sebagaimana adanya, rentang skor momentum, dan tidak lagi ditawarkan sebagai peringkat.
  • Saat posisi baris masih dibaca (brief.state adalah deferred), list_competitors meminta halaman yang sama lagi, hingga 4 kali, dengan jeda 1,5 detik. Terhadap API yang tidak mengembalikan brief, alat ini membuat satu permintaan per panggilan seperti sebelumnya.
  • Kata-kata yang lebih jelas dalam petunjuk 401 untuk server Rivalize yang dihosting sendiri atau non-produksi, dan dalam deskripsi add_competitor.

0.3.1

  • Versi tempat riwayat repositori ini dimulai: tiga belas alat hanya-baca, alat tulis add_competitor yang diikutsertakan, respons tetap di bawah 25.000 karakter dengan penomoran halaman eksplisit, dukungan proxy, dan entri MCP Registry di server.json.

Lisensi

MIT, © 2026 Downshift LLC. Lihat LICENSE.