Skip to main content

Make your API agent-ready in minutes. One declaration, every protocol.

Project description

usepaso

One paso. Every protocol.

Declare your API's agent capabilities once. UsePaso generates the MCP server. No protocol expertise required.

Self-hosted. Open source. Apache 2.0.

CI PyPI

Install

pip install usepaso

Quick Start

# Scaffold a declaration
usepaso init --name "MyService"

# Or generate from an existing OpenAPI spec
usepaso init --from-openapi ./openapi.json

# Check it
usepaso validate

# Preview what MCP tools will be generated
usepaso inspect

# Test a capability (without the consequences)
usepaso test list_issues -p org=acme -p project=web --dry-run

# Start the MCP server
usepaso serve

That's it. Your API is agent-ready.

What You Write

# usepaso.yaml
version: "1.0"

service:
  name: MyService
  description: My API service
  base_url: https://api.example.com
  auth:
    type: bearer

capabilities:
  - name: list_items
    description: List all items
    method: GET
    path: /items
    permission: read

  - name: create_item
    description: Create a new item
    method: POST
    path: /items
    permission: write
    consent_required: true
    inputs:
      name:
        type: string
        required: true
        description: Item name

What UsePaso Does With It

Each capability becomes an MCP tool. When an agent calls it, UsePaso makes the HTTP request to your API with proper auth, parameters, and error handling.

CLI

Command What it does
usepaso init Scaffold a usepaso.yaml template
usepaso init --from-openapi Generate from an OpenAPI spec
usepaso validate Check your declaration for errors
usepaso validate --strict Check for best practices (missing constraints, consent)
usepaso inspect Preview MCP tools that will be generated
usepaso test <capability> Test a capability against the live API
usepaso test --dry-run Same thing, minus the consequences
usepaso test --all --dry-run Verify all capabilities resolve correctly
usepaso serve Start an MCP server (stdio)
usepaso serve --verbose Serve with request logging
usepaso doctor Check your setup end-to-end
usepaso completion Output shell completion script (bash, zsh, fish)
usepaso version Print the version

Programmatic Usage

from usepaso import parse_file, validate

decl = parse_file('usepaso.yaml')
errors = validate(decl)

Connect to Claude Desktop

{
  "mcpServers": {
    "my-service": {
      "command": "usepaso",
      "args": ["serve", "-f", "/path/to/usepaso.yaml"],
      "env": { "USEPASO_AUTH_TOKEN": "your-token" }
    }
  }
}

Links

License

Apache 2.0

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

usepaso-0.4.0.tar.gz (37.0 kB view details)

Uploaded Source

Built Distribution

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

usepaso-0.4.0-py3-none-any.whl (30.6 kB view details)

Uploaded Python 3

File details

Details for the file usepaso-0.4.0.tar.gz.

File metadata

  • Download URL: usepaso-0.4.0.tar.gz
  • Upload date:
  • Size: 37.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for usepaso-0.4.0.tar.gz
Algorithm Hash digest
SHA256 649775d3e745bdeeacb60b05b0300802bd31ec2f3fbf74255df5dd9682d261c7
MD5 34c96313da63be00680de47f1b4bbfe5
BLAKE2b-256 a6cd391b5b414e69f24ff14e56dd595cb2ed18613f811a380b39d4e368b2a622

See more details on using hashes here.

Provenance

The following attestation bundles were made for usepaso-0.4.0.tar.gz:

Publisher: release.yml on 5h1vmani/usepaso

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

File details

Details for the file usepaso-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: usepaso-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 30.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for usepaso-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 59a96193daa81c4cc191a6e0874ed6fd74141519783d926021100a7b756672c7
MD5 1d99dbe3bfe657084323c3cd7e3bf8a7
BLAKE2b-256 fc1defc889b5405eb95c2380d0865c0ebe604b5f1495521d1875593e0e42ddf8

See more details on using hashes here.

Provenance

The following attestation bundles were made for usepaso-0.4.0-py3-none-any.whl:

Publisher: release.yml on 5h1vmani/usepaso

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