mrkeyoor.com_
Sun 04 Oct 07:41 UTC
Webevaluationupdated 04 Oct 2026

one-ip review

One IP is a Chinese-first web toolbox for IP lookups, routing checks, browser diagnostics, and AI service status; a full English README is available. It puts public network data and browser-side tests in one Cloudflare Workers app, with a small HTTP API and experimental WebMCP tools.

Verdict

Our One IP run installed 608 packages, used 647 MB, and passed both its 11-second build and 10-second test step, making the code easy to verify but heavier than the 5 MB checkout suggests. Use it when a Cloudflare-hosted network support page is more useful than several separate lookup sites. Wait for a longer release history if you need a settled platform, and keep WebMCP access away from fingerprint or WebRTC results unless the user has chosen to share them.

We ran it

Lab card: what happened when we ran one-ipScreenshot of one-ip (ip.huzhihui.com)
Install✓ · 23s608 packages · 647 MB
Build✓ · 11s
Tests✓ · 10sran, no count parsed
Repo282 files~30,854 lines of source · 5 MB · 2 CI workflows · tests dir

Answers from our run

Does one-ip build from source?

Dependencies installed in 23 seconds (608 packages), and the build succeeded in 11 seconds. We cloned commit 3d65314 into a clean Debian container with 3 CPUs and no project-specific setup.

Do one-ip's tests pass?

The test command failed in our container, and its output did not report a pass or fail count.

Who should not use one-ip?

Operators who need a documented Docker deployment: our checked commit had no Dockerfile, and Docker support remained an open pull request.

What are the alternatives to one-ip?

MyIP, IPQuality, Uptime Kuma. Our One IP run installed 608 packages, used 647 MB, and passed both its 11-second build and 10-second test step, making the code easy to verify but heavier than the 5 MB checkout suggests.

Setup4/5Build and tests passed; production expects Cloudflare Workers
Docs5/5Detailed Chinese guide with a complete English counterpart
Community3/51,026 stars, 8 open items, and a short public history
Maturity2/5Created in September 2026 with no tagged release yet

Who it’s for

Network operators who want a shareable dashboard for IP, DNS, CDN, RDAP, and routing checks.
Support teams diagnosing why a browser or egress path reaches one AI service but not another.
Cloudflare users comfortable deploying a Worker from a maintained fork.
Developers exploring same-page WebMCP tools with explicit handling for fingerprint and WebRTC data.

Who it’s NOT for

Operators who need a documented Docker deployment: our checked commit had no Dockerfile, and Docker support remained an open pull request.
Teams that cannot depend on public third-party data and probes: the README warns that rate limits and CORS restrictions can break lookups.
Buyers who need a mature release line: the repository was created in September 2026 and has no tagged GitHub release.
Anyone treating its reputation score as an official AI-platform risk decision: the README explicitly says it is only a reference.
Standard MCP deployments expecting a server for existing clients: One IP implements experimental browser WebMCP and requires browser support or an origin trial.

Setup reality

Our sandbox installed commit 3d65314 in 23 seconds, adding 608 pnpm packages and occupying 647 MB. The build passed in 11 seconds, and the available tests passed in 10 seconds.

Local development uses Node.js, pnpm, Vite, and a local Worker on port 8787. Core features need no application API key. Cloudflare deployment needs an account; GitHub Actions deployment also needs a Cloudflare API token and account ID. Turnstile, reCAPTCHA, and Tianditu are optional configurations.

