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.
openapi: 3.2.0
info:
title: Kaiva Bridge Management No account API
version: 1.0.0
summary: Create, read and publish managed MCP servers from an OpenAPI spec, a GraphQL API, a database, documents or a remote MCP server.
description: 'The REST API behind the Kaiva Bridge console and the @kaiva/bridge CLI. It creates managed MCP servers from an OpenAPI or Swagger spec, a GraphQL endpoint, a PostgreSQL, MySQL, MariaDB or SQL Server database, uploaded documents or a remote MCP server, chooses which tools are exposed, publishes the server and creates the keys AI clients use.
Every request carries a management key: `Authorization: Bearer kv_mgmt_...`. An owner or admin creates one in the console under Keys & access (type Management), or `npx @kaiva/bridge login` approves a machine and saves one. A management key acts on its own workspace only, and it cannot create another management key. Gateway keys (`kv_live_...`) are for calling an MCP server and are refused here.
A published server is an MCP endpoint (Streamable HTTP) at `https://api.kaiv.ai/api/bridge/mcp/`. AI clients call it with MCP, not with this API. Claude, ChatGPT, Cursor, VS Code and Claude Code can sign in to it with OAuth 2.1 instead of a key.
Limits: 120 requests a minute per address; 60 document uploads a minute and 12 credential tests a minute per workspace.
The CLI''s source is public: https://github.com/ai-kaiva/bridge'
contact:
name: Kaiva support
email: support@kaiv.ai
url: https://kaiv.ai/bridge/docs
termsOfService: https://kaiv.ai/terms
servers:
- url: https://api.kaiv.ai/api/bridge/v1
description: Production
security:
- managementKey: []
tags:
- name: No account
description: A trial MCP server from a public spec, with no account.
paths:
/claimable:
servers:
- url: https://api.kaiv.ai/api/bridge
description: Production, no account
post:
tags:
- No account
operationId: createTrialServer
summary: Create a trial MCP server from a public OpenAPI spec, with no account
description: 'For AI agents. Returns a live MCP server with the spec''s GET operations as tools, a key for that one server, and a link a person opens to keep it. Unclaimed servers are deleted after 72 hours or 500 tool calls. Never send a credential; the spec must be public. Full rules: https://kaiv.ai/bridge/auth.md'
security: []
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
specUrl:
type: string
format: uri
description: A link to a public OpenAPI or Swagger spec. Send this or spec, not both.
spec:
type: string
description: The spec's text (900 KB at most).
name:
type: string
responses:
'201':
description: The trial server.
content:
application/json:
schema:
type: object
properties:
mcpUrl:
type: string
format: uri
description: The server's MCP address.
apiKey:
type: string
description: 'Shown once. Send as Authorization: Bearer <apiKey>.'
claimUrl:
type: string
format: uri
description: For the person. Whoever opens it can take the server.
expiresAt:
type: string
format: date-time
tools:
type: array
items:
type: object
additionalProperties: true
additionalProperties: true
'400':
$ref: '#/components/responses/BadRequest'
'409':
$ref: '#/components/responses/Conflict'
'413':
description: The spec text is too large; send its link.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'422':
description: The spec has no GET operations.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'429':
$ref: '#/components/responses/RateLimited'
'503':
description: Busy or paused; try again later, or sign up.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
components:
responses:
Conflict:
description: A name already in use, or the same request a moment ago.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
RateLimited:
description: Too many requests; wait a minute.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
BadRequest:
description: The request is missing something or has a value Bridge cannot use; the answer says which.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
schemas:
Error:
type: object
properties:
error:
type: string
description: A short code, or a sentence for errors in your request.
message:
type: string
securitySchemes:
managementKey:
type: http
scheme: bearer
bearerFormat: kv_mgmt_
description: A management key (kv_mgmt_...). Create one in the console under Keys & access, or run `npx @kaiva/bridge login`.
externalDocs:
description: Kaiva Bridge docs
url: https://kaiv.ai/bridge/docs