OpenAPI Specification
openapi: 3.1.0
info:
title: Klavis AI MCP Platform MCP Servers Tools API
description: Klavis AI is an open-source MCP integration platform for AI agents. The REST API manages hosted MCP servers, tool invocation, sandbox VM acquisition, and user/integration metadata. API key authentication is passed via the Authorization Bearer header; OAuth 2.0 is supported for third-party service flows.
version: v1
contact:
name: Klavis AI Developer Support
url: https://www.klavis.ai/docs
servers:
- url: https://api.klavis.ai
description: Klavis AI production server
security:
- BearerAuth: []
tags:
- name: Tools
description: List and invoke MCP server tools
paths:
/api/mcp-server/{server_id}/tools:
get:
operationId: listMcpServerTools
summary: List MCP Server Tools
description: List all tools available for a specific remote MCP server in various AI model formats.
tags:
- Tools
parameters:
- name: server_id
in: path
required: true
schema:
type: string
description: Identifier of the MCP server instance
- name: format
in: query
required: false
schema:
type: string
enum:
- openai
- anthropic
- gemini
- mcp
description: Tool schema format to return
responses:
'200':
description: List of available tools
content:
application/json:
schema:
$ref: '#/components/schemas/ToolListResponse'
'401':
$ref: '#/components/responses/Unauthorized'
/api/mcp-server/call-tool:
post:
operationId: callMcpTool
summary: Call Tool
description: Invoke a tool on a specific remote MCP server. Used by clients to perform function calls without writing per-tool MCP code.
tags:
- Tools
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CallToolRequest'
responses:
'200':
description: Tool invocation result
content:
application/json:
schema:
$ref: '#/components/schemas/CallToolResponse'
'401':
$ref: '#/components/responses/Unauthorized'
components:
schemas:
CallToolRequest:
type: object
required:
- serverUrl
- toolName
properties:
serverUrl:
type: string
format: uri
toolName:
type: string
toolArgs:
type: object
additionalProperties: true
connectionType:
type: string
enum:
- sse
- streamable_http
ErrorResponse:
type: object
properties:
error:
type: string
code:
type: integer
Tool:
type: object
properties:
name:
type: string
description:
type: string
parameters:
type: object
additionalProperties: true
CallToolResponse:
type: object
properties:
success:
type: boolean
result:
type: object
additionalProperties: true
error:
type: string
nullable: true
ToolListResponse:
type: object
properties:
tools:
type: array
items:
$ref: '#/components/schemas/Tool'
responses:
Unauthorized:
description: Missing or invalid API key
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
securitySchemes:
BearerAuth:
type: http
scheme: bearer
description: Klavis account API key passed via the Authorization Bearer header