Residential and mobile proxy infrastructure with open-source SDKs, benchmarks, and tooling for scraping and browser automation.
| Repository | Registry | What it does |
|---|---|---|
nodemaven-python |
PyPI | Python SDK: builds and validates the gateway username, checks a proxy, and calls the account API |
nodemaven-rust |
crates.io | Rust SDK: a builder with typed errors, provider definitions, connection checks, and an account API client |
nodemaven-go |
pkg.go.dev | Go SDK: builds and validates the gateway username, checks a proxy, and calls the account API |
# Python
pip install nodemaven
# Rust
cargo add nodemaven
# Go
go get github.com/nodemaven/nodemaven-goThe SDKs keep the HTTP client under your control. They build the proxy configuration, validate what can be checked locally, and hand the result to the client or browser you already use. Each also has a client for the account API: sub-users, IP whitelist, usage statistics, and the location catalogue.
nodemaven-mcp is an MCP server that connects Claude, Cursor and other MCP clients to a NodeMaven account: geo-targeted proxy strings with sticky sessions, connection checks, a site check through the proxy, locations, traffic usage, sub-users and whitelisted IPs. Read-only by default; the tools that change the account are switched on explicitly. On PyPI and the official MCP Registry.
uvx nodemaven-mcp # with NODEMAVEN_APIKEY setskills is a Claude Code plugin: skills for proxy setup in code, the SDKs, the account API, Google scraping, proxy benchmarking and troubleshooting, with the MCP server included.
/plugin marketplace add nodemaven/skills
/plugin install nodemaven@nodemaven
google-browser-scraper is a self-hosted SERP API alternative: Google search results from a real browser through your own sticky proxy, from any provider.
It warms the proxy session with ordinary browsing, opens Google's results page, and checks whether Google served results or refused before parsing. Captchas and blocks are reported as such, never as an empty result. It runs as a CLI, a Python library, a local HTTP API, an MCP server, or a Docker image.
pip install google-browser-scraper
patchright install chromium
# or
docker run --rm ghcr.io/nodemaven/google-browser-scraper doctorproxy-benchmark is a reproducible benchmark harness for separating proxy, browser, host, handshake, and target-side failures.
It compares controlled combinations of:
- proxy providers, gateways, countries, and sticky sessions;
- plain HTTP clients, Chromium, patched browsers, CDP drivers, and anti-detect frameworks;
- target-side verdicts such as
ok,captcha,block,empty, and harness-levelerror; - browser fingerprints, TLS behavior, exit reputation, and host-level effects.
The raw JSONL rows are the source of truth. Result tables, denominators, confidence intervals, run IDs, and research notes are kept alongside the data rather than reduced to a single success-rate number.
Start here:
README ·
Full results ·
Research notebook ·
Quickstart
NodeMaven exposes residential and mobile proxies through a standard proxy gateway.
Targeting and session configuration are encoded in the proxy username, so the gateway can be used directly from tools and clients such as:
cURL · requests · httpx · reqwest · Go net/http · Playwright · Patchright · Puppeteer · Chromium-based automation
The SDKs are optional. Their role is to make that configuration safer and easier to work with in code, while leaving requests, browser lifecycle, connection pooling, retries, and application logic to your existing stack.
For product setup, authentication, targeting options, and account features, use the NodeMaven documentation.
Tip
🎁 2 GB of free traffic. No account yet? Sign up and enter the code GITHUB. Once per account.
The repositories here are built around a few simple rules:
- Measure before attributing. A failed request alone does not tell you whether the proxy, browser, host, handshake, or target caused it.
- Keep evidence reproducible. Benchmark conclusions should trace back to raw rows, parameters, and run IDs.
- Fail locally when possible. Configuration mistakes that can be identified before opening a socket should not become ambiguous gateway failures.
- Keep the transport yours. SDKs should integrate with existing HTTP clients and browser frameworks rather than replacing them.
- Corrections are part of the record. If a later experiment contradicts an earlier conclusion, the correction belongs beside the original evidence.
Issues and pull requests are welcome across the public repositories.
For benchmark findings, a contradiction backed by raw rows or a reproducible test case is especially useful. The goal is not to preserve a conclusion; it is to preserve enough evidence to check it.
See CONTRIBUTING.md.
Security reports: SECURITY.md.
Website · Documentation · PyPI · crates.io · pkg.go.dev · X · LinkedIn · Telegram · support@nodemaven.com