Install
$ agentstack add mcp-competlab-competlab-mcp-server ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
CompetLab MCP Server
[](https://modelcontextprotocol.io) [](https://www.typescriptlang.org/) [](https://opensource.org/licenses/MIT) [](#available-tools)
[](https://glama.ai/mcp/servers/competlab/competlab-mcp-server)
> Competitive intelligence for AI agents — see how LLMs rank your brand.
More B2B buyers are asking AI before they Google. CompetLab monitors competitors across 5 dimensions — including AI Visibility, which tracks how ChatGPT, Claude, and Gemini mention and rank brands. This MCP server gives your AI agent access to all of it: dashboards, historical data, alerts, and strategic briefings. No other CI platform does this.
Supported Clients
Works with any MCP-compatible client:
Quick Start
Two ways to connect — pick the one that fits your setup:
| | Remote Server | Local Server | | ------------- | ---------------------------------------------------------- | ------------------------------------- | | Transport | Streamable HTTP | stdio | | Setup | Zero install — just add URL | npm install && npm run build | | Best for | Most users — Claude Code, Cursor, VS Code, Windsurf, Cline | Claude Desktop, Glama, or offline use |
Get your API key: app.competlab.com > Organization Settings > API Keys
Option 1: Remote Server (recommended)
Server URL: https://mcp.competlab.com/mcp Auth: API key via CL-API-Key header (or api_key query parameter)
Claude Code
claude mcp add --transport http \
--header "CL-API-Key: YOUR_COMPETLAB_API_KEY" \
competlab https://mcp.competlab.com/mcp
Cursor
Add to .cursor/mcp.json:
{
"mcpServers": {
"competlab": {
"url": "https://mcp.competlab.com/mcp",
"headers": {
"CL-API-Key": "YOUR_COMPETLAB_API_KEY"
}
}
}
}
VS Code
Add to .vscode/mcp.json:
{
"inputs": [
{
"type": "promptString",
"id": "competlab-api-key",
"description": "CompetLab API Key (starts with cl_live_)",
"password": true
}
],
"servers": {
"competlab": {
"type": "http",
"url": "https://mcp.competlab.com/mcp",
"headers": {
"CL-API-Key": "${input:competlab-api-key}"
}
}
}
}
> Note: VS Code uses "servers" (not "mcpServers") and supports secure input prompts via ${input:id}.
Windsurf
Add to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"competlab": {
"serverUrl": "https://mcp.competlab.com/mcp",
"headers": {
"CL-API-Key": "YOUR_COMPETLAB_API_KEY"
}
}
}
}
> Note: Windsurf uses "serverUrl" (not "url").
Cline
Add to cline_mcp_settings.json (or configure via Cline UI > Installed > Advanced MCP Settings):
{
"mcpServers": {
"competlab": {
"url": "https://mcp.competlab.com/mcp",
"headers": {
"CL-API-Key": "YOUR_COMPETLAB_API_KEY"
},
"disabled": false
}
}
}
Claude Desktop / Claude Web
Claude Desktop and Claude Web only support URL-based auth (no custom headers). Use the api_key query parameter:
Go to Settings > MCP and add the server with this URL:
https://mcp.competlab.com/mcp?api_key=YOUR_COMPETLAB_API_KEY
Option 2: Local Server (stdio)
Run the server locally via stdin/stdout. Useful for Claude Desktop, Glama, or environments that prefer stdio transport.
git clone https://github.com/competlab/competlab-mcp-server.git
cd competlab-mcp-server
npm install
npm run build
Claude Code
claude mcp add --transport stdio \
--env COMPETLAB_API_KEY=YOUR_COMPETLAB_API_KEY \
competlab node dist/index.js
Claude Desktop
Add to your Claude Desktop config (claude_desktop_config.json):
{
"mcpServers": {
"competlab": {
"command": "node",
"args": ["dist/index.js"],
"cwd": "/path/to/competlab-mcp-server",
"env": {
"COMPETLAB_API_KEY": "YOUR_COMPETLAB_API_KEY"
}
}
}
}
Generic stdio
COMPETLAB_API_KEY=YOUR_COMPETLAB_API_KEY node dist/index.js
The server reads JSON-RPC from stdin and writes responses to stdout.
See [examples/](./examples/) for ready-to-paste config files for each client.
What is CompetLab?
Competitive intelligence for the AI era. One platform, 5 dimensions, monitored automatically:
| Dimension | What It Tracks | | ----------------- | ----------------------------------------------------------------------------------------------------------------- | | Tech & Trust | Tech stacks, security headers (grade A-F), trust signals (24 signals in 4 categories), robots.txt AI bot blocking | | Content | Sitemap analysis, content categorization (11 categories), URL changelog, content gaps | | Positioning | Homepage messaging, value props, CTAs, target audience, differentiators | | Pricing | Plans, billing models, free tiers, enterprise pricing, gap analysis | | AI Visibility | How ChatGPT, Claude, and Gemini rank your brand vs competitors (AI Visibility Score 0-100) |
AI Visibility is what makes CompetLab unique — no other CI platform tracks how LLMs recommend brands in real time.
> Start free trial (14 days, no credit card) | Learn more
Available Tools
11 groups. 33 tools. 30 are read-only; 3 are async-scan starters that create a scan record (start_tech_stack_scan, start_trust_signals_scan, start_agent_adoption_scan).
Projects & Competitors
| Tool | Description | | ------------------ | ----------------------------------------------------------------------------- | | list_projects | List all projects with status, competitor count, and last monitored timestamp | | get_project | Get project details with per-dimension monitoring freshness | | list_competitors | List all monitored competitors (includes your own domain for comparison) | | get_competitor | Get competitor details including monitored page URLs |
Tech & Trust Profile
| Tool | Description | | --------------------------- | ----------------------------------------------------------------------------- | | get_tech_trust_dashboard | Latest security headers, trust signals, tech stacks, DNS, robots.txt analysis | | get_tech_trust_history | Paginated history of monitoring runs | | get_tech_trust_run_detail | Full competitor-by-competitor data for a specific run |
Content Intelligence
| Tool | Description | | ------------------------ | -------------------------------------------------------------------------------------------- | | get_content_dashboard | Latest sitemap analysis, content categorization, strategic URLs, gap analysis | | get_content_history | Paginated history of monitoring runs | | get_content_run_detail | Full data for a specific content run | | get_content_changelog | Detected URL changes over time (new, removed, moved) — filterable by competitor and category |
Positioning
| Tool | Description | | ---------------------------- | ---------------------------------------------------------------------- | | get_positioning_dashboard | Latest homepage messaging, value props, CTAs, target audience analysis | | get_positioning_history | Paginated history of monitoring runs | | get_positioning_run_detail | Full data for a specific positioning run |
Pricing Intelligence
| Tool | Description | | ------------------------ | ---------------------------------------------------------------------- | | get_pricing_dashboard | Latest pricing plans, billing options, market statistics, gap analysis | | get_pricing_history | Paginated history of monitoring runs | | get_pricing_run_detail | Full data for a specific pricing run |
AI Visibility
| Tool | Description | | -------------------------------- | ------------------------------------------------------------------------------------------------ | | get_ai_visibility_dashboard | AI Visibility Scores, mention rates, per-provider breakdowns (OpenAI, Claude, Gemini) | | get_ai_visibility_history | Paginated history of AI visibility checks | | get_ai_visibility_check_detail | Full detail for a specific check with per-competitor rankings | | get_ai_visibility_trend | Track how LLM brand perception changes over time (up to 200 data points, filterable by provider) |
Strategic Briefing, Alerts & Schedules
| Tool | Description | | ------------------------ | --------------------------------------------------------------------------------------------- | | get_briefing | Synthesized competitive briefing across all dimensions — what changed, what it means, what to do. Defaults to the hub digest; pass sections to drill into deep- slots | | list_alerts | Competitive change alerts — filterable by dimension, severity, and competitor | | list_schedules | Monitoring schedules for all dimensions with enabled/disabled status and intervals |
Free Tools (no project setup required)
Run these against any public domain — no projectId needed. The sync tools return immediately; the async scans return a scanId you poll every 5–10 seconds.
| Tool | Description | | --------------------------- | ------------------------------------------------------------------------------------------------------------------------ | | check_sitemap | Live sitemap analysis — URL discovery, categorization by section, content gaps and depth | | check_ai_crawlers | Live AI-crawler access check via robots.txt + meta tags — GPTBot, ClaudeBot, Google-Extended, PerplexityBot, and others | | start_tech_stack_scan | Start async tech-stack detection (117 rules: tech / growth / engagement). Returns scanId | | get_tech_stack_scan | Poll a tech-stack scan by scanId — returns detected technologies with confidence scores when complete | | start_trust_signals_scan | Start async trust-signals analysis (34 signals across enterprise readiness, validation, social proof, authority, risk). Returns scanId | | get_trust_signals_scan | Poll a trust-signals scan by scanId — returns per-signal verdicts and tier verdict when complete | | start_agent_adoption_scan | Start async Agent-Adoption Check (25 checks: discoverability, access, readability, agent endpoints). Returns scanId | | get_agent_adoption_scan | Poll an Agent-Adoption Check by scanId — returns complete results when finished | | fetch_url | Fetch any URL with JS rendering and bot-protection handling. Returns body, headers, cleanStats. Optional cleanHtml strips noise for LLM token-cost savings. 60 req/min per API key |
All paginated tools accept page and limit parameters. Check pagination.hasMore in the response to fetch more pages.
Example Prompts
Once connected, try asking your AI agent:
- "What changed on my competitors' pricing pages this week?"
- "How does ChatGPT rank my brand vs competitors for [industry query]?"
- "Show me the strategic briefing — what should I fix first?"
- "Compare content strategies across all my tracked competitors"
- "What critical alerts fired in the last 7 days?"
- "Track how my AI visibility score changed over the last 3 months"
- "Which competitors have better security headers than us?"
- "Run a tech-stack scan on stripe.com — what are they using?"
- "Check if openai.com blocks AI crawlers in their robots.txt"
- "Fetch g2.com/some-listing with cleanHtml and summarize the page"
See [examples/prompts.md](./examples/prompts.md) for more prompts organized by use case.
Authentication
Getting an API key
- Sign up at app.competlab.com/register (free 14-day trial, no credit card)
- Go to Organization Settings > API Keys
- Create a new key — it starts with
cl_live_
Two authentication methods
| Method | When to use | Example | | ----------------------------- | ----------------------------------------------------------------- | ------------------------- | | CL-API-Key header | Claude Code, Cursor, VS Code, Windsurf, Cline | CL-API-Key: cl_live_... | | api_key query parameter | Claude Desktop, Claude Web, clients without custom header support | ?api_key=cl_live_... |
One API key covers your entire organization. Most tools are read-only; the three start_*_scan tools create scan records under your account (no edits to existing data). The fetch_url tool is rate-limited at 60 req/min per API key (tighter than the 1000/min default for other free tools).
Pricing
MCP access is included with every CompetLab subscription ($99/mo). Free trial includes full MCP access.
Troubleshooting
| Issue | Fix | | ---------------------------- | ---------------------------------------------------------------------------------------------------- | | Connection refused / timeout | Verify the URL is exactly https://mcp.competlab.com/mcp with no trailing slash | | api_key_missing error | Ensure you're passing the key as CL-API-Key header (remote) or COMPETLAB_API_KEY env var (stdio) | | api_key_invalid error | Keys must start with cl_live_ and be exactly 40 characters | | Transport not supported | Use the remote HTTP server, or switch to the local stdio server |
Links
- [MCP Server Documentation](https://competlab
…
Source & license
This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: competlab
- Source: competlab/competlab-mcp-server
- License: MIT
- Homepage: https://competlab.com/developers/mcp
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.