MCP Server
Use StackScan from Claude, Cursor and other assistants.
On this page
What the MCP server is, and what it can do
The Model Context Protocol is an open standard that lets AI assistants use outside tools. Clients that speak it - including Claude Desktop, Claude Code, Cursor and Windsurf - can call StackScan the way you would, without you leaving the conversation.
- One connector, many clients. The same small server works in every MCP client. Configure it once per app.
- The assistant does the driving. You ask in plain English. It decides which lookup fits, calls it, and reads the answer back - including follow-ups like "now check the other five domains".
- Local by design. The server is a small Node process started by your own client with
npx. Your token lives in your config file, on your machine, and is sent only toapi.stackscan.com.
Things you can just say
- "What is example.com built on?"
- "Who's behind vercel.com? What industry, where are they, what's their LinkedIn?"
- "How many sites run Klaviyo, and in which countries?"
- "Here are 15 domains from my CRM. Which ones are on Shopify, and who are they?"
- "How many StackScan credits do I have left?"
Because the answers land inside the conversation, you can keep going: "drop the agencies and give me the rest as a CSV", "draft an outreach line for each based on their stack".
The six tools
check_credits- free. Balance, monthly allocation, and how much of this session's spend cap is used. The recommended first call to confirm the connection works.lookup_company- 1 credit. The company behind a domain: name, industry, city, country, address, LinkedIn profile. No match, no charge.lookup_domain_technologies- 1 credit. Technologies detected on a domain, grouped by category.lookup_technology- 1 credit. How many sites run a technology, and the countries where it is most used.lookup_companies- 1 credit per match. Up to 20 domains in one call, returned as a compact table. Charged only for domains that resolve.lookup_domains_technologies- 1 credit per match. Up to 20 domains' technology lists in one call, with an optional category filter.
All six are read-only lookups against StackScan's index. None of them can modify your CRM, your account, or anything else.
Installing the MCP server
Four steps, about five minutes. You need Node.js 18 or newer - check with node --version. There is nothing else to install: your client downloads the server automatically the first time it starts.
1. Get your two values
Sign in and open My Account → API Tokens. Create a token and copy it - it is shown once. Your workspace UUID is on the same page.
Token 1|AbCdEf... (starts with a number and a pipe)
Workspace UUID dbc9437e-0dcb-4e1b-af70-f12ec4c23304
2. Add it to your client
The JSON block is identical everywhere. Only the file it goes in differs. Paste your two values where the placeholders are and keep the quotes.
{
"mcpServers": {
"stackscan": {
"command": "npx",
"args": ["-y", "@stackscan/mcp-server"],
"env": {
"STACKSCAN_API_TOKEN": "paste-your-token",
"STACKSCAN_TENANT_ID": "paste-your-workspace-uuid"
}
}
}
}
- Claude Desktop - Settings → Developer → Edit Config, which opens
claude_desktop_config.json. If the file already hasmcpServers, add just the"stackscan"entry inside it. - Cursor - the same block in
~/.cursor/mcp.jsonfor everywhere, or.cursor/mcp.jsoninside one project. - Windsurf - the same block in
~/.codeium/windsurf/mcp_config.json. - Anything else that speaks MCP - it is a standard stdio server. Point your client at
npx -y @stackscan/mcp-serverwith the two environment variables.
Claude Code takes one command instead:
claude mcp add stackscan \
--env STACKSCAN_API_TOKEN=paste-your-token \
--env STACKSCAN_TENANT_ID=paste-your-workspace-uuid \
-- npx -y @stackscan/mcp-server
3. Restart the app
Quit it completely and reopen - closing the window is not enough. StackScan then appears in the connectors list.
4. Check it works
Ask "how many StackScan credits do I have?". That call is free, so it confirms the connection without spending anything.
All the settings
Everything is configured through environment variables in that same env block. Only the first two are required.
STACKSCAN_API_TOKEN(required) - your API token. Treat it like a password.STACKSCAN_TENANT_ID(required) - your workspace UUID, from the same page. Lookups are billed to this workspace's credits.STACKSCAN_SESSION_LOOKUP_CAP- how many charged lookups one session may make before the server refuses further ones. Default 25. Free calls never count.STACKSCAN_API_BASE- where the server sends requests. Defaults tohttps://api.stackscan.com; you will not normally change it.
MCP troubleshooting and common questions
StackScan is not in the list
The config file almost certainly has a JSON error, usually a trailing comma or a missing brace. Paste it into a JSON validator. If the JSON is clean, check node --version: the server needs 18 or newer.
"Rejected the API token"
The token was mistyped or has been revoked. Create a fresh one - they are shown only once.
"Denied access"
The workspace UUID does not match a workspace that token can use. Both values come from the same page; copy them together.
"Session lookup cap reached"
That is the built-in spend cap stopping a long run, as designed. Raise STACKSCAN_SESSION_LOOKUP_CAP if you meant it, or restart the client for a fresh session.
Credits, and a cap that protects them
Lookups draw on the same Bulk Lookup Credits as the dashboard and the API. The server tells the assistant its running total after every charged call.
- One credit per answer. A lookup that finds nothing is not charged, batches are charged per match, and checking your balance is always free.
- A spend cap, not just a rate limit. An assistant can loop far faster than a person clicks. The server stops after 25 charged lookups per session and says so, rather than quietly working through your balance.
Can StackScan read my conversations?
No. The only thing that reaches StackScan is the tool call itself: the domain or technology being looked up. The conversation stays between you and your assistant. The server runs on your machine and calls the API directly - there is no StackScan gateway in the middle.
How do updates work?
npx -y fetches the latest published version each time the client starts, so you are always current. To pin a version, use @stackscan/[email protected] in the args.
Does it cost anything on top of my plan?
No. The server is free and open source; lookups spend the same Bulk Lookup Credits as the dashboard, at the same rates.
Can my whole team use it?
Yes. Each person creates their own token in the shared workspace, and everyone's lookups draw on the workspace's credit balance. Revoke any token from the same page at any time.
Does it work with ChatGPT?
Not yet. ChatGPT's connectors point at remote, hosted MCP servers rather than launching a local one. Any client that runs local MCP servers works today; from anywhere else, the REST API is the same data.
I would rather call the API directly
Everything the MCP server does is a thin wrapper over the REST API, with the same endpoints and the same credits.