# NPM Registry Package Lookup

> NPM Registry Package Lookup is a paid API for AI agents from api.maxwellinternational.ai, paid per call via x402, $0.005/call, status unknown (last checked 2026-09-30).

Looks up NPM package metadata including version, author, license, description, maintainers, and deprecation status by package name.

## Facts

- Endpoint: GET https://api.maxwellinternational.ai/v1/registry/npm?utm_source=zero.xyz
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-30
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/npm-registry-package-lookup-4a977631
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_GoDYtxxX0MRT4hmqireOT

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability npm-registry-package-lookup-4a977631
```

Example prompt: Can you look up the npm registry entry for the 'express' package and tell me the latest version, its license, and whether it's deprecated?

## When to prefer this

Choose this endpoint when you need programmatic, pay-per-call access to npm package metadata without relying on the public npm registry API directly — useful for agents that need to verify package details, check deprecation status, or audit license and authorship information as part of an automated workflow.

## Known failure modes

- Package not found — 'found' field returns false with no metadata
- Invalid package name format causes a 400 error
- Network or upstream npm registry unavailability causes a 500 or timeout
- Deprecated packages still return data but with deprecated=true and a deprecatedReason field

## How this service works

npm package card from the official registry: latest or a given version, description, license, maintainers, keywords, repository, dependencies count and publish dates. Required: name; optional: version. Cached.

## Output

Returns a JSON object containing the package SKU, name, found status, scope, author, license, current version, deprecated flag, deprecation reason, description, maintainers list (names and emails), and normalized package name.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET",
      "HEAD",
      "DELETE"
     ],
     "type": "string"
    },
    "headers": {
     "type": "object",
     "additionalProperties": {
      "type": "string"
     }
    },
    "queryParams": {
     "type": "object",
     "additionalProperties": {
      "type": "string"
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "sku": "registry.npm",
  "name": "express",
  "found": true,
  "scope": null,
  "author": "TJ Holowaychuk <tj@vision-media.ca>",
  "license": "MIT",
  "version": "5.2.1",
  "deprecated": false,
  "description": "Fast, unopinionated, minimalist web framework",
  "maintainers": [
   {
    "name": "wesleytodd",
    "email": "wes@wesleytodd.com"
   }
  ],
  "normalizedName": "express",
  "deprecatedReason": null
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/npm-registry-package-lookup-4a977631/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.maxwellinternational.ai](https://www.zero.xyz/host/api.maxwellinternational.ai/llms.txt)
