Wappalyzer ACTION
Get Technologies
Returns the details of technologies used on a specific URL. See the documentation
- Action
- Read only
- API key
- SDK
- MCP
IMPLEMENTATION
Call this tool
Connect a user's Wappalyzer account once, then configure and run Get Technologies from your backend or agent.
import { PipedreamClient } from "@pipedream/sdk"
const pd = new PipedreamClient({
projectId: process.env.PIPEDREAM_PROJECT_ID!,
clientId: process.env.PIPEDREAM_CLIENT_ID!,
clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
projectEnvironment: "production",
})
const result = await pd.actions.run({
id: "wappalyzer-get-technologies",
externalUserId: "{external_user_id}", // any stable ID for this user in your system
configuredProps: {
wappalyzer: { authProvisionId: "apn_xxxxxxx" },
urls: ["URLs"],
live: true,
},
})
console.log(result)curl -X POST https://api.pipedream.com/v1/connect/{project_id}/actions/run \
-H "Content-Type: application/json" \
-H "X-PD-Environment: production" \
-H "Authorization: Bearer {access_token}" \
-d '{
"external_user_id": "{external_user_id}",
"id": "wappalyzer-get-technologies",
"configured_props": {
"wappalyzer": { "authProvisionId": "apn_xxxxxxx" },
"urls": ["URLs"],
"live": true
}
}'// accessToken: mint a short-lived token with the Connect SDK — see the MCP guide
const transport = new StreamableHTTPClientTransport(
new URL("https://remote.mcp.pipedream.net/v3"),
{
requestInit: {
headers: {
Authorization: `Bearer ${accessToken}`,
"x-pd-project-id": "{project_id}",
"x-pd-environment": "production",
"x-pd-external-user-id": "{external_user_id}", // any stable ID for this user in your system
"x-pd-app-slug": "wappalyzer",
},
},
},
)
const mcp = new Client({ name: "my-agent", version: "1.0.0" })
await mcp.connect(transport)
const { tools } = await mcp.listTools()
// listTools() hands your model this tool's input schema, so it can
// fill the arguments itself:
const result = await mcp.callTool({
name: "wappalyzer-get-technologies",
arguments: {
urls: ["URLs"],
live: true,
},
})SCHEMA
Inputs
Pipedream supplies the connected account. Your application provides the operation-specific values below. Dynamic inputs are resolved against that user's account.
| Property | Type | Description |
|---|---|---|
urls URLs | string[] | Between one and ten website URLs. Example: https://example.com,https://example.org. Multiple URLs are not supported with recursive=false. Required |
live Live | boolean | Scan websites in real-time. Defaults to false to return cached results from our database (faster and more complete). If no record is found, live=true is automatically used instead. Use recursive=false to get live results in the same request. Optional |
recursive Recursive | boolean | Index multiple pages (follows internal website links for increased coverage). Defaults to true for best results. If no record is found or live=true is used, using recursive=true causes the request to be completed asynchronously, meaning technologies will not be included in the initial response and the website is being crawled. To get the results when they become available, use callback_url or repeat the request at a later time (free for up to one hour). A crawl can take up to 15 minutes. We recommend using callback_url or repeating the request up to three times every five minutes. When using both live=true and recursive=true, callback_url is required and requests cost two credits instead of one. Optional |
callbackUrl Callback URL | string | When an asynchronous request completes, a POST request is made to the callback URL with the results. A callback URL is an public endpoint hosted on your own server. Example: https://yourdomain.com/wappalyzer. Required when using both live=true and recursive=true. Optional |
denoise Denoise | boolean | Exclude low confidence results. Defaults to true. Setting this to false yields more results but is more likely to include false positives. Optional |
minAge Min Age | integer | Return results that have been verified at least once before min_age months ago. Defaults to 0 for most recent results. Use a higher value in combination with squash=false and max_age for historic results grouped by month (up to 12 months per request). Optional |
maxAge Max Age | integer | Return results that have been verified at least once in the last max_age months. Defaults to 2 for best results. To get the most up-to-date but fewer results, use max_age=1. For real-time results, use live=true instead. Use a higher value to get more but less recently verified results. These results are more likely to include websites that no longer use the technology. Use a higher value in combination with squash=false and optionally min_age for historic results grouped by month (up to 12 months per request). Optional |
squash Squash | boolean | Merge monthly results into a single set. Defaults to true. Set to false to group results by month. Optional |
REFERENCE
Tool details
Behavior hints are published with the component in the Pipedream registry and surface as MCP tool annotations, so an agent can reason about a tool before it calls it.
- Registry key
- wappalyzer-get-technologies
- Version
- 0.0.3
- App
- Wappalyzer
- Authentication
- API key
- Read-only
- Yes
- Destructive
- No
- Open world
- Yes
- Source
- View on GitHub ↗