ipdata MCP by usefulapi
Look up location, network, company and threat data for IP addresses and ASNs in ipdata.
Description from the maker (original English)
Live npm and UNPKG data for AI agents: resolution, audits, import maps, malware/CVE checks.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Works in Claude on the web, desktop and mobile:
https://mcp.unpkg.com/mcpRun this in your terminal
claude mcp add --transport http unpkg https://mcp.unpkg.com/mcpPaste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"unpkg": {
"url": "https://mcp.unpkg.com/mcp"
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"unpkg": {
"type": "http",
"url": "https://mcp.unpkg.com/mcp"
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
ChatGPT connects only to servers on the internet:
https://mcp.unpkg.com/mcpMenu names can differ slightly by plan and over time.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Tool names and descriptions exactly as the server reported them on Nov 7, 2026. The maker wrote them, not us; we show them as plain text.
resolve_packageResolve a package name plus exact version, dist-tag, or semver range to the version that exists on npm today, with its browser entry points. Use this instead of recalling versions from memory.
list_filesList the real files inside an exact or resolvable package version via UNPKG ?meta. Use this before choosing a file path; never guess paths.
build_file_urlBuild a direct UNPKG file URL (the original file lookup) with a deliberate version policy, verifying the file exists when a path is given.
audit_dependenciesClassify a project's runtime dependencies for conversion to direct UNPKG file lookups, in framework context when given. Read the project's package.json yourself and pass its dependencies map; this tool checks each package against live npm/UNPKG data and returns convert_now / conv
verify_urlCheck that a UNPKG file URL actually resolves (follows redirects) before you put it in a project.
generate_importmapResolve a set of bare specifiers to UNPKG file URLs and return a ready-to-paste import map. Entry files are resolved live from each package.
check_importmapValidate an existing or proposed import map: every UNPKG URL resolves, files exist, versions are mutually consistent (including react/react-dom pairing and duplicate-version skew), loose specs are flagged, and framework-managed packages are errors when a framework is given or det
search_packagesSearch npm for a need (e.g. 'date picker', 'markdown parser') and annotate each result with browser readiness for direct UNPKG file lookup: browser-ready ESM, CommonJS-only, or unclear, with the entry file and size when known. Ranking is npm's relevance order; readiness is annota
estimate_migration_impactOrder-of-magnitude estimate of bandwidth offloaded (and hosting dollars, if a $/GB is given) when bytes move from first-party hosting to UNPKG. Range-based with explicit assumptions and caveats; it cannot forecast latency or Core Web Vitals. Get unpkgBytesPerPageLoad from audit_d
shield_whoamiReturn the Shield account, organization, and entitlements for the OAuth login on this connection. Requires an approved Shield account; anonymous connections get an authorization_required error with reconnect instructions.
shield_simulate_requestPreview what Shield would do for one package@version request (optionally with referer/origin) under the logged-in user's effective pin/block rules, using the same rule-matching semantics as the edge.
shield_check_packagesCheck exact package@version pairs against Shield intel: malware verdict (with review state) and CVEs affecting that version, including the first patched version. Works anonymously for packages you name (25 per call); Shield login raises the cap to 200. Domain data still requires
shield_domain_packagesList the caller's verified domains with package counts, or the packages Shield has observed on one domain. With includeThreats, one domain's packages come back annotated with malware verdicts and CVEs, ranked by the domain's own traffic. Requires Shield login.
shield_watchlist_statusReturn the logged-in org's monitored packages, blocklist entries, and pin policies as Shield currently holds them. Requires Shield login.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026
The registry name was verified with the GitHub account unpkg, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
Responded in 161 ms (HTTP 200)
No sign-in needed
Read 14 tool descriptions and found no hidden instructions to the AI
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 3 of 3 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs in the maker’s cloud. Connect over the internet with nothing to install, but what you send passes through the maker’s servers.
The GitHub repo last changed –, and the latest version (1.0.0) reached the registry today.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.
In the same category: ipdata MCP by usefulapi, MaxMind minFraud MCP by usefulapi, Lambda Labs MCP by usefulapi
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
Look up location, network, company and threat data for IP addresses and ASNs in ipdata.
MCP server for MaxMind minFraud — score transactions for fraud risk from your AI assistant.
Read GPU instances, types, images, filesystems and firewall rules; launch and terminate instances.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
A remote MCP server for UNPKG. It gives AI agents live npm and UNPKG data for direct UNPKG file lookups: https://unpkg.com/ @ / .
Agents often recall npm details incorrectly — versions that don't exist, file paths that were never published, Node entry points offered as browser modules. This server resolves versions, lists real package files, audits projects for UNPKG conversion, validates import maps, and checks packages for malware and CVEs, all from live data.
Deployed at https://mcp.unpkg.com (landing page at /, MCP endpoint at /mcp).
| Tool | Purpose |
|---|---|
resolve_package | Resolve an exact version, tag, or range to a real version and its browser entry points |
search_packages | Search npm, with results annotated for browser readiness |
list_files | List the real files in a package version, via the ?meta API |
build_file_url | Build a canonical file URL with a version policy (preserve, exact, patch, or range) |
audit_dependencies | Classify a package.json dependency map (convert_now / convert_carefully / keep_bundled / needs_review / not_found), with suggested URLs, an import map, and framework detection; packages already loading from UNPKG are reported separately from conversion candidates |
verify_url | Check that a UNPKG URL resolves |
generate_importmap | Generate an import map from bare specifiers |
check_importmap | Validate an import map as a whole: resolution, file existence, version consistency, and framework-managed packages |
estimate_migration_impact | Estimate bandwidth offload for a migration as a range with stated assumptions |
shield_check_packages | Malware verdicts and CVEs for exact package versions. Anonymous (25 per call; Shield login raises the limit to 200) |
shield_whoami | *(Shield login)* Account, organization, and entitlements for the connected user |
shield_domain_packages | *(Shield login)* Packages observed on your verified domains, optionally annotated with malware verdicts and CVEs ranked by traffic |
shield_simulate_request | *(Shield login)* Preview Shield's pin/block decision for a package version |
shield_watchlist_status | *(Shield login)* Your monitored packages, blocklist, and pin policies |
Every package the server resolves can also be checked against Shield's security data, in two ways:
shield_check_packages takes exact package@version pairs and returns, for each one, a malware verdict with its review state (confirmed or provisional), the CVEs that affect that version, and the first patched version to upgrade to. Verdicts and CVE matches are computed for the exact version asked about — a clean result never comes from checking a different version.audit_dependencies attaches the same verdict and CVE data to every version it resolves, so a flagged package is visible in the audit result next to its conversion recommendation.No account is needed for either: named-package checks are anonymous (25 per call), and audit enrichment works the same signed out. A provisional verdict is reported as provisional; it is not presented as confirmed malicious.
With a Shield login, the checks extend to your own estate: shield_domain_packages (with threats enabled) returns the packages observed on your verified domains annotated with verdicts and CVEs, ranked by each domain's traffic, so the packages that matter most surface first.
Example prompts:
lodash@4.17.20 safe to load? Check it for malware and CVEs, and tell me what to upgrade to."The general tools are anonymous. With a Shield account approved from the beta waitlist, your MCP client can also sign in via OAuth and the shield_* account tools unlock, scoped to your own organization.
Package-safety checks are not login-gated: shield_check_packages works anonymously for packages you name, and audit_dependencies includes verdicts and CVEs either way. Signing in adds your own domains, watchlist, and edge simulation.
audit_project_for_unpkg, convert_this_page, find_browser_package.unpkg://guidance/…), also served at GET /playbook.md.skill/unpkg/SKILL.md provides the same guidance to agents without MCP.Clients connect by URL. Per-client configuration is in examples/clients.md and in the picker on the landing page at https://mcp.unpkg.com/.
Claude Code:
claude mcp add --transport http unpkg https://mcp.unpkg.com/mcp
For agents without MCP, copy skill/unpkg/ into the client's skills directory. At the project level, you can also paste examples/AGENTS.snippet.md into your project's AGENTS.md.
With an agent connected, some useful prompts:
react@^18 with the UNPKG MCP — what's the resolved version and browser entry point? Now try a version of react that doesn't exist."preact@10.26.4/dist, build a patch-policy URL for the module file, and verify it resolves."lodash@4.17.20 safe to load? Check it for malware and CVEs, and tell me what to upgrade to."The server reports what it can verify and declines what it can't: import maps are validated as a system, audits keep framework-managed packages bundled, and estimates come back as ranges with assumptions rather than a single figure.
server.json in this repo is the listing manifest for the official MCP Registry, under the namespace io.github.unpkg/unpkg-mcp.
Publishing (maintainers): install the mcp-publisher CLI from the MCP Registry project, then from this repo:
mcp-publisher login github
mcp-publisher publish
Note: the organization namespace requires an owner-level GitHub credential — the interactive device flow only grants your personal namespace. Use a classic PAT with read:org scope (see the MCP Registry authentication docs), and revoke it afterwards.
The server is a remote endpoint, so most channels update themselves: connected clients see new tools as soon as the Worker deploys, Glama re-crawls this repo and the endpoint, skills.sh serves the skill from GitHub, and directory listings (awesome lists, mcp.so) are static entries that only change if the URL or description changes.
For a version release:
package.json, src/version.ts, server.json, plugin/.claude-plugin/plugin.json, plugin/plugin.json, and the plugin entry in .claude-plugin/marketplace.json. (Tests fail if any of these drift.)wrangler deploy).vX.Y.Z with release notes).mcp-publisher publish. Downstream directories (PulseMCP, Smithery, and others) ingest from the official MCP Registry, so this is the step that updates them.claude plugin marketplace update.This repo is also a Claude Code plugin (and its own plugin marketplace). The plugin lives in plugin/ and bundles the MCP server above with the unpkg skill, so one install gives Claude Code both:
claude plugin marketplace add unpkg/unpkg-mcp
claude plugin install unpkg@unpkg
Connecting the plugin is the same anonymous-by-default server at https://mcp.unpkg.com/mcp; Shield tools still sign in only when used.
pnpm install
pnpm dev # HTTP Worker on http://localhost:8787
For local client setup, use the same configurations as above with http://localhost:8787/mcp in place of the production URL.
pnpm test # unit, golden-project, and MCP protocol tests
pnpm typecheck # tsc --noEmit pnpm build # wrangler deploy --dry-run (production bundle check)
Layout: src/clients/ (npm, UNPKG, and Shield API clients), src/domain/ (audit, import-map checking, estimation, guidance), src/server.ts (MCP wiring). Golden projects in test/fixtures/projects/ pin audit classification behavior.
Environment (wrangler.jsonc vars): UNPKG_ORIGIN, NPM_REGISTRY, SHIELD_API_ORIGIN, OAUTH_ISSUER, OAUTH_RESOURCE, OAUTH_ENABLED.
audit_dependencies reports entry-file byte totals. estimate_migration_impact turns those, plus a traffic figure, into a bandwidth-offload range (and a dollar range when a $/GB rate is supplied). It does not forecast latency: where a site already serves from a capable CDN, latency is usually unchanged, and the practical gains are bundle size, cacheability, and how quickly patched versions reach users.