@pipeworx/technographics
Connect: https://gateway.pipeworx.io/technographics/mcp · Install: one-click buttons
Tools: 2
What a website is built with, read from the page itself. Keyless.
Tools
tech_detect(url)— the stack a site loads: ecommerce platform, payments, CMS, JS framework, analytics, marketing automation, chat, ad pixels, CDN, web server, visitor-identification tools. Each detection carries the evidence that produced it.tech_detect_coverage()— every technology the detector recognises, by category, and what it cannot see.
The route taken, and the licence reasoning
We wrote our own signatures. We did not use a Wappalyzer ruleset. That is the whole licence story and it is the part a future maintainer will need:
| Project | Licence | What it actually is |
|---|---|---|
enthec/webappanalyzer | GPL-3.0 | the maintained continuation of Wappalyzer’s fingerprints |
HTTPArchive/wappalyzer | GPL-3.0 | HTTP Archive’s fork of the same |
projectdiscovery/wappalyzergo | MIT | MIT code — its README states it uses data from the two above |
rverton/webanalyze | MIT | same shape: MIT code, Wappalyzer-lineage data |
Wappalyzer relicensed off MIT before going commercial and every maintained fork inherited the copyleft. An MIT wrapper does not change the licence of the database it consumes, so “use the MIT one” is not the escape it looks like.
What src/signatures.ts contains instead is our own expression of publicly observable
facts — that Shopify sets a _shopify_y cookie, that Cloudflare answers with cf-ray,
that Next.js emits __NEXT_DATA__. Those facts are not anyone’s property; a particular
curated database of them is. No GPL code or data is used, imported, or vendored.
What that costs: ~167 technologies across 29 categories, where a commercial set covers tens of thousands. That trade is stated in every response rather than hidden.
Two honest limits, carried on every response
- JavaScript is not executed. We read the HTML the server returned. Anything a tag manager injects client-side is invisible — and for this category that is a specific, large blind spot, not a rounding error, because tag managers are exactly how marketing tools get installed. A site showing only “Google Tag Manager” may be running a dozen tools underneath it.
- Absence is not evidence of absence. A technology missing from an answer may simply
be outside the signature set.
tech_detect_coverage()exists so a negative can be checked before it is trusted.
Evidence, not booleans
Every detection returns the string that matched — cookie _shopify_y,
response header x-vercel-id: …, resource https://js.stripe.com/v3. A detector whose
answers cannot be checked is one people stop trusting the first time it is wrong, and
during development this caught a real bug: vercel.com reported Mintlify because the
page merely names Mintlify in a customer logo. Patterns now key on what a technology
emits, never on a product name in prose.
Fetching a caller-supplied URL, safely
This tool fetches an address the caller chose, which is the one shape that turns a data
gateway into someone’s proxy into private space. So: http/https only, standard ports only,
and private, loopback, link-local (including cloud metadata at 169.254.169.254), CGNAT
and multicast addresses are refused. Redirects are followed manually with every hop
re-checked — a public URL that 302s to the metadata endpoint is the actual attack, and a
first-hop-only check does not stop it. Response bodies are capped at 1.5 MB.
Source
The live website. No third-party API, no key, no vendor.
Tools
- tech_detect — What a website is built with — the ecommerce platform, payment processor, CMS, JavaScript framework, analytics, marketing automation, chat widget, ad pixels, CDN, web server and visitor-identification
- tech_detect_coverage — Which technologies the website stack detector can recognise, listed by category, and what it cannot see. Use this before trusting a negative result — the detector covers a curated set, so a technology
Tools
-
tech_detect— What a website is built with — the ecommerce platform, payment processor, CMS, JavaScript framework, analytics, marketing automation, chat widget, ad pixels, CDN, web server and visitor-identification -
tech_detect_coverage— Which technologies the website stack detector can recognise, listed by category, and what it cannot see. Use this before trusting a negative result — the detector covers a curated set, so a technology