Skip to main content

MCP tools reference

Yukta’s MCP server exposes 53 tools, 2 prompts and 3 resources at /mcp; this page lists each with its role and arguments. The tool count is taken from the @McpTool annotations in AppMcpTools.

Endpoint

Transport

  • Path: /mcp on the same address and port as the REST API, for example http://localhost:9858/mcp.
  • Protocol: streamable HTTP, stateless: each request stands alone. There is no standard-input transport.
  • Request size: a body above 1 MB is refused with HTTP 413.
Example

Authentication

  • Header: Authorization: Bearer <key> or X-API-Key: <key>, checked against the same yukta.api-keys as the REST API.
  • No key configured: the server accepts loopback requests only, and the effective role is ADMIN.
  • Refusal: a tool call the key’s role does not allow is refused with HTTP 403.
  • Session keys: a key limited to sessions can call a tool only with a sessionId argument that names one of its sessions. Tools that name no session and are open to such a key: list_plugins, list_ai_backends, get_plugin_details, get_session_creation_instructions, get_plugin_creation_guide, list_supervisor_engines, get_supervisor_engine, get_supervisor_contract, list_supervisor_presets, whoami.
  • Audit: control commands sent over MCP with a named key are recorded as key:<name>.

Roles

Over MCP, rollback_workflow and note_workflow_version need OPERATOR; check the REST API for the role of the equivalent REST calls.

Conventions

  • Tools return structured JSON. Every tool that takes an executionId also takes the sessionId that owns it; an unknown execution and an execution of another session give the same error.
  • Arguments in the tables: name is required, name? is optional.
  • A failed call returns a tool result marked as an error, with a message that names the problem and, where it helps, the next tool to use.
  • A refusal that names a supervisor is a decision of the owner, not an error to retry.
  • Text read from runs (get_execution_logs, get_execution_result, get_node_output, input requests) is untrusted data produced by plugins, workflows or agents; tool descriptions tell the client not to follow instructions found in it.

Author

Create, read and version sessions and workflows, and discover plugins.

Run

Start runs and read their state, logs, output and result.

Steer

Pause, stop, restart and step runs and nodes.

Supervisors

Configure supervisors, what they own, and who may send commands. See Supervisor shell.

Inputs

Read and answer the typed questions that nodes ask. See Glossary.

Credentials

Operate

Calls that count as heavy for rate limiting: start_workflow, and get_execution_logs with a filterPattern.

Prompts

Resources

Any other resource needs an unrestricted ADMIN key.

Limits