The 5 MB checkout contained 282 files and about 30,854 source lines. It had 2 CI workflow files and a tests directory, but no Dockerfile. The documented production path uses Cloudflare Workers with Static Assets, and the /api/* routes require the Worker.

One dashboard combines IP, browser, and service checks

One IP gathers jobs that usually send a support engineer across several sites. It looks up IPv4 and IPv6 details, ASN and CIDR records, compares egress addresses, checks DNS and CDN behavior, runs Globalping probes, and reads RDAP registration data. Browser pages inspect FingerprintJS, CreepJS, WebRTC, permissions, and automation signals. Another view probes access to 8 named AI services and collects their official status feeds.

The breadth is useful during a vague complaint such as “Claude works here but not there.” It also needs restraint. The README says fields depend on each data source, public services can rate-limit requests, and CORS rules may block a check. HTTP response timing is different from ICMP ping. Treat the page as a collection of clues, then confirm a costly diagnosis with the source system or a controlled network test.

Cloudflare Workers is the supported production path

The deployment guide asks for a fork, a Cloudflare Worker connected to GitHub, Node.js 24, and pnpm 10.32.1. The build command is pnpm build, followed by pnpm deploy. Core features require no application environment variables or API keys. The /api/* routes do require the Worker, so uploading only the static dist directory does not reproduce the documented app.

A small endpoint at /api/ip/health returns JSON or terminal text without an API key. It reports the caller's egress IP or an explicit address, plus location, ISP, ASN, flags, and a third-party reputation score. Scores from 75 to 100 are labeled good, 45 to 74 moderate, and lower values poor. A proxy changes which egress the automatic mode sees, and local development requires the ip parameter.

What happened when we ran it

Our sandbox installed commit 3d65314 in 23 seconds, pulling 608 pnpm packages and using 647 MB on disk. The build succeeded in 11 seconds, and the available tests passed in 10 seconds. We ran it in an unprivileged container with 3 CPUs, 8 GB of RAM, Node 22, and no secrets. Those checks cover repository mechanics, not the accuracy or availability of its external data sources.

The checkout contained 282 files, about 30,854 source lines, and occupied 5 MB before installation. It has 2 CI workflow files and a tests directory. Our scan found no Dockerfile. An open pull request proposes Docker and Compose support, but unmerged code is not a deployment option we would promise to a buyer. The current README centers Cloudflare Workers with Static Assets.

Optional verification adds secrets and domain rules

Turnstile and reCAPTCHA v3 are optional. Each needs a site key, secret, and allowed hostnames; incomplete configuration hides the verification page. The server checks the reCAPTCHA hostname, browser_check action, and a score threshold of 0.5. Tianditu also takes an optional token for map access in mainland China, with OpenStreetMap as the documented fallback. None of these settings belongs in a public VITE_* variable.

GitHub Actions deployment adds CLOUDFLARE_API_TOKEN, CLOUDFLARE_ACCOUNT_ID, and an enable flag. External pull requests run tests without those deployment credentials. That separation is sensible, though a fork owner still has to rotate secrets and review upstream merges. The scheduled sync workflow checks daily at 04:23 UTC when enabled and stops on merge conflicts rather than discarding local changes.

WebMCP is experimental and handles sensitive results

Browsers exposing document.modelContext can register One IP tools for lookups, service checks, and browser diagnosis. The README names tools for listing available targets and opening pages that require permissions or human verification. Ordinary browsers keep the normal web interface. Live Chrome use currently needs the WebMCP origin trial or later native support, and this repository does not ship an origin-trial token.

The tools stay on the current origin and are not delegated to cross-origin iframes. That boundary helps, but the returned material can include a public egress IP, browser fingerprint, or WebRTC result. An agent does not need all of that for every query. Put a user decision before sensitive calls, retain as little output as possible, and do not present the site's IP score as an official verdict from ChatGPT, Claude, or another platform.

A September 2026 start makes this an early project

The repository was created on September 9, 2026 and last pushed on September 26. GitHub showed 1,026 stars, 5 open issues, and 3 open pull requests on October 4. There is no tagged GitHub release. The open queue includes requests around terminal output, Docker deployment, routing presentation, and privacy changes for cross-site probes, which fits a project still defining its operating edges.

The code is AGPL-3.0 licensed, while the README separately advertises a closed commercial edition for private deployment and support. Review the open license and the commercial boundary before adapting the service for an organization. One IP is already useful as a support desk on Cloudflare, and our 10-second test run gives the checked commit a credible starting point. Its next proof is time: tagged releases, merged deployment choices, and stable behavior when public providers fail.

Alternatives

ProjectWhat it isPick it when
MyIPA self-hosted IP and connectivity dashboard with several deployment options.pick this instead when IP visibility is the main job and you want another deployment model to compare.
IPQualityA command-line script that checks IP quality and media or service access.pick this instead when you want a terminal report rather than a browser dashboard.
Uptime Kuma gh↗A self-hosted monitor for ongoing endpoint availability and notifications.pick this instead when continuous uptime monitoring matters more than ad hoc IP and browser diagnosis.

What people are saying

  1. [velocity-scout] zhihui-hu/one-ip

Sources

  1. One IP repository and Chinese README
  2. One IP English README
  3. One IP open issues
  4. Docker deployment pull request 8

More web reviews

page-mascot · table · yeti · react-starter-kit · leptos · Vela · the whole board →