Wraps the public Wappalyzer API to provide tools for identifying technologies used on websites, looking up domain subdomains, and accessing metadata for various software categories and technologies.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Wappalyzer MCPwhat technologies is stripe.com using?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Wappalyzer MCP
wappalyzer-mcp is a local stdio MCP server that wraps the public Wappalyzer API.
Requirements
Node.js 20+
A Wappalyzer API key in
WAPPALYZER_API_KEY
Install
cd /Users/elbert/Sites/wappalyzer/mcp
npm installRun
WAPPALYZER_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.
Tools
lookup_site
Inputs:
urlrequiredliveoptional, defaultfalsesetsoptional, default[]denoiseoptional, defaulttruemax_ageoptional, default2
Notes:
exactly one URL is accepted
recursive=falseis always forcedunsupported 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
}
}lookup_subdomains
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
}
}get_credit_balance
Output:
{
"credits": 99999
}Resources
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.
Client Config
Claude Desktop
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"
}
}
}
}Cursor
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"
}
}
}
}ChatGPT
Use a remote MCP deployment when you need ChatGPT MCP connector support.
Development
Run automated tests:
npm testRun live smoke tests with the local secret file:
npm run test:liveThis server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.