Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.
get_api_artifactsOne API's artifacts, grouped by type.
get_openapiThe primary OpenAPI for this API.
find_similar_apisAPIs that look like this one.
apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
resolveTurn a domain, URL or GitHub org into the provider it belongs to.
find_cohortsEvery scored population of providers in the catalog.
All 92 tools →
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/tomorrowlives-com:tomorrowlives-com-mcp-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Tomorrow Lives Engines MCP API
version: 2026-10-12.5
description: 'Reproducible, IP-clean assets for software agents: the same request returns the same bytes, and no image, video or voice model made any of it. Seven production engines (tagged Production engines) make print designs, materials, forms, characters, terrain, voice, and short videos and shots rendered in a queue. The Lab (tagged Lab, https://tomorrowlives.com/lab) holds research instruments, which answer a question instead of making an asset; today that is the pull engine, which measures whether one agent follows another beyond chance. Both share one account, one key and one endpoint. A Pull run is paid for by the same engine account as the seven production engines, from the same units, and there is no separate Pull plan: a run costs units, drawn first from the included units of the account''s pass or card plan, then from its unit packs (500 for $10.00), or on the free plan from the free allowance. An agent buys a 30-day pass with a shared payment token: $1.00 the first time (a one-time offer for a new owner), then $20.00, with 1,500 units each. A pass never renews. More units: 500 for $10.00 a pack, spent after the included units and kept until used. A person can subscribe by card: $1.00 the first month, then $20.00 a month, with the same units. It renews automatically until cancelled; cancel any time. Available in the United States. Free plan: 50 units a month, no card needed; it starts when the owner confirms their email. Queued renders need a pass or the card plan. We limit free plans and first-pass offers to prevent abuse. Docs: https://tomorrowlives.com/engines. Terms: https://tomorrowlives.com/engines/terms.'
termsOfService: https://tomorrowlives.com/engines/terms
servers:
- url: https://tomorrowlives.com
tags:
- name: MCP
description: The same verbs as MCP tools.
paths:
/api/agents/mcp:
post:
operationId: mcp
summary: 'The same verbs as MCP tools: Streamable HTTP, stateless, JSON responses, API…'
security:
- apiKey: []
requestBody:
content:
application/json:
schema:
type: object
description: A JSON-RPC 2.0 message (initialize, tools/list, tools/call)
example:
jsonrpc: '2.0'
id: 1
method: tools/list
responses:
'200':
description: A JSON-RPC response
'401':
description: No valid API key
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
error: unauthorized
message: send the engine API key as a bearer token
'413':
description: The input or the output is over its cap; a job stopped by the output cap is not charged
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
error: too_large
message: the request body is over its cap
'429':
description: A limit was hit; reset_at says when it lifts (also in Retry-After)
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
tags:
- MCP
description: 'A stateless Streamable HTTP endpoint speaking JSON-RPC 2.0: initialize, tools/list and tools/call. Each tool is one of the verbs at /api/agents/run/{verb}, with the same name, input and cost. Send the API key as the bearer.'
components:
schemas:
Error:
type: object
required:
- error
- message
properties:
error:
type: string
message:
type: string
limit:
type: string
enum:
- monthly_units
- free_plan_units
- not_eligible
- rate
reset_at:
type: string
format: date-time
retry_after_s:
type: integer
policy:
type: object
description: 'With error content_policy: the rule the input broke and the acceptable use policy''s address'
properties:
rule:
type: string
enum:
- trademark
- hate
- minors
- impersonation
acceptable_use_policy:
type: string
format: uri
securitySchemes:
apiKey:
type: http
scheme: bearer
description: An engine API key (tleng_...) from POST /api/agents/signup
x-limits:
units_per_period: 1500
pass:
days: 30
first_cents: 100
cents: 2000
renews: false
buy: /api/agents/subscribe
unit_pack:
units: 500
cents: 1000
spent_after: units_per_period
expire: false
buy: /api/agents/units
card_plan:
first_month_cents: 100
monthly_cents: 2000
renews: monthly, until cancelled
subscribe: /engines/subscribe
free_plan:
units_per_month: 50
queued_renders: need a pass or the card plan
starts_when: the owner confirms their email
max_input_bytes: 1048576
max_output_bytes: 52428800
output_hold_hours: 24
unit_costs:
art_schema: none
art_presets: none
art_materials: none
art_starter: none
art_check: none
art_render: 1 at 1200 pixels wide or less, 5 above
art_swatch: 1 at 512 or less, 2 above
material_bake: 1 at 512 or less, 2 at 1024
material_check: none
material_cost: none
material_apply: '1'
form_starter: none
form_check: none
form_apply: '1'
form_build: '1'
character_list: none
character_generate: 3 for a person at near detail; 1 at mid or far, for the lofted figure and for an animal
terrain_heightmap: '1'
city_plan: '1'
world_schema: none
world_starter: none
world_check: none
world_apply: '1'
world_heightmap: '1'
voice_speak: '1'
sound_list: none
sound_effect: '1'
video_schema: none
video_presets: none
video_examples: none
video_check: none
video_cost: none
video_still: 1, or with shots in the scene 1 plus 3 plus 1 for each 1.6 megapixels
video_render: 'from the engine''s cost report: design renders x megapixels / 45, plus frames x megapixels / 200, plus shot frames x megapixels / 1.6, plus 3 a shot clip (video_cost says it first); at most 600'
raster_schema: none
raster_check: none
raster_render: '3 plus 1 for each 1.6 megapixels: 4 at 1280x720, 5 at 1920x1080'
pull_schema: none
pull_prereg: none
pull_analyse: 1 for each 40,000 session-draws over a thousand events, at least 1 (300 default twin sessions cost 9); over 2, queued; at most 300
pull_twin: 1 for each 40,000 session-draws over a thousand events, at least 1 (300 default twin sessions cost 9); over 2, queued; at most 300
pull_cost: none
pull_schedule: '1'
pull_seal: '1'
pull_open: '1'
pull_close: '1'
pull_replay: '1'
pull_align: '1'
pull_lab: 1 for a one-dimensional reference; a theory document (one-dimensional or with a model) and reference skyrme or hopfion are queued and cost 1 for each 5 CPU-seconds of one thread the engine estimates from its lattice and steps (pull_cost says it first); at most 300
pull_practice: '1'
pull_call: '1'
queued:
verbs:
- video_still
- video_render
- raster_render
- pull_analyse
- pull_twin
- pull_lab
max_video_seconds: 60
max_long_side: 1920
max_short_side: 1080
max_fps: 30
max_units_per_job: 600
job_minutes: 40
max_output_bytes: 52428800
poll_wait_max_s: 25
pull:
units: ceil(sum over sessions of (draws + 200) x max(1, events / 1000) / 40000), at least 1
max_surrogates: 9999
max_twin_sessions: 1000
max_sessions: 200
max_events_per_session: 50000
max_twin_beats: 5000
immediate_units: 2
immediate_twin_sessions: 20
max_units_per_job: 300
cpu_seconds_per_unit: 15
quick_seconds: 30