wappalyzer-mcp is a local stdio MCP server that wraps the public Wappalyzer API.
- Node.js 20+
- A Wappalyzer API key in
WAPPALYZER_API_KEY
cd /Users/elbert/Sites/wappalyzer/mcp
npm installWAPPALYZER_API_KEY=your_api_key npx wappalyzer-mcpEnvironment variables:
WAPPALYZER_API_KEYrequiredWAPPALYZER_API_BASE_URLoptional, defaults tohttps://api.wappalyzer.com/v2/WAPPALYZER_METADATA_BASE_URLoptional, defaults toWAPPALYZER_API_BASE_URLWAPPALYZER_HTTP_TIMEOUT_MSoptional, defaults to30000
The server fails fast on startup if WAPPALYZER_API_KEY is missing.
Inputs:
urlrequiredliveoptional, defaultfalsesetsoptional, default[]denoiseoptional, defaulttruemax_ageoptional, default2
Notes:
- exactly one URL is accepted
recursive=falseis always forced- unsupported async-only parameters are not exposed
setsis limited tolocale,email,phone,contact,social,meta,security,trackers,company,keywords,signals,createdAt,events, andall
Output:
{
"request": {
"url": "https://www.wappalyzer.com/",
"live": false,
"sets": [
"company",
"contact"
],
"denoise": true,
"max_age": 2,
"recursive": false
},
"data": {},
"credits": {
"spent": 1,
"remaining": 99999
}
}Inputs:
domainrequiredlimitoptional, default100afteroptional
Notes:
- exactly one domain is accepted
limitmust be between10and1000and a multiple of10
Output:
{
"request": {
"domain": "example.com",
"limit": 100
},
"data": {},
"credits": {
"spent": 1,
"remaining": 99999
}
}Output:
{
"credits": 99999
}wappalyzer://technologieswappalyzer://technologies/{slug}wappalyzer://categorieswappalyzer://categories/{slug}
These resources are read-only and fetch public metadata from:
GET /technologies/GET /technologies/{slug}/GET /categories/GET /categories/{slug}/
Metadata resources do not send the API key and are cached in-process for 5 minutes.
Add this to claude_desktop_config.json:
{
"mcpServers": {
"wappalyzer": {
"command": "node",
"args": [
"/Users/elbert/Sites/wappalyzer/mcp/index.js"
],
"env": {
"WAPPALYZER_API_KEY": "your_api_key"
}
}
}
}Add this to .cursor/mcp.json:
{
"mcpServers": {
"wappalyzer": {
"command": "node",
"args": [
"/Users/elbert/Sites/wappalyzer/mcp/index.js"
],
"env": {
"WAPPALYZER_API_KEY": "your_api_key"
}
}
}
}Use a remote MCP deployment when you need ChatGPT MCP connector support.
Run automated tests:
npm testRun live smoke tests with the local secret file:
npm run test:live