revnuvo
Give AI agents live intelligence about companies.
Official JavaScript SDK for the Revnuvo Company Intelligence API. Revnuvo observes company websites, technologies, DNS and infrastructure over time, detects meaningful changes, and returns evidence-backed, machine-readable intelligence — timestamped, confidence-aware, never invented.
- 🆓 Free developer tier: 100 intelligence calls/month (REST + MCP), no credit card → get a key
- 🔌 MCP included: one config line connects Claude/any MCP client → MCP docs
- ⚡ Zero dependencies, works in Node 18+, Bun, Deno, edge runtimes
- 💸 x402 support: agents without accounts pay per call in USDC on Base → x402 docs
Install
npm install revnuvo
60-second quickstart
import { Revnuvo } from "revnuvo";
const rv = new Revnuvo({ apiKey: process.env.REVNUVO_API_KEY });
// What technologies does this company use? (with evidence)
const techs = await rv.getCompanyTechnologies("hubspot.com");
console.log(techs.technologies);
// [{ name: "webflow", confidence: 0.85, evidence: "meta generator", ... }, ...]
// What changed at this company?
const changes = await rv.getCompanyChanges("stripe.com");
console.log(changes.changes);
// Which companies recently adopted Vue?
const signals = await rv.searchSignals({ technology: "vue", eventType: "technology_added" });
console.log(signals.signals);
// each signal: before/after state, evidence, confidence, signal_score, detected_at
The 9 canonical capabilities
| Method | Answers |
|---|---|
searchCompanies({query}) |
Which companies does Revnuvo observe? |
getCompany(domain) |
What do we know about this company? |
getCompanyState(domain) |
Full current observed state (HTTP + techs + scripts + DNS) |
getCompanyTimeline(domain) |
How did their stack evolve? |
getCompanyTechnologies(domain) |
What technologies do they use? (evidence per tech) |
getCompanyChanges(domain) |
What changed and when? |
searchSignals({technology,...}) |
Which companies recently adopted X? |
monitorCompany(domain) |
Watch this company for future changes |
verifyCompany(domain) |
What can be substantiated with evidence? |
Plus whoami() — your key's identity and remaining quota.
MCP (Claude, Cursor, any MCP client)
import { claudeDesktopConfig } from "revnuvo";
console.log(JSON.stringify(claudeDesktopConfig(process.env.REVNUVO_API_KEY), null, 2));
Paste into claude_desktop_config.json, then ask Claude: "What changed at stripe.com?" — full instructions: intel.revnuvo.site/docs/mcp.
CLI
npx revnuvo whoami # key + quota
npx revnuvo tech hubspot.com # detected technologies + evidence
npx revnuvo changes stripe.com # observed changes
npx revnuvo monitor acme.com # start monitoring
npx revnuvo mcp-config --key ... # print MCP config
Error handling
import { Revnuvo, RevnuvoError } from "revnuvo";
try {
await rv.getCompanyState("example.com");
} catch (e) {
if (e instanceof RevnuvoError) {
e.status; // 401 bad key · 404 not_observed · 429 quota/rate limit · 402 plan limit
e.code; // "monthly_quota_exhausted", "not_observed", "plan_limit", ...
}
}
Quota exhausted? The error tells you exactly where to upgrade (no "contact sales" wall), and agents can pay per call via x402.
Honesty
Revnuvo reports what was measured — observed technologies, infrastructure and changes with timestamps, confidence and evidence. It does not claim purchase intent, complete internet coverage, or predictive conclusions. Evidence is the product.
Links
- Quickstart · API reference · MCP · Claude setup
- Python:
revnuvo-intelon PyPI - Dashboard / free key: app.revnuvo.site
License
MIT
Metadata
Release files for revnuvo-intel 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| revnuvo_intel-0.1.1.tar.gz | 6.3 kB | Without provenance | Details for revnuvo_intel-0.1.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| revnuvo_intel-0.1.1-py3-none-any.whl | Python 3 | none | any | Details for revnuvo_intel-0.1.1-py3-none-any.whl |
Total release size: 12.7 kB
Release files / revnuvo_intel-0.1.1.tar.gz
| Download URL | revnuvo_intel-0.1.1.tar.gz |
|---|---|
| Size | 6.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ea86a3e24160209c91e05feeb6e65ed8bc7ce291ef240f118942f91d517fb9ee
|
|
BLAKE2b-256 checksum How to use checksums |
39d29601980db97431fdcd6c529db3fce700b5cecd5409b4a06d5f68516e8fe1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.14
|
Release files / revnuvo_intel-0.1.1-py3-none-any.whl
| Download URL | revnuvo_intel-0.1.1-py3-none-any.whl |
|---|---|
| Size | 6.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d83988d1bb6667a46dab11c8ca75157cbab15873d50ec2e10d6de52895f1eb2f
|
|
BLAKE2b-256 checksum How to use checksums |
c44c86f5c45914c2b06ab714f7dfc7cc555c362e3c4dc9859b6ea5bb3b226be7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.14
|
Security for revnuvo-intel 0.1.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.