> ## Documentation Index
> Fetch the complete documentation index at: https://veryfront.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Get agent capabilities

> Resolve an agent definition and its available capabilities for the selected source target.

export const McpToolCall = ({tool, initialArguments = {}, requiresConfirmation = false}) => {
  const validateCall = function validateReferenceToolCall(token, text, requiresConfirmation, confirmed) {
    if (!token.trim()) return {
      error: "Paste a bearer token first."
    };
    let value;
    try {
      value = JSON.parse(text.trim() || "{}");
    } catch {
      return {
        error: "Arguments must be valid JSON."
      };
    }
    if (!value || typeof value !== "object" || Array.isArray(value)) return {
      error: "Arguments must be a JSON object."
    };
    if (requiresConfirmation && !confirmed) return {
      error: "Confirm the tool call before running it."
    };
    return {
      arguments: value
    };
  };
  const endpoint = "https://api.veryfront.com/mcp";
  const tokenStorageKey = 'veryfront.docs.mcpBearerToken';
  const escapeHtml = value => value.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;');
  const highlightJson = value => {
    const escaped = escapeHtml(value);
    return escaped.replace(/("(?:\\u[a-fA-F0-9]{4}|\\[^u]|[^\\"])*"(\s*:)?|\btrue\b|\bfalse\b|\bnull\b|-?\d+(?:\.\d+)?(?:[eE][+\-]?\d+)?)/g, match => {
      let color = '#f3f4f6';
      if (match.endsWith(':')) {
        color = '#7dd3fc';
      } else if (match.startsWith('"')) {
        color = '#86efac';
      } else if ((/true|false/).test(match)) {
        color = '#c4b5fd';
      } else if ((/null/).test(match)) {
        color = '#fcd34d';
      } else {
        color = '#67e8f9';
      }
      return `<span style="color: ${color}">${match}</span>`;
    });
  };
  const expandJsonStrings = value => {
    if (typeof value === 'string') {
      const trimmed = value.trim();
      if (trimmed.startsWith('{') && trimmed.endsWith('}') || trimmed.startsWith('[') && trimmed.endsWith(']')) {
        try {
          return expandJsonStrings(JSON.parse(trimmed));
        } catch {}
      }
      return value;
    }
    if (Array.isArray(value)) {
      return value.map(expandJsonStrings);
    }
    if (value && typeof value === 'object') {
      return Object.fromEntries(Object.entries(value).map(([key, nestedValue]) => [key, expandJsonStrings(nestedValue)]));
    }
    return value;
  };
  const formatJson = value => {
    try {
      return JSON.stringify(expandJsonStrings(value), null, 2);
    } catch {
      return String(value);
    }
  };
  const formatResponseText = text => {
    const trimmed = text.trim();
    if (!trimmed) return 'No response body.';
    try {
      return formatJson(JSON.parse(trimmed));
    } catch {}
    const ssePayloads = trimmed.split(/\n\n+/).flatMap(chunk => chunk.split('\n').filter(line => line.startsWith('data:')).map(line => line.slice(5).trim()).filter(Boolean));
    for (let index = ssePayloads.length - 1; index >= 0; index -= 1) {
      try {
        return formatJson(JSON.parse(ssePayloads[index]));
      } catch {}
    }
    return trimmed;
  };
  const readStoredToken = () => {
    if (typeof window === 'undefined') return '';
    try {
      return window.sessionStorage.getItem(tokenStorageKey) || '';
    } catch {
      return '';
    }
  };
  const writeStoredToken = value => {
    if (typeof window === 'undefined') return;
    try {
      if (value) {
        window.sessionStorage.setItem(tokenStorageKey, value);
      } else {
        window.sessionStorage.removeItem(tokenStorageKey);
      }
    } catch {}
  };
  const [token, setToken] = useState(readStoredToken);
  const [argumentText, setArgumentText] = useState(formatJson(initialArguments));
  const [status, setStatus] = useState('Ready');
  const [response, setResponse] = useState('No response yet.');
  const [copied, setCopied] = useState(false);
  const [confirmed, setConfirmed] = useState(false);
  const callTool = async () => {
    const validation = validateCall(token, argumentText, requiresConfirmation, confirmed);
    if (('error' in validation)) {
      setStatus(validation.error);
      return;
    }
    const parsedArguments = validation.arguments;
    setConfirmed(false);
    const body = {
      jsonrpc: '2.0',
      id: Date.now(),
      method: 'tools/call',
      params: {
        name: tool,
        arguments: parsedArguments
      }
    };
    setStatus('Calling tool...');
    setResponse(formatJson(body));
    try {
      const result = await fetch(endpoint, {
        method: 'POST',
        headers: {
          accept: 'application/json, text/event-stream',
          'content-type': 'application/json',
          authorization: `Bearer ${token.trim()}`,
          'x-veryfront-origin': 'docs-mcp-tool-page'
        },
        body: JSON.stringify(body)
      });
      const text = await result.text();
      setStatus(result.ok ? 'Response received.' : `Request failed with HTTP ${result.status}.`);
      setResponse(formatResponseText(text));
    } catch (error) {
      setStatus('Request failed.');
      setResponse(error instanceof Error ? error.message : String(error));
    }
  };
  const copyResponse = async () => {
    try {
      await navigator.clipboard.writeText(response);
      setCopied(true);
      setTimeout(() => setCopied(false), 1500);
    } catch {
      setStatus('Copy failed.');
    }
  };
  return <details className="api-try-operation not-prose">
    <summary>Try this tool</summary>
    <p>Replace sample arguments with values for your project or connected account. Calls run only when you select Run tool.</p>
    <div className="api-request-playground not-prose my-6 rounded-xl border border-gray-200 bg-white p-4 dark:border-gray-800 dark:bg-gray-950">
      <div className="mb-4">
        <div className="text-sm font-semibold text-gray-900 dark:text-gray-100">MCP tool call</div>
        <div className="mt-1 text-sm text-gray-600 dark:text-gray-400">
          Call <code>{tool}</code> against the Veryfront MCP endpoint.
        </div>
      </div>

      <label className="mb-2 block text-sm font-medium text-gray-900 dark:text-gray-100" htmlFor={`${tool}-token`}>
        Bearer token or API key
      </label>
      <input id={`${tool}-token`} className="mb-4 w-full rounded-md border border-gray-300 bg-white px-3 py-2 text-sm text-gray-900 dark:border-gray-700 dark:bg-gray-900 dark:text-gray-100" type="password" value={token} onChange={event => {
    const value = event.target.value;
    setToken(value);
    setConfirmed(false);
    writeStoredToken(value);
  }} placeholder="Paste API key or JWT" />

      <label className="mb-2 block text-sm font-medium text-gray-900 dark:text-gray-100" htmlFor={`${tool}-arguments`}>
        Arguments (JSON)
      </label>
      <textarea id={`${tool}-arguments`} className="mb-4 min-h-40 w-full rounded-md border border-gray-300 bg-white px-3 py-2 font-mono text-sm text-gray-900 dark:border-gray-700 dark:bg-gray-900 dark:text-gray-100" value={argumentText} onChange={event => {
    setArgumentText(event.target.value);
    setConfirmed(false);
  }} spellCheck={false} />

      {requiresConfirmation && <label className="api-request-confirmation mb-4 flex items-start gap-2 text-sm">
        <input type="checkbox" checked={confirmed} onChange={event => setConfirmed(event.target.checked)} />
        <span>{tool === 'veryfront__set_project_inference_policy' ? 'Replace the project inference policy with these arguments. Omitted constraints will be removed.' : 'Run this tool with these arguments.'}</span>
      </label>}
      <button disabled={status === 'Calling tool...' || requiresConfirmation && !confirmed} className="disabled:opacity-50 disabled:cursor-not-allowed rounded-md bg-gray-900 px-3 py-2 text-sm font-medium text-white hover:bg-gray-700 dark:bg-gray-100 dark:text-gray-950 dark:hover:bg-gray-300" type="button" onClick={callTool}>
        Run tool
      </button>

      <div className="mt-4 text-sm font-medium text-gray-900 dark:text-gray-100">{status}</div>
      <div className="mt-3 overflow-hidden rounded-md border border-gray-300 dark:border-gray-700">
        <div className="flex items-center justify-between bg-gray-100 px-3 py-2 text-sm font-medium text-gray-900 dark:bg-gray-900 dark:text-gray-100">
          <span>Output JSON</span>
          <button className="rounded border border-gray-300 bg-white px-2 py-1 text-xs text-gray-900 hover:bg-gray-50 dark:border-gray-700 dark:bg-gray-950 dark:text-gray-100 dark:hover:bg-gray-800" type="button" onClick={copyResponse}>
            {copied ? 'Copied' : 'Copy'}
          </button>
        </div>
      <pre className="max-h-96 overflow-auto whitespace-pre-wrap break-words bg-gray-950 p-4 text-sm text-gray-100">
        <code dangerouslySetInnerHTML={{
    __html: highlightJson(response)
  }} />
      </pre>
      </div>
    </div>
    </details>;
};

