Skip to main content

Pay-per-call SSRF-safe web intelligence for AI agents through MCP and x402.

Project description

1cent Web Intelligence for AI Agents

Quality External health Glama connector Smithery LobeHub MCP Registry License

Give AI agents safe, bounded web intelligence without subscriptions, API keys or handing a crawler unrestricted network access. Start with three free MCP tools; pay only for the URL operation used. Production uses x402 v2, Base Mainnet USDC and PayAI.

Try the real safe fetch path in one command — fixed example.com, no payment:

curl -sS https://1cent.maxzoa.ru/v1/demo/live-pulse

Or preview one URL of your choice without payment, limited to one preview per client and UTC day:

curl -sS "https://1cent.maxzoa.ru/v1/demo/preview?url=https%3A%2F%2Fexample.com%2F"
  • MCP: https://1cent.maxzoa.ru/mcp
  • Free product demo: https://1cent.maxzoa.ru/v1/demo/pulse
  • Free live demo: https://1cent.maxzoa.ru/v1/demo/live-pulse
  • Live catalog/prices: https://1cent.maxzoa.ru/v1/catalog
  • Public trust status: https://1cent.maxzoa.ru/status.json
  • Buyer guide: https://1cent.maxzoa.ru/docs/getting-started
  • Browser purchase entry: https://1cent.maxzoa.ru/try
  • Outcome packages: https://1cent.maxzoa.ru/v1/products

Production exposes 32 paid REST/MCP operations plus three free MCP tools:

  • catalog.tools.search — find the correct operation and live price without a URL fetch;
  • demo.url.pulse — inspect a fixed precomputed output sample without payment or network access.
  • demo.live.pulse — run the real safe service against fixed example.com, rate-limited.

Public MCP discovery uses navigable dot-notation (web.url.status, web.site.openapi). Pre-0.6 underscore names remain accepted as compatibility aliases but are intentionally omitted from tools/list.

MCP also publishes one buyer prompt (choose_url_tool) and one static buyer-guide resource (onecent://buyer-guide). Every input field includes constraints, examples and machine-readable descriptions so agents can choose and call tools correctly on the first attempt.

Find 1cent

  • Official MCP Registry: ru.maxzoa/1cent;
  • Glama remote connector: https://glama.ai/mcp/connectors/ru.maxzoa/1cent;
  • Smithery: https://smithery.ai/servers/maxzoa27/onecent;
  • MCP.so: https://mcp.so/servers/1cent;
  • LobeHub: https://lobehub.com/mcp/maxzoa-1cent.
  • MCPServers.org: https://mcpservers.org/ru/servers/maxzoa/1cent.

Glama release verification uses the repository's onecent-glama stdio entry point. It loads the same MCP tool registry as production for schema inspection; it does not provide a payment bypass or a second implementation of paid URL operations.

Directory status is checked with dated evidence in Marketplace quality report. A page returning HTTP 200 alone is not counted as a successful listing: it must be searchable, current and installable.

Buyer setup starts with a no-payment diagnostic:

onecent doctor

Generate or install a secret-free MCP client configuration:

onecent install --client claude
onecent install --client cursor --apply
onecent install --client vscode --apply
onecent install --client codex

For MCP clients without native x402 signing, install the local Buyer Bridge:

pipx install "onecent[buyer] @ git+https://github.com/maxzoa/1cent.git"
onecent wallet set
onecent bridge --max-usdc-per-call 0.001 --daily-limit-usdc 0.01

Manual one-call approval is the default. The OS keyring holds the buyer secret; 1cent, remote MCP and catalog services never receive it. UNKNOWN outcomes are never retried. See Buyer Bridge for Claude, Cursor, VS Code and Codex setup.

The direct CLI also refuses a paid call unless the buyer explicitly supplies a maximum amount, confirms Base Mainnet and types the one-call confirmation. See examples/buyer-python and examples/buyer-node.

Node buyers can use the release package in packages/onecent-buyer:

cd packages/onecent-buyer
npm ci
npm exec -- onecent-buyer doctor

onecent watch provides finite, capped change monitoring. It is disabled by default, requires explicit Base network/asset/seller confirmations and stops on UNKNOWN without creating a new payment attempt.

PostgreSQL is the runtime source for tool availability and atomic Base USDC prices. Config values are clean-install fallbacks. Paid URL work begins only after successful payment checks.

Safety contract

  • public HTTP/HTTPS only; private, loopback, link-local and rebinding destinations fail closed;
  • strict input schemas; unknown fields rejected;
  • bounded redirects, response bodies, extracted text, concurrency and queue depth;
  • payment identifier, request fingerprint and idempotent replay protection;
  • UNKNOWN settlement never retried automatically;
  • no seller private key, buyer key, Docker socket or JavaScript execution on the server;
  • Streamable HTTP host/origin protection enabled for remote MCP.
  • optional signed x402 offers and settlement receipts use a dedicated Ed25519 did:web key; they never expose or reuse a buyer or seller private key.

Local quality checks

python -m venv .venv
.venv/Scripts/pip install --require-hashes -r requirements-dev.lock
.venv/Scripts/pip install --no-deps -e .
ruff check .
mypy
pytest -q
python scripts/validate_release.py
docker compose --env-file .env.example config
docker compose --env-file .env.example build
pip-audit --no-deps -r requirements.lock --progress-spinner off

Local Docker start

Copy .env.example to .env, replace placeholders, keep X402_ENVIRONMENT=testnet and X402_NETWORK=eip155:84532, then:

docker compose up -d --build
docker compose ps

Container UID/GID: 10001:10001. No host bind-mounted writable directory is required. This local example is intentionally testnet. Production mainnet activation requires owner approval, a fresh PostgreSQL backup, production preflight, development bypass disabled and rollback readiness.

Documentation

Licensed under Apache-2.0. See LICENSE and NOTICE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

onecent-0.7.0.tar.gz (108.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

onecent-0.7.0-py3-none-any.whl (120.2 kB view details)

Uploaded Python 3

File details

Details for the file onecent-0.7.0.tar.gz.

File metadata

  • Download URL: onecent-0.7.0.tar.gz
  • Upload date:
  • Size: 108.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for onecent-0.7.0.tar.gz
Algorithm Hash digest
SHA256 702c19c87aa4edb26693b7aa3227342c88822c159c8ebd4885f1def8f791f898
MD5 526fdbc663925339527631ea005521d0
BLAKE2b-256 4ffe649e50bbd07bddc2414f537fba13192752595ebce855766d3e2ffe5ea8b3

See more details on using hashes here.

Provenance

The following attestation bundles were made for onecent-0.7.0.tar.gz:

Publisher: publish-packages.yml on maxzoa/1cent

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file onecent-0.7.0-py3-none-any.whl.

File metadata

  • Download URL: onecent-0.7.0-py3-none-any.whl
  • Upload date:
  • Size: 120.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for onecent-0.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2f42dca995f7fc8c8deb273ed315140de025a75cbe604698dd5347a71f79666c
MD5 97de8118ac88f40c462dab5131718eaf
BLAKE2b-256 8ea88cca17e0e449c1c96b72fbbc5fa643f0c36b0f9d295578654117a5873ea5

See more details on using hashes here.

Provenance

The following attestation bundles were made for onecent-0.7.0-py3-none-any.whl:

Publisher: publish-packages.yml on maxzoa/1cent

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page