Server data from the Official MCP Registry
Competitor monitoring for AI agents: track rival pricing, docs and changelog changes with evidence.
About
Competitor monitoring for AI agents: track rival pricing, docs and changelog changes with evidence.
Security Report
This is a legitimate Competiflow API client that authenticates with a bearer key from an environment variable and sends requests only to the hardcoded HTTPS host api.competiflow.com, with no evidence of exfiltration, obfuscation, or shell execution. The main concerns are low-severity: resource IDs are interpolated into URL paths without encoding, and the destructive delete tools are exposed to the AI agent without confirmation. Permissions (network_http, env_vars, and reading its own package.json) match the stated purpose. Supply chain analysis found 2 known vulnerabilities in dependencies (0 critical, 1 high severity). Package verification found 1 issue.
3 files analyzed · 7 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
What You'll Need
Set these up before or after installing:
Environment variable: COMPETIFLOW_API_KEY
How to Install
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-nyku-competiflow-mcp": {
"env": {
"COMPETIFLOW_API_KEY": "your-competiflow-api-key-here"
},
"args": [
"-y",
"@competiflow/mcp-server"
],
"command": "npx"
}
}
}Documentation
View on GitHubFrom the project's GitHub README.
Competiflow MCP Server
MCP (Model Context Protocol) server for Competiflow. Use competitor monitoring as tools in Cursor, Claude Desktop, Windsurf, and any MCP-compatible client.
Track competitors, run discovery, read the interpreted change feed, triage items, and pull workspace digests without leaving your AI client.
Setup
Create an API key in the Competiflow dashboard under API keys, then add the server to your client config. COMPETIFLOW_API_KEY is the only variable you need.
Cursor
Add to ~/.cursor/mcp.json:
{
"mcpServers": {
"competiflow": {
"command": "npx",
"args": ["-y", "@competiflow/mcp-server"],
"env": {
"COMPETIFLOW_API_KEY": "sk_live_your_key_here"
}
}
}
}
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"competiflow": {
"command": "npx",
"args": ["-y", "@competiflow/mcp-server"],
"env": {
"COMPETIFLOW_API_KEY": "sk_live_your_key_here"
}
}
}
}
Windsurf
Add to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"competiflow": {
"command": "npx",
"args": ["-y", "@competiflow/mcp-server"],
"env": {
"COMPETIFLOW_API_KEY": "sk_live_your_key_here"
}
}
}
}
Available Tools
| Tool | API | Description |
|---|---|---|
list_workspaces | GET /v1/workspaces | List workspaces with review counts |
create_workspace | POST /v1/workspaces | Create a workspace (optional product_url) |
add_competitor | POST /v1/workspaces/:id/competitors | Add a competitor by homepage URL. Async discovery, idempotent on duplicate URL |
list_competitors | GET /v1/workspaces/:id/competitors | List competitors with monitors and last_run |
get_competitor | GET /v1/competitors/:id | Read one competitor |
update_competitor | PATCH /v1/competitors/:id | Set cadence or status on all its monitors |
delete_competitor | DELETE /v1/competitors/:id | Remove a competitor and all its history |
list_monitors | GET /v1/monitors | List monitors with status, cadence, and last_run |
get_monitor | GET /v1/monitors/:id | Read one monitor. Pass include for capture evidence |
create_monitor | POST /v1/monitors | Add a manual monitor on a specific URL |
update_monitor | PATCH /v1/monitors/:id | Update URL, cadence, status, or min_severity |
delete_monitor | DELETE /v1/monitors/:id | Remove a monitor and all its history |
check_monitor | POST /v1/monitors/:id/check | Queue an on-demand check |
refresh_workspace | POST /v1/workspaces/:id/refresh | Queue checks for active monitors |
list_changes | GET /v1/changes | Change feed with since, filters, and meta counts |
get_change | GET /v1/changes/:id | Full change. Pass include for capture or raw diff |
update_change | PATCH /v1/changes/:id | Set review_status |
get_digest | GET /v1/workspaces/:id/digest | Weekly workspace summary |
Typical flow
list_workspacesorcreate_workspace(optionalproduct_urlimproves competitive context on changes).add_competitorwith a homepage URL.get_competitoruntildiscovery_statusiscompleted.refresh_workspaceorcheck_monitorto pull fresh data.list_changeswithsince=7dandmin_severity, orget_digestfor a summary.get_changewithincludewhen you need evidence.update_changeto acknowledge or dismiss items.
Discovery and idempotency
add_competitor starts discovery in the background and returns an acknowledgement, not the finished result. Poll get_competitor until discovery_status is completed.
A workspace runs one discovery at a time. Posting the same homepage URL again returns the existing competitor without starting a second run. If a different competitor is still discovering, the call returns 409 discovery_in_progress with active_competitor_id so you know which one to poll.
Evidence with include
get_change and get_monitor accept an include array to attach the underlying capture in one call:
| Token | Available on | Returns |
|---|---|---|
capture | get_change, get_monitor | Extracted fields from the snapshot |
capture_markdown | get_change, get_monitor | Page markdown from the snapshot |
raw_diff | get_change | Before and after diff for the change |
For a change the capture is the post-change page. For a monitor it is the latest successful check, which is the current baseline.
Delete versus pause
delete_monitor and delete_competitor are permanent. They remove the monitor or competitor along with its check runs, snapshots, and changes. To stop checks while keeping intel history, call update_monitor or update_competitor with status: paused instead.
Agent guidelines (for AI clients)
- Poll discovery, do not assume: after
add_competitor, pollget_competitoruntildiscovery_statusiscompletedbefore reading changes. On409, poll theactive_competitor_idfrom the error. - Filter the feed: pass
since(1d,7d,30d, or ISO8601),min_severity,monitor_type(homepage,blog,docs,changelog,pricing), andreview_statustolist_changesinstead of pulling everything. Usemeta.countsfor inbox totals andnext_cursorto page. - Interpretation fields: changes and digest items expose
why_it_mattersfor competitive context.recommended_actionwas removed from the API. - Fetch evidence on demand: only add
includetoget_changeorget_monitorwhen you need the underlying capture. It adds payload. - Prefer pause over delete: default to
status: pausedwhen a user wants to stop a monitor. Reservedelete_*for permanent removal, since it drops history.
How it works
The server translates each tool call into a Competiflow v1 API request and returns structured JSON. Your agent sees interpreted changes, severity, and why it matters instead of raw page scrapes.
AI Agent → MCP Tool Call → Competiflow API → Interpreted Change Feed → Structured Response → AI Agent
Environment variables
| Variable | Required | Description |
|---|---|---|
COMPETIFLOW_API_KEY | Yes | Your Competiflow API key (sk_live_...) |
Get an API key
Sign up at competiflow.com and create a key under API keys.
Development
npm install
npm run build
COMPETIFLOW_API_KEY=sk_live_... node dist/index.js
License
MIT
Reviews
No reviews yet
Be the first to review this server!
More Developer Tools MCP Servers
Rea
Freeby Morluto · Developer Tools
Reverse engineer anything from your terminal or agent with one CLI and MCP server.
Paperclip
Freeby Paperclipai · Developer Tools
Trending hip-hop artist momentum scores across four cultural dimensions.
Git
Freeby Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
Fetch
Freeby Modelcontextprotocol · Developer Tools
Web content fetching and conversion for efficient LLM usage
Toleno
Freeby Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
MCP Marketplace
Freeby mcp-marketplace · Developer Tools
Search and install MCP servers from inside your AI client.
