Skip to main content

AI2Web (ai2w) Python SDK - capability model, manifest builder, validator, negotiation, server handler.

Project description

AI2Web Python SDK (ai2web)

CI

The Python reference implementation of the AI2Web protocol - for Django, Flask, FastAPI, or plain Python. Mirrors @ai2web/core.

from ai2web import ai2web, validate, handle

manifest = (
    ai2web({"name": "Example Store", "url": "https://example.com", "type": "ecommerce"})
    .capability("content")
    .capability("commerce", {"endpoint": "/ai2w/products", "checkout": True})
    .transports({"mcp": {"enabled": True, "endpoint": "/ai2w/mcp"}, "rest": {"enabled": True}})
    .auth({"methods": ["none", "oauth2"], "oauth2": {"pkce": True, "scopes": ["checkout"]}})
    .consent({"requires_user_approval_for": ["purchase"]})
    .contact({"support": "help@example.com"})
    .build()
)

result = validate(manifest)          # {'score': 90+, 'tier': 'Standard', ...}

# Serve every AI2Web route from one call (framework-agnostic):
res = handle({"manifest": manifest}, method, path, body, origin)

Modules

  • ai2web.manifest - fluent capability-model builder (ai2web(...), Manifest).
  • ai2web.validator - validate() + AI Readiness scoring (spec §9/§11).
  • ai2web.negotiator - negotiate() capability negotiation (spec §5).
  • ai2web.server - handle() framework-agnostic route handler.
  • ai2web.safety - is_safe_public_url() / assert_safe_public_url() SSRF guard.

Test

python tests/run.py     # dependency-free; includes the shared conformance contract

Requires Python 3.9+. Zero runtime dependencies.

Licence

MIT.

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

ai2web-0.2.0.tar.gz (10.4 kB view details)

Uploaded Source

Built Distribution

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

ai2web-0.2.0-py3-none-any.whl (10.0 kB view details)

Uploaded Python 3

File details

Details for the file ai2web-0.2.0.tar.gz.

File metadata

  • Download URL: ai2web-0.2.0.tar.gz
  • Upload date:
  • Size: 10.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ai2web-0.2.0.tar.gz
Algorithm Hash digest
SHA256 5e60729c5dc7c0b113b8a4cd56dc0d41be9bb8d3fb5c880cef7206ea2f062925
MD5 7b1d985db53fb661af0726ad861c0e4d
BLAKE2b-256 7854ae2c23007c33a2899444291b2a0d616a4fae510853af5cdea886dd30591d

See more details on using hashes here.

Provenance

The following attestation bundles were made for ai2web-0.2.0.tar.gz:

Publisher: publish.yml on ai2web-foundation/ai2web-python

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

File details

Details for the file ai2web-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: ai2web-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 10.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ai2web-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7d8fedbfcb9d80cb7cb72588c86a30602fe2c2d6615b52e9522ada5448a6d6e5
MD5 b9978b485b0e28811064ec810e7287af
BLAKE2b-256 864045fd6325f0dbce0e8aacaf6ee1a9f339374ff23ea7507aeb367650b1c1fd

See more details on using hashes here.

Provenance

The following attestation bundles were made for ai2web-0.2.0-py3-none-any.whl:

Publisher: publish.yml on ai2web-foundation/ai2web-python

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