API

/web_api/mcp_call/execute

/web_api/mcp_call/execute ​

This page is built from the JSON Schema snapshot in the documentation repository. The snapshot is updated by a separate command from the main app catalog and is not rewritten when the site is built.

Request ​

main-app://schemas/api_mcp_testing/mcp_call/execute.request.json

REQUEST /web_api/mcp_call/execute

NameTypeRequiredConstraint
mcp_call_idintegerYesminimum 1
execution_confirmedanyYes-

Other top-level fields are not allowed.

Response ​

main-app://schemas/api_mcp_testing/mcp_call/execute.response.json

RESPONSE /web_api/mcp_call/execute

NameTypeRequiredConstraint
api_codeintegerYesconst 200
api_resultobjectYesother fields allowed
emptybooleanNo-

Other top-level fields are not allowed.

api_result ​

NameTypeRequiredConstraint
mcp_call_result_idintegerNominimum 0
mcp_call_idintegerNominimum 0
mcp_server_idintegerNominimum 0
mcp_server_snapshot_idintegerNominimum 0
team_idintegerNominimum 0
project_idintegerNominimum 0
mcp_call_result_executionenumNo"COMPLETED", "NOT_COMPLETED"
mcp_call_result_codeenumNo"SUCCESS", "TOOL_ERROR", "ADDRESS_DENIED", "REDIRECT_DENIED", "TIMEOUT", "NETWORK", "RATE_LIMITED", "AUTH_FAILED", "INSUFFICIENT_SCOPE", "PROTOCOL_ERROR", "RESPONSE_UNREADABLE", "RESPONSE_TOO_LARGE", "NOT_FINAL"
output_capture_statusenumNo"EMPTY", "CAPTURED", "UNSUPPORTED"
output_check_statusenumNo"NOT_APPLICABLE", "VALID", "INVALID"
content_capture_statusenumNo"FULL", "UNSTORED"
executed_urlstringNomaxLength 2048
protocol_adapter_versionstringNomaxLength 128
protocol_revisionstringNo-
http_statusinteger | nullNominimum 0
response_bytesinteger | nullNominimum 0
catalog_hashstringNo-
credential_generationintegerNominimum 0
access_subjectstring | nullNomaxLength 512
redaction_policy_versionstringNomaxLength 32
error_messagestring | nullNo-
started_atstringNo-
finished_atstringNo-
duration_msintegerNominimum 0
created_by_user_idintegerNominimum 0
created_atstringNo-

Source schema ​

The files below are copied from the snapshot unchanged. A $ref fragment is a separate block. The schemas are not merged.

Request: main-app://schemas/api_mcp_testing/mcp_call/execute.request.json
json
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "main-app://schemas/api_mcp_testing/mcp_call/execute.request.json",
  "title": "REQUEST /web_api/mcp_call/execute",
  "$comment": "execution_confirmed must be a user-session confirmation. A call from the MCP interface is refused.",
  "type": "object",
  "additionalProperties": false,
  "required": ["mcp_call_id", "execution_confirmed"],
  "properties": {
    "mcp_call_id": { "type": "integer", "minimum": 1 },
    "execution_confirmed": true
  }
}
Response: main-app://schemas/api_mcp_testing/mcp_call/execute.response.json
json
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "main-app://schemas/api_mcp_testing/mcp_call/execute.response.json",
  "title": "RESPONSE /web_api/mcp_call/execute",
  "allOf": [
    { "$ref": "main-app://schemas/_shared/envelope-success.json" },
    {
      "type": "object",
      "properties": {
        "api_result": { "$ref": "main-app://schemas/api_mcp_testing/mcp_call_result/row.json" }
      }
    }
  ]
}
Fragment: main-app://schemas/_shared/envelope-success.json
json
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "main-app://schemas/_shared/envelope-success.json",
  "title": "Canonical success envelope",
  "type": "object",
  "required": ["api_code", "api_result"],
  "properties": {
    "api_code": { "const": 200 },
    "api_result": true,
    "empty": { "type": "boolean" }
  },
  "additionalProperties": false
}
Fragment: main-app://schemas/api_mcp_testing/mcp_call_result/row.json
json
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "main-app://schemas/api_mcp_testing/mcp_call_result/row.json",
  "title": "Row mcp_call_result",
  "$comment": "Generated from the DB model structure_scheme. Edit the model, then run node fill-from-structure-scheme.mjs.",
  "type": "object",
  "additionalProperties": true,
  "properties": {
    "mcp_call_result_id": {
      "type": "integer",
      "minimum": 0
    },
    "mcp_call_id": {
      "type": "integer",
      "minimum": 0
    },
    "mcp_server_id": {
      "type": "integer",
      "minimum": 0
    },
    "mcp_server_snapshot_id": {
      "type": "integer",
      "minimum": 0
    },
    "team_id": {
      "type": "integer",
      "minimum": 0
    },
    "project_id": {
      "type": "integer",
      "minimum": 0
    },
    "mcp_call_result_execution": {
      "type": "string",
      "enum": [
        "COMPLETED",
        "NOT_COMPLETED"
      ]
    },
    "mcp_call_result_code": {
      "type": "string",
      "enum": [
        "SUCCESS",
        "TOOL_ERROR",
        "ADDRESS_DENIED",
        "REDIRECT_DENIED",
        "TIMEOUT",
        "NETWORK",
        "RATE_LIMITED",
        "AUTH_FAILED",
        "INSUFFICIENT_SCOPE",
        "PROTOCOL_ERROR",
        "RESPONSE_UNREADABLE",
        "RESPONSE_TOO_LARGE",
        "NOT_FINAL"
      ]
    },
    "output_capture_status": {
      "type": "string",
      "enum": [
        "EMPTY",
        "CAPTURED",
        "UNSUPPORTED"
      ]
    },
    "output_check_status": {
      "type": "string",
      "enum": [
        "NOT_APPLICABLE",
        "VALID",
        "INVALID"
      ]
    },
    "content_capture_status": {
      "type": "string",
      "enum": [
        "FULL",
        "UNSTORED"
      ]
    },
    "executed_url": {
      "type": "string",
      "maxLength": 2048
    },
    "protocol_adapter_version": {
      "type": "string",
      "maxLength": 128
    },
    "protocol_revision": {
      "type": "string"
    },
    "http_status": {
      "type": [
        "integer",
        "null"
      ],
      "minimum": 0
    },
    "response_bytes": {
      "type": [
        "integer",
        "null"
      ],
      "minimum": 0
    },
    "catalog_hash": {
      "type": "string"
    },
    "credential_generation": {
      "type": "integer",
      "minimum": 0
    },
    "access_subject": {
      "type": [
        "string",
        "null"
      ],
      "maxLength": 512
    },
    "redaction_policy_version": {
      "type": "string",
      "maxLength": 32
    },
    "error_message": {
      "type": [
        "string",
        "null"
      ]
    },
    "started_at": {
      "type": "string",
      "description": "timestamp Y-m-d H:i:s"
    },
    "finished_at": {
      "type": "string",
      "description": "timestamp Y-m-d H:i:s"
    },
    "duration_ms": {
      "type": "integer",
      "minimum": 0
    },
    "created_by_user_id": {
      "type": "integer",
      "minimum": 0
    },
    "created_at": {
      "type": "string",
      "description": "timestamp Y-m-d H:i:s"
    }
  }
}

Version 1.0.0 · Last updated 2026-10-07

Did this page help?