<div className="api-operation-signature">
  `veryfront__get_agent_capabilities`
</div>

## Access

No external-service connection is required. Use a Veryfront credential with access to the requested resources.

**Call type:** Read-only.

## Arguments

| Field | Type | Required | Description and constraints |
| - | - | - | - |
| `runtime_target_kind` | `string or null` | No | Provide the runtime target kind. |
| `target_environment_id` | `string or null` | No | Provide the target environment id. |
| `target_branch_id` | `string or null` | No | Provide the target branch id. |
| `source_target_kind` | `string` | No | Provide the source target kind. Values: `"project"`, `"main_branch"`, `"environment"`, `"preview_branch"`. |
| `project_reference` | `string` | No | Project identifier or slug that scopes the tool call. Minimum length: `1`. |
| `agent_id` | `string` | Yes | Provide the agent id. Minimum length: `1`. |

## Example request

Send this JSON-RPC request through an initialized MCP client. Replace sample identifiers and values before calling the tool. See [MCP client setup](/docs/cloud/getting-started/connect-mcp).

```json title="request.json" theme={null}
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "veryfront__get_agent_capabilities",
    "arguments": {
      "agent_id": "example"
    }
  }
}
```

## Result

The published output shape is summarized below. Inspect both the MCP response content and `isError` when handling a call.

| Field | Type | Required | Description and constraints |
| - | - | - | - |
| `agent` | `object` | Yes | Structured agent details returned by the tool. |
| `resolved_capabilities` | `object` | Yes | Structured resolved capabilities details returned by the tool. |

