Exposes four read-only tools that pull SMB business data from a Supabase backend: profile details, service lists with pricing, availability and booking info, and review summaries. Every call requires an X-Agency-API-Key header that scopes requests to a single agency's client roster, so you can only query businesses your agency manages. Designed to feed AI agents building "Agent Cards" for local businesses. If you're running a directory or lead gen platform and want Claude to answer questions like "What are the hours for this plumber?" or "How much do they charge for drain cleaning?" without touching your database schema, this gives you a clean HTTP transport layer. Built on Express, deployed to Railway, and logs every tool call for analytics.
Public tool metadata for what this MCP can expose to an agent.
search_clientsSearch Lead Stampede's public client directory. Returns matching businesses with contact info, services, and ratings. Supports filtering by city, business type, and free-text query across name, description, and industry.3 paramsSearch Lead Stampede's public client directory. Returns matching businesses with contact info, services, and ratings. Supports filtering by city, business type, and free-text query across name, description, and industry.
citystringquerystringbusiness_typestringget_clientReturns the full public Agent Card for a single Lead Stampede client by slug. Includes business details, contact info, services, hours, reviews, and booking URL.1 paramsReturns the full public Agent Card for a single Lead Stampede client by slug. Includes business details, contact info, services, hours, reviews, and booking URL.
slugstringlist_business_typesReturns the distinct business types available in the Lead Stampede public client directory.Returns the distinct business types available in the Lead Stampede public client directory.
No parameter schema in public metadata yet.
list_citiesReturns the distinct cities served by public Lead Stampede clients. Useful for discovering which locations have businesses in the directory.Returns the distinct cities served by public Lead Stampede clients. Useful for discovering which locations have businesses in the directory.
No parameter schema in public metadata yet.
The live backend that powers Lead Stampede Agent Cards. Exposes SMB business data as tools that AI agents can call over HTTP.
An Express server that implements four MCP tools:
| Tool | What it returns |
|---|---|
get_business_profile | Name, description, industry, service area, contact info |
get_services | List of services + pricing summary |
get_availability | Hours + booking URL (or phone/email fallback) |
get_reviews | Review count, average rating, summary |
Each request is authenticated via an X-Agency-API-Key header that maps to a
row in the agencies table in Supabase. Clients are scoped to their agency,
so one agency can never read another's data.
npm install
cp .env.example .env
Then edit .env and fill in:
SUPABASE_URL — your project URL (e.g. https://xlhxnlhxeprtzwbyepza.supabase.co)SUPABASE_SERVICE_ROLE_KEY — from Supabase → Project Settings → API → service_role secretPORT — defaults to 3000Never commit .env to git. It's already in .gitignore.
npm run dev
You should see:
Lead Stampede MCP server listening on port 3000
curl http://localhost:3000/health
# → {"status":"ok","timestamp":"..."}
curl -H "X-Agency-API-Key: YOUR_AGENCY_API_KEY" \
http://localhost:3000/mcp/tools
curl -X POST \
-H "X-Agency-API-Key: YOUR_AGENCY_API_KEY" \
-H "Content-Type: application/json" \
-d '{"arguments":{"client_slug":"grandinetti-molinar-law"}}' \
http://localhost:3000/mcp/tools/get_business_profile
Expected response:
{
"tool": "get_business_profile",
"result": {
"business_name": "Grandinetti & Molinar Law",
"description": "Austin-based law firm founded in 2002...",
"industry": "legal",
...
},
"response_ms": 42
}
SUPABASE_URLSUPABASE_SERVICE_ROLE_KEYnpm start.mcp-production.up.railway.app.mcp.leadstampede.io) at it via Railway → Settings → Domains.AI agent → POST /mcp/tools/:name → auth.js → tools.js → supabase.js
↓
analytics.js (fire-and-forget)
↓
mcp_tool_calls table
agentcards.leadstampede.io/{slug}.clients rows in Supabase.explorium-ai/vibeprospecting-mcp
io.github.compuute/lead-enrichment
dev.workers.selbyventurecap.cf-worker/apollo-salesforce-mapper
io.github.br0ski777/company-enrichment
com.mcparmory/apollo
mambalabsdev/mcp-gtm-tech-stack-signal-scraper