Skip to content
Eden Engine

PyPI Package Metadata Lookup (Version, Dependencies, License, Release History)

omnial/x402-pypi-package-info

Given a PyPI package name, returns its latest version, summary, author, license, declared dependencies, supported Python versions, and ten release versions with upload dates (an early slice of the release history that may not be the newest releases). Returns an error instead when the package name does not exist on PyPI.

activeper callv3

Price

$0.0811 per call

You pay the price shown. If a call turns out to cost more than its quote, you pay the actual price, capped at twice the quote. No monthly minimum. Top-ups start at $5.00.

Data source

PyPI

Data from PyPI.

Use it

Your AI assistant does the work: it finds this tool, shows you the price first, runs it, and you are charged when the run finishes. There is nothing to set up for this tool in particular.

Connect once and your AI can find and run this tool, and any other it needs.

For developers: the calls your assistant makes
agent
// 1. search: find the tool
omnial_search({ query: "what you need" })

// 2. inspect: price and input schema
omnial_inspect({ tool: "omnial/x402-pypi-package-info" })

// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "omnial/x402-pypi-package-info" })

// 4. run: price the exact call first, then run it
omnial_execute({ tool: "omnial/x402-pypi-package-info", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "omnial/x402-pypi-package-info", input: { /* ... */ } })

// 5. settle: the call is charged when it finishes, nothing to do

Not connected yet? Point your MCP client at https://mcp.eden-engine.com/mcp, then copy a config for your client.

Pricing

Every charge this tool can incur.

ChargePrice
Per call
$0.0811
Updated
Oct 27, 2026

Input and output schemas

Input schema
input_schema.json
{
  "type": "object",
  "required": [
    "package"
  ],
  "properties": {
    "package": {
      "type": "string",
      "description": "The exact PyPI package (project) name, e.g. 'requests'."
    }
  },
  "additionalProperties": false
}
Output schema
output_schema.json
{
  "type": "object",
  "properties": {
    "code": {
      "type": "string",
      "description": "Present instead of the package fields above when the request errors -- observed as 'HTTP_400' for a package name with no matching PyPI project."
    },
    "name": {
      "type": "string",
      "description": "The package name, echoed back."
    },
    "author": {
      "type": "string",
      "description": "The package's declared author, as published in its own PyPI metadata -- typically 'Name <email>', though an alternate or empty format is possible."
    },
    "license": {
      "type": "string",
      "description": "Declared license, e.g. 'Apache Software License'."
    },
    "message": {
      "type": "string",
      "description": "Human-readable error message accompanying `code`."
    },
    "summary": {
      "type": "string",
      "description": "One-line package summary."
    },
    "version": {
      "type": "string",
      "description": "The current/latest published version."
    },
    "keywords": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Package keywords/tags. Often empty -- presumably a list of strings when a package declares any; item shape when populated is not documented."
    },
    "dependencies": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Declared dependency specifiers, as raw PEP 508 strings including any extras/markers."
    },
    "total_releases": {
      "type": "number",
      "description": "Total number of releases ever published for this package."
    },
    "python_versions": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Flattened list of Python-related trove classifiers observed on the package (specific version numbers mixed with implementation/status tags like 'CPython', 'PyPy', '2 - Beta') -- not a clean list of only version numbers."
    },
    "recent_releases": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "version": {
            "type": "string"
          },
          "upload_date": {
            "type": "string",
            "description": "ISO-8601 UTC timestamp."
          },
          "python_requires": {
            "type": [
              "string",
              "null"
            ],
            "description": "Per-release Python constraint. Observed null on every entry seen so far."
          }
        },
        "additionalProperties": true
      },
      "description": "Ten releases with upload dates, newest-first within the slice. For requests, these were early releases (2015-2016), not the package's newest."
    },
    "requires_python": {
      "type": "string",
      "description": "Declared Python version constraint, e.g. '>=3.10'."
    },
    "description_content_type": {
      "type": "string",
      "description": "MIME type of the package's long description, e.g. 'text/markdown'."
    }
  },
  "description": "A package's metadata record on a successful lookup, or an error code/message when the requested package name does not exist on PyPI.",
  "additionalProperties": true
}