## Full schemas

<CodeGroup>
  ```json title="input-schema.json" theme={null}
  {
    "type": "object",
    "properties": {
      "runtime_target_kind": {
        "anyOf": [
          {
            "type": "string",
            "enum": [
              "main_branch",
              "environment",
              "preview_branch"
            ],
            "description": "Provide the runtime target kind."
          },
          {
            "type": "null",
            "description": "Provide the runtime target kind."
          }
        ],
        "description": "Provide the runtime target kind."
      },
      "target_environment_id": {
        "anyOf": [
          {
            "type": "string",
            "format": "uuid",
            "description": "Provide the target environment id."
          },
          {
            "type": "null",
            "description": "Provide the target environment id."
          }
        ],
        "description": "Provide the target environment id."
      },
      "target_branch_id": {
        "anyOf": [
          {
            "type": "string",
            "format": "uuid",
            "description": "Provide the target branch id."
          },
          {
            "type": "null",
            "description": "Provide the target branch id."
          }
        ],
        "description": "Provide the target branch id."
      },
      "source_target_kind": {
        "type": "string",
        "enum": [
          "project",
          "main_branch",
          "environment",
          "preview_branch"
        ],
        "description": "Provide the source target kind."
      },
      "project_reference": {
        "type": "string",
        "minLength": 1,
        "description": "Project identifier or slug that scopes the tool call."
      },
      "agent_id": {
        "type": "string",
        "minLength": 1,
        "description": "Provide the agent id."
      }
    },
    "required": [
      "agent_id"
    ],
    "additionalProperties": false,
    "$schema": "http://json-schema.org/draft-07/schema#",
    "description": "Arguments for the get_agent_capabilities tool."
  }
  ```

  ```json title="output-schema.json" theme={null}
  {
    "type": "object",
    "properties": {
      "agent": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier for the returned record."
          },
          "name": {
            "type": "string",
            "description": "Human-readable name for the returned record."
          },
          "description": {
            "type": [
              "string",
              "null"
            ],
            "description": "Human-readable description returned by the tool."
          },
          "provider": {
            "type": "object",
            "properties": {
              "organization": {
                "type": "string",
                "description": "The organization returned by the tool."
              },
              "url": {
                "type": "string",
                "description": "The url returned by the tool."
              }
            },
            "required": [
              "organization",
              "url"
            ],
            "additionalProperties": false,
            "description": "Structured provider details returned by the tool."
          },
          "version": {
            "type": "string",
            "description": "The version returned by the tool."
          },
          "capabilities": {
            "type": "object",
            "properties": {
              "streaming": {
                "type": "boolean",
                "description": "The streaming returned by the tool."
              },
              "push_notifications": {
                "type": "boolean",
                "description": "The push notifications returned by the tool."
              },
              "extensions": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "One extension item returned by the tool."
                },
                "description": "List of extensions returned by the tool."
              }
            },
            "required": [
              "streaming",
              "push_notifications",
              "extensions"
            ],
            "additionalProperties": false,
            "description": "Structured capabilities details returned by the tool."
          },
          "default_input_modes": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "One default input mode item returned by the tool."
            },
            "description": "List of default input modes returned by the tool."
          },
          "default_output_modes": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "One default output mode item returned by the tool."
            },
            "description": "List of default output modes returned by the tool."
          },
          "tools": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "One tool item returned by the tool."
            },
            "description": "List of tools returned by the tool."
          },
          "skills": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "Unique identifier for the returned record."
                },
                "name": {
                  "type": "string",
                  "description": "Human-readable name for the returned record."
                },
                "description": {
                  "type": "string",
                  "description": "Human-readable description returned by the tool."
                },
                "tags": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "description": "One tag item returned by the tool."
                  },
                  "description": "List of tags returned by the tool."
                },
                "examples": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "description": "One example item returned by the tool."
                  },
                  "description": "List of examples returned by the tool."
                }
              },
              "required": [
                "id",
                "name"
              ],
              "additionalProperties": false,
              "description": "One skill item returned by the tool."
            },
            "description": "List of skills returned by the tool."
          },
          "suggestions": {
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "type": "string",
                  "minLength": 1,
                  "description": "One suggestion item returned by the tool."
                },
                {
                  "type": "object",
                  "properties": {
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Short human-readable title returned by the tool."
                    },
                    "prompt": {
                      "type": "string",
                      "minLength": 1,
                      "description": "The prompt returned by the tool."
                    }
                  },
                  "required": [
                    "title",
                    "prompt"
                  ],
                  "additionalProperties": false,
                  "description": "One suggestion item returned by the tool."
                }
              ],
              "description": "One suggestion item returned by the tool."
            },
            "description": "List of suggestions returned by the tool."
          },
          "kind": {
            "type": "string",
            "enum": [
              "source_project_agent",
              "installed_project_agent"
            ],
            "description": "The kind returned by the tool."
          },
          "can_run": {
            "type": "boolean",
            "description": "The can run returned by the tool."
          },
          "source_type": {
            "type": "string",
            "enum": [
              "project",
              "catalog_install"
            ],
            "description": "The source type returned by the tool."
          },
          "installed_access": {
            "type": "object",
            "properties": {
              "grant_id": {
                "type": "string",
                "format": "uuid",
                "description": "The grant id returned by the tool."
              },
              "relation": {
                "type": "string",
                "enum": [
                  "owner",
                  "admin",
                  "editor",
                  "viewer"
                ],
                "description": "The relation returned by the tool."
              },
              "service_account_id": {
                "type": "string",
                "format": "uuid",
                "description": "The service account id returned by the tool."
              },
              "project_id": {
                "type": "string",
                "format": "uuid",
                "description": "Project identifier associated with this result."
              },
              "status": {
                "type": "string",
                "description": "Lifecycle status for the returned record."
              }
            },
            "required": [
              "grant_id",
              "relation",
              "service_account_id",
              "project_id",
              "status"
            ],
            "additionalProperties": false,
            "description": "Structured installed access details returned by the tool."
          },
          "runtime_readiness": {
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "enum": [
                  "ready",
                  "offline",
                  "not_applicable",
                  "unknown"
                ],
                "description": "Lifecycle status for the returned record."
              },
              "reason": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "The reason returned by the tool."
              },
              "runtime_target_kind": {
                "anyOf": [
                  {
                    "type": "string",
                    "enum": [
                      "registered_push_service",
                      "pull_worker"
                    ],
                    "description": "The runtime target kind returned by the tool."
                  },
                  {
                    "type": "null",
                    "description": "The runtime target kind returned by the tool."
                  }
                ],
                "description": "The runtime target kind returned by the tool."
              },
              "runtime_service_key": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "The runtime service key returned by the tool."
              }
            },
            "required": [
              "status",
              "reason",
              "runtime_target_kind",
              "runtime_service_key"
            ],
            "additionalProperties": false,
            "description": "Structured runtime readiness details returned by the tool."
          },
          "source_path": {
            "type": "string",
            "description": "The source path returned by the tool."
          },
          "edit_mode": {
            "type": "string",
            "enum": [
              "structured",
              "source_only"
            ],
            "description": "The edit mode returned by the tool."
          },
          "avatar_url": {
            "anyOf": [
              {
                "type": "string",
                "format": "uri",
                "description": "The avatar url returned by the tool."
              },
              {
                "type": "null",
                "description": "The avatar url returned by the tool."
              }
            ],
            "description": "The avatar url returned by the tool."
          },
          "x-veryfront-model": {
            "type": [
              "string",
              "null"
            ],
            "description": "The x veryfront model returned by the tool."
          },
          "x-veryfront-url": {
            "type": "string",
            "description": "The x veryfront url returned by the tool."
          }
        },
        "required": [
          "id",
          "name",
          "description",
          "provider",
          "version",
          "capabilities",
          "default_input_modes",
          "default_output_modes",
          "tools",
          "skills",
          "kind",
          "can_run",
          "source_type",
          "source_path",
          "edit_mode",
          "x-veryfront-model",
          "x-veryfront-url"
        ],
        "additionalProperties": false,
        "description": "Structured agent details returned by the tool."
      },
      "resolved_capabilities": {
        "type": "object",
        "properties": {
          "source_target": {
            "type": "object",
            "properties": {
              "kind": {
                "type": "string",
                "enum": [
                  "project",
                  "main_branch",
                  "environment",
                  "preview_branch"
                ],
                "description": "Provide the source target kind."
              },
              "target_environment_id": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "uuid",
                    "description": "The target environment id returned by the tool."
                  },
                  {
                    "type": "null",
                    "description": "The target environment id returned by the tool."
                  }
                ],
                "description": "The target environment id returned by the tool."
              },
              "target_branch_id": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "uuid",
                    "description": "The target branch id returned by the tool."
                  },
                  {
                    "type": "null",
                    "description": "The target branch id returned by the tool."
                  }
                ],
                "description": "The target branch id returned by the tool."
              }
            },
            "required": [
              "kind",
              "target_environment_id",
              "target_branch_id"
            ],
            "additionalProperties": false,
            "description": "Structured source target details returned by the tool."
          },
          "runtime_target": {
            "type": "object",
            "properties": {
              "kind": {
                "anyOf": [
                  {
                    "type": "string",
                    "enum": [
                      "main_branch",
                      "environment",
                      "preview_branch"
                    ],
                    "description": "The kind returned by the tool."
                  },
                  {
                    "type": "null",
                    "description": "The kind returned by the tool."
                  }
                ],
                "description": "The kind returned by the tool."
              },
              "target_environment_id": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "uuid",
                    "description": "The target environment id returned by the tool."
                  },
                  {
                    "type": "null",
                    "description": "The target environment id returned by the tool."
                  }
                ],
                "description": "The target environment id returned by the tool."
              },
              "target_branch_id": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "uuid",
                    "description": "The target branch id returned by the tool."
                  },
                  {
                    "type": "null",
                    "description": "The target branch id returned by the tool."
                  }
                ],
                "description": "The target branch id returned by the tool."
              }
            },
            "required": [
              "kind",
              "target_environment_id",
              "target_branch_id"
            ],
            "additionalProperties": false,
            "description": "Structured runtime target details returned by the tool."
          },
          "skills": {
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "project",
                      "description": "The type returned by the tool."
                    },
                    "id": {
                      "type": "string",
                      "description": "Unique identifier for the returned record."
                    },
                    "name": {
                      "type": "string",
                      "description": "Human-readable name for the returned record."
                    },
                    "description": {
                      "type": "string",
                      "description": "Human-readable description returned by the tool."
                    },
                    "source_path": {
                      "type": "string",
                      "description": "The source path returned by the tool."
                    },
                    "edit_mode": {
                      "type": "string",
                      "enum": [
                        "structured",
                        "source_only"
                      ],
                      "description": "The edit mode returned by the tool."
                    },
                    "allowed_tools": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "description": "One allowed tool item returned by the tool."
                      },
                      "description": "List of allowed tools returned by the tool."
                    }
                  },
                  "required": [
                    "type",
                    "id",
                    "name",
                    "description",
                    "source_path",
                    "edit_mode"
                  ],
                  "additionalProperties": false,
                  "description": "One skill item returned by the tool."
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "agent",
                      "description": "The type returned by the tool."
                    },
                    "id": {
                      "type": "string",
                      "description": "Unique identifier for the returned record."
                    },
                    "name": {
                      "type": "string",
                      "description": "Human-readable name for the returned record."
                    },
                    "description": {
                      "type": [
                        "string",
                        "null"
                      ],
                      "description": "Human-readable description returned by the tool."
                    },
                    "tags": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "description": "One tag item returned by the tool."
                      },
                      "description": "List of tags returned by the tool."
                    },
                    "examples": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "description": "One example item returned by the tool."
                      },
                      "description": "List of examples returned by the tool."
                    }
                  },
                  "required": [
                    "type",
                    "id",
                    "name"
                  ],
                  "additionalProperties": false,
                  "description": "One skill item returned by the tool."
                }
              ],
              "description": "One skill item returned by the tool."
            },
            "description": "List of skills returned by the tool."
          },
          "tools": {
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "control_plane",
                      "description": "The type returned by the tool."
                    },
                    "name": {
                      "type": "string",
                      "description": "Human-readable name for the returned record."
                    },
                    "description": {
                      "type": "string",
                      "description": "Human-readable description returned by the tool."
                    },
                    "parameters": {
                      "type": "object",
                      "additionalProperties": {
                        "description": "Additional structured values returned by the tool."
                      },
                      "description": "Structured parameters details returned by the tool."
                    }
                  },
                  "required": [
                    "type",
                    "name"
                  ],
                  "additionalProperties": false,
                  "description": "One tool item returned by the tool."
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "integration",
                      "description": "The type returned by the tool."
                    },
                    "name": {
                      "type": "string",
                      "description": "Human-readable name for the returned record."
                    },
                    "description": {
                      "type": "string",
                      "description": "Human-readable description returned by the tool."
                    },
                    "input_schema": {
                      "type": "object",
                      "additionalProperties": {
                        "description": "Additional structured values returned by the tool."
                      },
                      "description": "Structured input schema details returned by the tool."
                    }
                  },
                  "required": [
                    "type",
                    "name",
                    "description",
                    "input_schema"
                  ],
                  "additionalProperties": false,
                  "description": "One tool item returned by the tool."
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "project",
                      "description": "The type returned by the tool."
                    },
                    "id": {
                      "type": "string",
                      "description": "Unique identifier for the returned record."
                    },
                    "name": {
                      "type": "string",
                      "description": "Human-readable name for the returned record."
                    },
                    "description": {
                      "type": [
                        "string",
                        "null"
                      ],
                      "description": "Human-readable description returned by the tool."
                    },
                    "source_path": {
                      "type": "string",
                      "description": "The source path returned by the tool."
                    },
                    "edit_mode": {
                      "type": "string",
                      "enum": [
                        "structured",
                        "source_only"
                      ],
                      "description": "The edit mode returned by the tool."
                    },
                    "input_schema": {
                      "anyOf": [
                        {
                          "type": "object",
                          "additionalProperties": {
                            "description": "Additional structured values returned by the tool."
                          },
                          "description": "Structured input schema details returned by the tool."
                        },
                        {
                          "type": "null",
                          "description": "The input schema returned by the tool."
                        }
                      ],
                      "description": "The input schema returned by the tool."
                    }
                  },
                  "required": [
                    "type",
                    "id",
                    "name",
                    "source_path",
                    "edit_mode"
                  ],
                  "additionalProperties": false,
                  "description": "One tool item returned by the tool."
                }
              ],
              "description": "One tool item returned by the tool."
            },
            "description": "List of tools returned by the tool."
          },
          "integrations": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "Unique identifier for the returned record."
                },
                "name": {
                  "type": "string",
                  "description": "Human-readable name for the returned record."
                },
                "tool_names": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "description": "One tool name item returned by the tool."
                  },
                  "description": "List of tool names returned by the tool."
                }
              },
              "required": [
                "id",
                "name",
                "tool_names"
              ],
              "additionalProperties": false,
              "description": "One integration item returned by the tool."
            },
            "description": "List of integrations returned by the tool."
          },
          "tool_resolution": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "tool_name": {
                  "type": "string",
                  "description": "The tool name returned by the tool."
                },
                "source_selected": {
                  "type": "boolean",
                  "description": "The source selected returned by the tool."
                },
                "catalog_available": {
                  "type": "boolean",
                  "description": "The catalog available returned by the tool."
                },
                "catalog_state": {
                  "type": "string",
                  "enum": [
                    "available",
                    "removed"
                  ],
                  "description": "The catalog state returned by the tool."
                },
                "effective_authorization": {
                  "type": "string",
                  "enum": [
                    "authorized",
                    "restricted_by_policy",
                    "catalog_unavailable"
                  ],
                  "description": "The effective authorization returned by the tool."
                },
                "policy": {
                  "type": "object",
                  "properties": {
                    "state": {
                      "type": "string",
                      "enum": [
                        "absent",
                        "allowed",
                        "restricted"
                      ],
                      "description": "The state returned by the tool."
                    },
                    "scope": {
                      "type": "string",
                      "enum": [
                        "project",
                        "user"
                      ],
                      "description": "The scope returned by the tool."
                    },
                    "allowed_tools": {
                      "anyOf": [
                        {
                          "type": "array",
                          "items": {
                            "type": "string",
                            "description": "One allowed tool item returned by the tool."
                          },
                          "description": "List of allowed tools returned by the tool."
                        },
                        {
                          "type": "null",
                          "description": "The allowed tools returned by the tool."
                        }
                      ],
                      "description": "The allowed tools returned by the tool."
                    },
                    "execution_mode": {
                      "type": "string",
                      "enum": [
                        "real",
                        "mock"
                      ],
                      "description": "The execution mode returned by the tool."
                    }
                  },
                  "required": [
                    "state",
                    "scope",
                    "allowed_tools",
                    "execution_mode"
                  ],
                  "additionalProperties": false,
                  "description": "Structured policy details returned by the tool."
                },
                "credential_requirement": {
                  "type": "object",
                  "properties": {
                    "mode": {
                      "type": "string",
                      "enum": [
                        "oauth_connection",
                        "project_credentials",
                        "none"
                      ],
                      "description": "The mode returned by the tool."
                    },
                    "managed_oauth": {
                      "type": "boolean",
                      "description": "The managed oauth returned by the tool."
                    },
                    "byo_oauth_app_override": {
                      "type": "object",
                      "properties": {
                        "supported": {
                          "type": "boolean",
                          "description": "The supported returned by the tool."
                        },
                        "required": {
                          "type": "boolean",
                          "description": "The required returned by the tool."
                        },
                        "client_id_env_var": {
                          "type": [
                            "string",
                            "null"
                          ],
                          "description": "The client id env var returned by the tool."
                        },
                        "client_secret_env_var": {
                          "type": [
                            "string",
                            "null"
                          ],
                          "description": "The client secret env var returned by the tool."
                        }
                      },
                      "required": [
                        "supported",
                        "required",
                        "client_id_env_var",
                        "client_secret_env_var"
                      ],
                      "additionalProperties": false,
                      "description": "Structured byo oauth app override details returned by the tool."
                    },
                    "mandatory_env_vars": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "description": "One mandatory env var item returned by the tool."
                      },
                      "description": "List of mandatory env vars returned by the tool."
                    }
                  },
                  "required": [
                    "mode",
                    "managed_oauth",
                    "byo_oauth_app_override",
                    "mandatory_env_vars"
                  ],
                  "additionalProperties": false,
                  "description": "Structured credential requirement details returned by the tool."
                },
                "connection_readiness": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ready",
                        "required",
                        "not_applicable",
                        "unknown"
                      ],
                      "description": "Lifecycle status for the returned record."
                    },
                    "scope": {
                      "anyOf": [
                        {
                          "type": "string",
                          "enum": [
                            "project",
                            "user"
                          ],
                          "description": "The scope returned by the tool."
                        },
                        {
                          "type": "null",
                          "description": "The scope returned by the tool."
                        }
                      ],
                      "description": "The scope returned by the tool."
                    },
                    "connected_count": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "minimum": 0,
                          "description": "The connected count returned by the tool."
                        },
                        {
                          "type": "null",
                          "description": "The connected count returned by the tool."
                        }
                      ],
                      "description": "The connected count returned by the tool."
                    }
                  },
                  "required": [
                    "status",
                    "scope",
                    "connected_count"
                  ],
                  "additionalProperties": false,
                  "description": "Structured connection readiness details returned by the tool."
                }
              },
              "required": [
                "tool_name",
                "source_selected",
                "catalog_available",
                "catalog_state",
                "effective_authorization",
                "policy",
                "credential_requirement",
                "connection_readiness"
              ],
              "additionalProperties": false,
              "description": "One tool resolution item returned by the tool."
            },
            "description": "List of tool resolution returned by the tool."
          },
          "tool_access": {
            "type": "object",
            "properties": {
              "version": {
                "type": "number",
                "const": 1
              },
              "freshness": {
                "type": "object",
                "properties": {
                  "resolved_at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "valid_for_ms": {
                    "type": "integer",
                    "exclusiveMinimum": 0
                  },
                  "fail_closed_on_expiry": {
                    "type": "boolean",
                    "const": true
                  }
                },
                "required": [
                  "resolved_at",
                  "valid_for_ms",
                  "fail_closed_on_expiry"
                ],
                "additionalProperties": false,
                "description": "Structured freshness details associated with this tool result."
              },
              "inputs": {
                "type": "object",
                "properties": {
                  "capabilities": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "enum": [
                        "project.read",
                        "project.settings.manage",
                        "project.delete",
                        "project.members.read",
                        "project.members.manage",
                        "project.invites.read",
                        "project.invites.manage",
                        "project.files.read",
                        "project.files.write",
                        "project.realtime.connect",
                        "project.realtime.write",
                        "project.files.admin",
                        "project.uploads.read",
                        "project.uploads.write",
                        "project.uploads.admin",
                        "project.knowledge.read",
                        "project.knowledge.write",
                        "project.releases.read",
                        "project.releases.write",
                        "project.deployments.read",
                        "project.deployments.write",
                        "project.deploy.execute",
                        "project.runtime.manage",
                        "project.sandboxes.manage",
                        "project.domains.write",
                        "project.environments.manage",
                        "project.env_vars.write",
                        "project.runs.read",
                        "project.runs.write",
                        "project.runs.admin",
                        "project.agents.read",
                        "project.agents.write",
                        "project.evals.read",
                        "project.evals.write",
                        "project.evals.run",
                        "project.conversations.read",
                        "project.conversations.write",
                        "project.conversations.create",
                        "project.integrations.read",
                        "project.integrations.connect",
                        "project.integrations.configure",
                        "project.api_keys.read",
                        "project.api_keys.manage",
                        "project.cache.read",
                        "project.cache.write",
                        "project.logs.read",
                        "project.metrics.read",
                        "project.resources.read"
                      ]
                    },
                    "description": "List of capabilities associated with this tool result."
                  },
                  "billing": {
                    "type": "object",
                    "properties": {
                      "collaboration_allowed": {
                        "type": "boolean"
                      },
                      "can_invite": {
                        "type": "boolean"
                      }
                    },
                    "required": [
                      "collaboration_allowed",
                      "can_invite"
                    ],
                    "additionalProperties": false,
                    "description": "Structured billing details associated with this tool result."
                  },
                  "entitlements": {
                    "type": "object",
                    "properties": {
                      "dedicated_runtime": {
                        "type": "boolean"
                      },
                      "custom_domains": {
                        "type": "boolean"
                      },
                      "export_apps": {
                        "type": "boolean"
                      }
                    },
                    "required": [
                      "dedicated_runtime",
                      "custom_domains",
                      "export_apps"
                    ],
                    "additionalProperties": false,
                    "description": "Structured entitlements details associated with this tool result."
                  }
                },
                "required": [
                  "capabilities",
                  "billing",
                  "entitlements"
                ],
                "additionalProperties": false,
                "description": "Structured inputs details associated with this tool result."
              },
              "families": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "family": {
                      "type": "string",
                      "enum": [
                        "collaboration",
                        "runtime",
                        "domains",
                        "export"
                      ]
                    },
                    "default_decision": {
                      "type": "object",
                      "properties": {
                        "visibility": {
                          "type": "string",
                          "enum": [
                            "visible",
                            "hidden"
                          ]
                        },
                        "reason_code": {
                          "type": "string",
                          "enum": [
                            "allowed",
                            "missing_capability",
                            "billing_plan_restriction",
                            "billing_seat_limit",
                            "target_not_supported",
                            "resource_state_restriction",
                            "policy_exception",
                            "unknown"
                          ]
                        },
                        "message": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "visibility",
                        "reason_code"
                      ],
                      "additionalProperties": false,
                      "description": "Structured default decision details associated with this tool result."
                    },
                    "action_overrides": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "action": {
                            "type": "string",
                            "enum": [
                              "create_invite",
                              "delete_member",
                              "create_server",
                              "delete_server",
                              "create_domain",
                              "download_release"
                            ]
                          },
                          "decision": {
                            "$ref": "#/properties/resolved_capabilities/properties/tool_access/properties/families/items/properties/default_decision",
                            "description": "The decision returned by the tool."
                          }
                        },
                        "required": [
                          "action",
                          "decision"
                        ],
                        "additionalProperties": false
                      },
                      "description": "List of action overrides associated with this tool result."
                    }
                  },
                  "required": [
                    "family",
                    "default_decision",
                    "action_overrides"
                  ],
                  "additionalProperties": false
                },
                "description": "List of families associated with this tool result."
              }
            },
            "required": [
              "version",
              "freshness",
              "inputs",
              "families"
            ],
            "additionalProperties": false,
            "description": "Structured tool access details returned by the tool."
          },
          "prompts": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "Unique identifier for the returned record."
                },
                "name": {
                  "type": "string",
                  "description": "Human-readable name for the returned record."
                },
                "description": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "Human-readable description returned by the tool."
                },
                "source_path": {
                  "type": "string",
                  "description": "The source path returned by the tool."
                },
                "edit_mode": {
                  "type": "string",
                  "enum": [
                    "structured",
                    "source_only"
                  ],
                  "description": "The edit mode returned by the tool."
                }
              },
              "required": [
                "id",
                "name",
                "source_path",
                "edit_mode"
              ],
              "additionalProperties": false,
              "description": "One prompt item returned by the tool."
            },
            "description": "List of prompts returned by the tool."
          },
          "workflows": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "Unique identifier for the returned record."
                },
                "name": {
                  "type": "string",
                  "description": "Human-readable name for the returned record."
                },
                "description": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "Human-readable description returned by the tool."
                },
                "target": {
                  "type": "string",
                  "description": "The target returned by the tool."
                },
                "source_path": {
                  "type": "string",
                  "description": "The source path returned by the tool."
                },
                "edit_mode": {
                  "type": "string",
                  "enum": [
                    "structured",
                    "source_only"
                  ],
                  "description": "The edit mode returned by the tool."
                },
                "version": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "The version returned by the tool."
                },
                "input_schema": {
                  "anyOf": [
                    {
                      "type": "object",
                      "additionalProperties": {
                        "description": "Additional structured values returned by the tool."
                      },
                      "description": "Structured input schema details returned by the tool."
                    },
                    {
                      "type": "null",
                      "description": "The input schema returned by the tool."
                    }
                  ],
                  "description": "The input schema returned by the tool."
                },
                "output_schema": {
                  "anyOf": [
                    {
                      "type": "object",
                      "additionalProperties": {
                        "description": "Additional structured values returned by the tool."
                      },
                      "description": "Structured output schema details returned by the tool."
                    },
                    {
                      "type": "null",
                      "description": "The output schema returned by the tool."
                    }
                  ],
                  "description": "The output schema returned by the tool."
                },
                "schedulable": {
                  "type": "boolean",
                  "description": "The schedulable returned by the tool."
                }
              },
              "required": [
                "id",
                "name",
                "target",
                "source_path",
                "edit_mode",
                "schedulable"
              ],
              "additionalProperties": false,
              "description": "One workflow item returned by the tool."
            },
            "description": "List of workflows returned by the tool."
          },
          "tasks": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "Unique identifier for the returned record."
                },
                "name": {
                  "type": "string",
                  "description": "Human-readable name for the returned record."
                },
                "description": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "Human-readable description returned by the tool."
                },
                "target": {
                  "type": "string",
                  "description": "The target returned by the tool."
                },
                "source_path": {
                  "type": "string",
                  "description": "The source path returned by the tool."
                },
                "edit_mode": {
                  "type": "string",
                  "enum": [
                    "structured",
                    "source_only"
                  ],
                  "description": "The edit mode returned by the tool."
                },
                "input_schema": {
                  "anyOf": [
                    {
                      "type": "object",
                      "additionalProperties": {
                        "description": "Additional structured values returned by the tool."
                      },
                      "description": "Structured input schema details returned by the tool."
                    },
                    {
                      "type": "null",
                      "description": "The input schema returned by the tool."
                    }
                  ],
                  "description": "The input schema returned by the tool."
                },
                "output_schema": {
                  "anyOf": [
                    {
                      "type": "object",
                      "additionalProperties": {
                        "description": "Additional structured values returned by the tool."
                      },
                      "description": "Structured output schema details returned by the tool."
                    },
                    {
                      "type": "null",
                      "description": "The output schema returned by the tool."
                    }
                  ],
                  "description": "The output schema returned by the tool."
                },
                "schedulable": {
                  "type": "boolean",
                  "description": "The schedulable returned by the tool."
                }
              },
              "required": [
                "id",
                "name",
                "target",
                "source_path",
                "edit_mode",
                "schedulable"
              ],
              "additionalProperties": false,
              "description": "One task item returned by the tool."
            },
            "description": "List of tasks returned by the tool."
          },
          "diagnostics": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "kind": {
                  "type": "string",
                  "enum": [
                    "source_file_diagnostic",
                    "source_agent_discovery_error",
                    "source_trigger_discovery_error"
                  ],
                  "description": "The kind returned by the tool."
                },
                "source_kind": {
                  "type": "string",
                  "enum": [
                    "agent",
                    "prompt",
                    "tool",
                    "task",
                    "workflow",
                    "resource",
                    "skill",
                    "eval",
                    "schedule",
                    "webhook"
                  ],
                  "description": "The source kind returned by the tool."
                },
                "source_path": {
                  "type": "string",
                  "minLength": 1,
                  "description": "The source path returned by the tool."
                },
                "source_id": {
                  "type": "string",
                  "minLength": 1,
                  "description": "The source id returned by the tool."
                },
                "code": {
                  "type": "string",
                  "enum": [
                    "parse_error",
                    "invalid_definition",
                    "dynamic_definition",
                    "duplicate_source_id",
                    "unsupported_target",
                    "manual_conflict"
                  ],
                  "description": "The code returned by the tool."
                },
                "message": {
                  "type": "string",
                  "minLength": 1,
                  "description": "The message returned by the tool."
                },
                "details": {
                  "type": "object",
                  "additionalProperties": {
                    "description": "Additional structured values returned by the tool."
                  },
                  "description": "Structured details details returned by the tool."
                }
              },
              "required": [
                "kind",
                "source_kind",
                "source_path",
                "code",
                "message"
              ],
              "additionalProperties": false,
              "description": "One diagnostic item returned by the tool."
            },
            "description": "List of diagnostics returned by the tool."
          }
        },
        "required": [
          "source_target",
          "runtime_target",
          "skills",
          "tools",
          "integrations",
          "tool_access",
          "prompts",
          "workflows",
          "tasks"
        ],
        "additionalProperties": false,
        "description": "Structured resolved capabilities details returned by the tool."
      }
    },
    "required": [
      "agent",
      "resolved_capabilities"
    ],
    "additionalProperties": false,
    "$schema": "http://json-schema.org/draft-07/schema#",
    "description": "Structured result returned by the get_agent_capabilities tool."
  }
  ```
</CodeGroup>

<McpToolCall
  tool="veryfront__get_agent_capabilities"
  initialArguments={{
"agent_id": "example"
}}
/>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.