Skip to content

Packages under your name

Every API ships an SDK, a CLI and an MCP server under the Startup's own name, built from the Verbs a Customer may call and versioned with the API.

Every API ships an SDK, a CLI and an MCP server under the Startup's own name. Each is built from the Verbs a Customer may call, and its major matches the API version.

One name everywhere

InterfaceAt Leaseline
SDKnpm install leaseline, pip install leaseline
CLInpx leaseline
MCP serverhttps://leaseline.app/mcp
Key variableLEASELINE_API_KEY, read by all three
Reference docshttps://leaseline.app/docs, with llms.txt and Markdown per page

The names come from the Publication, and none of them names the platform.

The same call four ways

Leaseline declares a Lease Noun, so each package lists leases the same way:

Terminal
curl "https://api.leaseline.app/leases?where=status%20%3D%20renewing" \
  -H "Authorization: Bearer $LEASELINE_API_KEY"

The MCP server gives an Agent four tools, search, fetch, try and do, that reach every Verb the Customer may call.

Only what a Customer may call

The OpenAPI document, the SDK types and the MCP tool list carry only the Verbs in the Product file. Operator Verbs, such as Offer.publish, stay out, so a Customer's Agent spends no context on calls it cannot make.

Versioned with the API

Version.deploy points every Interface at one build, the packages included. A breaking Change ships v2 of the API and leaseline@2. Code on leaseline@1 keeps calling v1, and the versioning page explains the pin.