Built-in MCP server providing tools for managing Archestra platform resources
63 min read
The Archestra MCP Server is a built-in MCP server that ships with the platform and requires no installation. It exposes tools for managing platform resources such as agents, MCP servers, policies, and limits.
Most tools require explicit assignment to Agents or MCP Gateways before they can be used. The following tools are pre-installed on all new agents by default: artifact_write, todo_write.
However, RBAC (role-based access control) is still enforced. Every tool is mapped to a required permission (resource + action). The tools/list endpoint dynamically filters tools so users only see tools they have permission to use. For example, a user without knowledgeSource:create permission will not see create_knowledge_base in their tool list and cannot execute it.
Tools Reference
Identity
Tool
Description
Required RBAC Permission
whoami
Returns the name and ID of the current agent.
None (no additional RBAC permission required)
whoami
Required RBAC permission: None (no additional RBAC permission required)
This tool takes no arguments.
Output
Field
Type
Required
Description
agentId
string
Yes
The ID of the current agent.
agentName
string
Yes
The display name of the current agent.
Agents
Tool
Description
Required RBAC Permission
create_agent
Create a new agent with the specified name, optional description, labels, prompts, icon emoji, explicit tool assignments, and sub-agent delegations.
agent:create
get_agent
Get a specific agent by ID or name.
agent:read
list_agents
List agents with optional filtering by name.
agent:read
edit_agent
Edit an existing agent.
agent:update
create_agent
Required RBAC permission: agent:create
Input
Parameter
Type
Required
Description
name
string
Yes
Name for the new resource.
scope
"personal" | "team" | "org"
No
Visibility scope. Defaults to personal for agents and org for LLM proxies/MCP gateways unless teams are provided.
labels
object[]
No
Optional key-value labels for organization and categorization.
labels[].key
string
Yes
labels[].value
string
Yes
teams
string[]
No
Team IDs to attach when creating a team-scoped resource.
toolExposureMode
"full" | "search_and_run_only"
No
How tools should be exposed to MCP clients and models. Use 'search_and_run_only' to expose only search_tools and run_tool while keeping the full assigned tool set searchable and runnable.
description
string | null
No
Optional human-readable description of the agent.
icon
string | null
No
Optional emoji icon for the agent.
knowledgeBaseIds
string[]
No
Knowledge base IDs to assign to the agent. Use get_knowledge_bases first when you need to look up IDs by name.
connectorIds
string[]
No
Knowledge connector IDs to assign directly to the agent. Use get_knowledge_connectors first when you need to look up IDs by name.
subAgentIds
string[]
No
Agent IDs to delegate to from this newly created agent.
suggestedPrompts
object[]
No
Optional suggested prompts that appear in the chat UI.
suggestedPrompts[].summaryTitle
string
Yes
Short title shown to users for this suggested prompt.
suggestedPrompts[].prompt
string
Yes
Suggested prompt text users can click to start a conversation.
systemPrompt
string | null
No
The system prompt that defines the agent's behavior.
toolAssignments
object[]
No
Explicit tool assignments to create immediately after the agent is created.
toolAssignments[].toolId
string
Yes
The ID of the tool to assign to the agent.
toolAssignments[].resolveAtCallTime
boolean
No
When true, resolve credentials and execution target at tool call time. Prefer this for builder flows.
toolAssignments[].credentialResolutionMode
"static" | "dynamic" | "enterprise_managed"
No
toolAssignments[].mcpServerId
string | null
No
Optional MCP server installation to pin the tool to when using static credential resolution.
get_agent
Required RBAC permission: agent:read
Input
Parameter
Type
Required
Description
id
string
No
The ID of the agent to fetch. Prefer the ID when you already have it.
name
string
No
The exact name of the agent to fetch when you do not already have the ID.
Output
Field
Type
Required
Description
id
string
Yes
The resource ID.
name
string
Yes
The resource name.
description
string | null
Yes
The resource description, if any.
icon
string | null
Yes
The emoji icon, if configured.
scope
"personal" | "team" | "org"
Yes
The visibility scope.
toolExposureMode
"full" | "search_and_run_only"
Yes
How tools are exposed to MCP clients and models.
agentType
"agent" | "llm_proxy" | "mcp_gateway" | "profile"
Yes
The resource type.
systemPrompt
string | null
No
teams
object[]
Yes
The teams attached to it.
teams[].id
string
Yes
The team ID.
teams[].name
string
Yes
The team name.
labels
object[]
Yes
Assigned labels.
labels[].key
string
Yes
The label key.
labels[].value
string
Yes
The label value.
tools
object[]
Yes
Assigned tools.
tools[].id
string
Yes
The assigned tool ID.
tools[].name
string
Yes
The tool name.
tools[].description
string | null
Yes
The tool description, if any.
tools[].catalogId
string | null
Yes
The MCP catalog ID the tool comes from, if any.
knowledgeBaseIds
string[]
Yes
Assigned knowledge base IDs.
connectorIds
string[]
Yes
Assigned knowledge connector IDs.
suggestedPrompts
object[]
Yes
Configured suggested prompts.
suggestedPrompts[].summaryTitle
string
Yes
The short title shown in the chat UI.
suggestedPrompts[].prompt
string
Yes
The suggested prompt text.
list_agents
Required RBAC permission: agent:read
Input
Parameter
Type
Required
Description
limit
integer
No
Maximum number of agents to return.
name
string
No
Optional agent name filter. Use this when the user names an agent but you still need to look up the ID.
Output
Field
Type
Required
Description
total
number
Yes
The total number of matching agents.
agents
object[]
Yes
agents[].id
string
Yes
The agent ID.
agents[].name
string
Yes
The agent name.
agents[].scope
"personal" | "team" | "org"
Yes
The agent scope.
agents[].description
string | null
Yes
The agent description, if any.
agents[].teams
object[]
Yes
Teams attached to it.
agents[].teams[].id
string
Yes
The team ID.
agents[].teams[].name
string
Yes
The team name.
agents[].labels
object[]
Yes
Assigned labels.
agents[].labels[].key
string
Yes
The label key.
agents[].labels[].value
string
Yes
The label value.
agents[].tools
object[]
Yes
agents[].tools[].name
string
Yes
The tool name.
agents[].tools[].description
string | null
Yes
The tool description, if any.
agents[].knowledgeSources
object[]
Yes
Assigned knowledge bases and connectors.
agents[].knowledgeSources[].name
string
Yes
The knowledge source name.
agents[].knowledgeSources[].description
string | null
Yes
The knowledge source description, if any.
agents[].knowledgeSources[].type
"knowledge_base" | "knowledge_connector"
Yes
Whether this source is a knowledge base or connector.
edit_agent
Required RBAC permission: agent:update
Input
Parameter
Type
Required
Description
id
string
Yes
The ID of the agent to edit. Use get_agent or list_agents to look it up by name.
subAgentIds
string[]
No
Agent IDs to add as delegation targets.
toolAssignments
object[]
No
Explicit tool assignments to add or update on the agent.
toolAssignments[].toolId
string
Yes
The ID of the tool to assign to the agent.
toolAssignments[].resolveAtCallTime
boolean
No
When true, resolve credentials and execution target at tool call time. Prefer this for builder flows.
toolAssignments[].credentialResolutionMode
"static" | "dynamic" | "enterprise_managed"
No
toolAssignments[].mcpServerId
string | null
No
Optional MCP server installation to pin the tool to when using static credential resolution.
description
string | null
No
New description for the agent.
icon
string | null
No
New emoji icon for the agent.
knowledgeBaseIds
string[]
No
Replace the agent's assigned knowledge bases with this set.
labels
object[]
No
Replace the agent's labels with this set.
labels[].key
string
Yes
labels[].value
string
Yes
name
string
No
New name for the agent.
connectorIds
string[]
No
Replace the agent's directly assigned knowledge connectors with this set.
scope
"personal" | "team" | "org"
No
Updated visibility scope for the agent.
toolExposureMode
"full" | "search_and_run_only"
No
How tools should be exposed to MCP clients and models.
suggestedPrompts
object[]
No
Replace the agent's suggested prompts.
suggestedPrompts[].summaryTitle
string
Yes
Short title shown to users for this suggested prompt.
suggestedPrompts[].prompt
string
Yes
Suggested prompt text users can click to start a conversation.
systemPrompt
string | null
No
New system prompt for the agent.
teams
string[]
No
Replace the teams attached to a team-scoped agent.
LLM Proxies
Tool
Description
Required RBAC Permission
create_llm_proxy
Create a new LLM proxy with the specified name and optional labels.
llmProxy:create
get_llm_proxy
Get a specific LLM proxy by ID or name.
llmProxy:read
edit_llm_proxy
Edit an existing LLM proxy.
llmProxy:update
create_llm_proxy
Required RBAC permission: llmProxy:create
Input
Parameter
Type
Required
Description
name
string
Yes
Name for the new resource.
scope
"personal" | "team" | "org"
No
Visibility scope. Defaults to personal for agents and org for LLM proxies/MCP gateways unless teams are provided.
labels
object[]
No
Optional key-value labels for organization and categorization.
labels[].key
string
Yes
labels[].value
string
Yes
teams
string[]
No
Team IDs to attach when creating a team-scoped resource.
toolExposureMode
"full" | "search_and_run_only"
No
How tools should be exposed to MCP clients and models. Use 'search_and_run_only' to expose only search_tools and run_tool while keeping the full assigned tool set searchable and runnable.
get_llm_proxy
Required RBAC permission: llmProxy:read
Input
Parameter
Type
Required
Description
id
string
No
The ID of the LLM proxy to fetch. Prefer the ID when you already have it.
name
string
No
The exact name of the LLM proxy to fetch when you do not already have the ID.
Output
Field
Type
Required
Description
id
string
Yes
The resource ID.
name
string
Yes
The resource name.
description
string | null
Yes
The resource description, if any.
icon
string | null
Yes
The emoji icon, if configured.
scope
"personal" | "team" | "org"
Yes
The visibility scope.
toolExposureMode
"full" | "search_and_run_only"
Yes
How tools are exposed to MCP clients and models.
agentType
"agent" | "llm_proxy" | "mcp_gateway" | "profile"
Yes
The resource type.
systemPrompt
string | null
No
teams
object[]
Yes
The teams attached to it.
teams[].id
string
Yes
The team ID.
teams[].name
string
Yes
The team name.
labels
object[]
Yes
Assigned labels.
labels[].key
string
Yes
The label key.
labels[].value
string
Yes
The label value.
tools
object[]
Yes
Assigned tools.
tools[].id
string
Yes
The assigned tool ID.
tools[].name
string
Yes
The tool name.
tools[].description
string | null
Yes
The tool description, if any.
tools[].catalogId
string | null
Yes
The MCP catalog ID the tool comes from, if any.
knowledgeBaseIds
string[]
Yes
Assigned knowledge base IDs.
connectorIds
string[]
Yes
Assigned knowledge connector IDs.
suggestedPrompts
object[]
Yes
Configured suggested prompts.
suggestedPrompts[].summaryTitle
string
Yes
The short title shown in the chat UI.
suggestedPrompts[].prompt
string
Yes
The suggested prompt text.
edit_llm_proxy
Required RBAC permission: llmProxy:update
Input
Parameter
Type
Required
Description
id
string
Yes
The ID of the LLM proxy to edit. Use get_llm_proxy to look it up by name first if needed.
description
string | null
No
New description for the LLM proxy.
icon
string | null
No
New emoji icon for the LLM proxy.
labels
object[]
No
Replace the LLM proxy's labels with this set.
labels[].key
string
Yes
labels[].value
string
Yes
name
string
No
New name for the LLM proxy.
scope
"personal" | "team" | "org"
No
Updated visibility scope for the LLM proxy.
toolExposureMode
"full" | "search_and_run_only"
No
How tools should be exposed to MCP clients and models.
teams
string[]
No
Replace the teams attached to a team-scoped LLM proxy.
MCP Gateways
Tool
Description
Required RBAC Permission
create_mcp_gateway
Create a new MCP gateway with the specified name, optional labels, and optional assigned knowledge bases or knowledge connectors.
mcpGateway:create
get_mcp_gateway
Get a specific MCP gateway by ID or name.
mcpGateway:read
edit_mcp_gateway
Edit an existing MCP gateway.
mcpGateway:update
create_mcp_gateway
Required RBAC permission: mcpGateway:create
Input
Parameter
Type
Required
Description
name
string
Yes
Name for the new resource.
scope
"personal" | "team" | "org"
No
Visibility scope. Defaults to personal for agents and org for LLM proxies/MCP gateways unless teams are provided.
labels
object[]
No
Optional key-value labels for organization and categorization.
labels[].key
string
Yes
labels[].value
string
Yes
teams
string[]
No
Team IDs to attach when creating a team-scoped resource.
toolExposureMode
"full" | "search_and_run_only"
No
How tools should be exposed to MCP clients and models. Use 'search_and_run_only' to expose only search_tools and run_tool while keeping the full assigned tool set searchable and runnable.
knowledgeBaseIds
string[]
No
Knowledge base IDs to assign to the agent. Use get_knowledge_bases first when you need to look up IDs by name.
connectorIds
string[]
No
Knowledge connector IDs to assign directly to the agent. Use get_knowledge_connectors first when you need to look up IDs by name.
toolAssignmentMode
"automatic" | "manual"
No
How tools are assigned to this gateway. 'manual' (default) lets an admin pick tools individually. 'automatic' derives the gateway's tools from catalog entries whose labels match the gateway's labels (key-value pairs, OR semantics).
get_mcp_gateway
Required RBAC permission: mcpGateway:read
Input
Parameter
Type
Required
Description
id
string
No
The ID of the MCP gateway to fetch. Prefer the ID when you already have it.
name
string
No
The exact name of the MCP gateway to fetch when you do not already have the ID.
Output
Field
Type
Required
Description
id
string
Yes
The resource ID.
name
string
Yes
The resource name.
description
string | null
Yes
The resource description, if any.
icon
string | null
Yes
The emoji icon, if configured.
scope
"personal" | "team" | "org"
Yes
The visibility scope.
toolExposureMode
"full" | "search_and_run_only"
Yes
How tools are exposed to MCP clients and models.
agentType
"agent" | "llm_proxy" | "mcp_gateway" | "profile"
Yes
The resource type.
systemPrompt
string | null
No
teams
object[]
Yes
The teams attached to it.
teams[].id
string
Yes
The team ID.
teams[].name
string
Yes
The team name.
labels
object[]
Yes
Assigned labels.
labels[].key
string
Yes
The label key.
labels[].value
string
Yes
The label value.
tools
object[]
Yes
Assigned tools.
tools[].id
string
Yes
The assigned tool ID.
tools[].name
string
Yes
The tool name.
tools[].description
string | null
Yes
The tool description, if any.
tools[].catalogId
string | null
Yes
The MCP catalog ID the tool comes from, if any.
knowledgeBaseIds
string[]
Yes
Assigned knowledge base IDs.
connectorIds
string[]
Yes
Assigned knowledge connector IDs.
suggestedPrompts
object[]
Yes
Configured suggested prompts.
suggestedPrompts[].summaryTitle
string
Yes
The short title shown in the chat UI.
suggestedPrompts[].prompt
string
Yes
The suggested prompt text.
edit_mcp_gateway
Required RBAC permission: mcpGateway:update
Input
Parameter
Type
Required
Description
id
string
Yes
The ID of the MCP gateway to edit. Use get_mcp_gateway to look it up by name first if needed.
description
string | null
No
New description for the MCP gateway.
icon
string | null
No
New emoji icon for the MCP gateway.
labels
object[]
No
Replace the MCP gateway's labels with this set.
labels[].key
string
Yes
labels[].value
string
Yes
name
string
No
New name for the MCP gateway.
scope
"personal" | "team" | "org"
No
Updated visibility scope for the MCP gateway.
toolExposureMode
"full" | "search_and_run_only"
No
How tools should be exposed to MCP clients and models.
toolAssignmentMode
"automatic" | "manual"
No
How tools are assigned to this gateway. 'manual' lets an admin pick tools individually. 'automatic' derives the gateway's tools from catalog entries whose labels match the gateway's labels (key-value pairs, OR semantics).
teams
string[]
No
Replace the teams attached to a team-scoped MCP gateway.
knowledgeBaseIds
string[]
No
Replace the MCP gateway's assigned knowledge bases with this set.
connectorIds
string[]
No
Replace the MCP gateway's directly assigned knowledge connectors with this set.
MCP Servers
Tool
Description
Required RBAC Permission
search_private_mcp_registry
Search the private MCP registry for available MCP servers.
mcpRegistry:read
get_mcp_servers
List all MCP servers from the catalog.
mcpRegistry:read
get_mcp_server_tools
Get all tools available for a specific MCP server by its catalog ID (from get_mcp_servers).
mcpRegistry:read
edit_mcp_description
Edit an MCP server's display information and metadata.
mcpRegistry:update
edit_mcp_config
Edit an MCP server's technical configuration.
mcpRegistry:update
create_mcp_server
Create a new MCP server in the private registry.
mcpRegistry:create
deploy_mcp_server
Deploy (install) an MCP server from the catalog.
mcpRegistry:update
list_mcp_server_deployments
List all deployed (installed) MCP server instances accessible to the current user.
mcpRegistry:read
get_mcp_server_logs
Get recent container logs from a deployed local (K8s) MCP server.
mcpRegistry:read
create_mcp_server_installation_request
Allows users from within the Archestra Platform chat UI to submit a request for an MCP server to be added to their Archestra Platform's internal MCP server registry.
mcpServerInstallationRequest:create
search_private_mcp_registry
Required RBAC permission: mcpRegistry:read
Input
Parameter
Type
Required
Description
query
string
No
Optional search query to filter MCP servers by name or description.
Output
Field
Type
Required
Description
items
object[]
Yes
Catalog items matching the search.
items[].id
string
Yes
The catalog item ID.
items[].name
string
Yes
The MCP server name.
items[].version
string | null
Yes
The version, if provided.
items[].description
string | null
Yes
The server description, if any.
items[].serverType
"local" | "remote" | "builtin"
Yes
Whether the server is local, remote, or builtin.
items[].serverUrl
string | null
Yes
The remote server URL, if applicable.
items[].repository
string | null
Yes
The repository URL, if available.
get_mcp_servers
Required RBAC permission: mcpRegistry:read
This tool takes no arguments.
Output
Field
Type
Required
Description
items
object[]
Yes
Available MCP servers.
items[].id
string
Yes
The catalog item ID.
items[].name
string
Yes
The MCP server name.
items[].icon
string | null
Yes
The emoji icon, if any.
items[].description
string | null
Yes
The server description, if any.
items[].scope
"personal" | "team" | "org"
No
The visibility scope of the server.
items[].teams
object[]
Yes
Teams attached to a team-scoped server.
items[].teams[].id
string
Yes
The team ID.
items[].teams[].name
string
Yes
The team name.
get_mcp_server_tools
Required RBAC permission: mcpRegistry:read
Input
Parameter
Type
Required
Description
mcpServerId
string
Yes
The catalog ID of the MCP server.
Output
Field
Type
Required
Description
tools
object[]
Yes
Tools exposed by the selected MCP server.
tools[].id
string
Yes
The tool ID.
tools[].name
string
Yes
The tool name.
tools[].description
string | null
No
The tool description, if any.
tools[].catalogId
string | null
No
The MCP catalog ID this tool belongs to.
edit_mcp_description
Required RBAC permission: mcpRegistry:update
Input
Parameter
Type
Required
Description
id
string
Yes
The catalog ID of the MCP server to edit. Use get_mcp_servers to look it up by name.
name
string
No
Display name for the MCP server.
description
string | null
No
Description of the MCP server.
icon
string | null
No
Emoji icon for the MCP server.
docsUrl
string | null
No
Documentation URL.
repository
string | null
No
Source code repository URL.
version
string | null
No
Version string.
instructions
string | null
No
Setup or usage instructions.
scope
"personal" | "team" | "org"
No
Visibility scope.
labels
object[]
No
Key-value labels for organization/categorization.
labels[].key
string
Yes
Label key.
labels[].value
string
Yes
Label value.
teams
string[]
No
Team IDs for team-scoped access control.
edit_mcp_config
Required RBAC permission: mcpRegistry:update
Input
Parameter
Type
Required
Description
id
string
Yes
The catalog ID of the MCP server to edit. Use get_mcp_servers to look it up by name.
serverType
"local" | "remote" | "builtin"
No
Server type: local, remote, or builtin.
serverUrl
string | null
No
[Remote] The URL of the remote MCP server.
requiresAuth
boolean
No
[Remote] Whether the server requires authentication.
authDescription
string | null
No
[Remote] How to set up authentication.
authFields
object[]
No
[Remote] Authentication field definitions.
authFields[].name
string
Yes
Auth field name.
authFields[].label
string
Yes
Human-readable auth field label.
authFields[].type
"header" | "query" | "cookie"
Yes
Where to send this auth field.
authFields[].secret
boolean
Yes
Whether this field contains secret data.
oauthConfig
object
No
[Remote] OAuth configuration for the server.
command
string
No
[Local] Command to run (for example npx, uvx, or node).
arguments
string[]
No
[Local] Command-line arguments.
environment
object[]
No
[Local] Environment variables for the server process.
environment[].key
string
Yes
Environment variable name.
environment[].type
"plain_text" | "secret" | "boolean" | "number"
Yes
Environment variable value type.
environment[].value
string
No
Literal environment variable value.
environment[].promptOnInstallation
boolean
Yes
Whether to prompt for this value during installation.
environment[].required
boolean
No
Whether the value is required.
environment[].description
string
No
Description shown to users.
environment[].default
any
No
Default value.
environment[].mounted
boolean
No
For secret values, mount as a file instead of an env var.
envFrom
object[]
No
[Local] Import env vars from Kubernetes Secrets or ConfigMaps.
envFrom[].type
"secret" | "configMap"
Yes
Import source type.
envFrom[].name
string
Yes
Secret or ConfigMap name.
envFrom[].prefix
string
No
Optional environment variable prefix.
dockerImage
string
No
[Local] Custom Docker image.
serviceAccount
string
No
[Local] Kubernetes ServiceAccount name.
transportType
"stdio" | "streamable-http"
No
[Local] Transport type.
httpPort
number
No
[Local] HTTP port for streamable-http transport.
httpPath
string
No
[Local] HTTP path for streamable-http transport.
nodePort
number
No
[Local] Kubernetes NodePort for local development.
imagePullSecrets
object[]
No
[Local] Image pull secrets for private registries.
Switch the current conversation to a different agent.
agent:read
swap_to_default_agent
Return to the default agent.
None (no additional RBAC permission required)
artifact_write
Write or update a markdown artifact for the current conversation.
None (no additional RBAC permission required)
todo_write
Required RBAC permission: None (no additional RBAC permission required)
Input
Parameter
Type
Required
Description
todos
object[]
Yes
Array of todo items to write to the conversation.
todos[].id
integer
Yes
Unique identifier for the todo item.
todos[].content
string
Yes
The content or description of the todo item.
todos[].status
"pending" | "in_progress" | "completed"
Yes
The current status of the todo item.
Output
Field
Type
Required
Description
success
boolean
Yes
Whether the write succeeded.
todoCount
integer
Yes
How many todo items were written.
swap_agent
Required RBAC permission: agent:read
Input
Parameter
Type
Required
Description
agent_name
string
Yes
The name of the agent to switch to.
Output
Field
Type
Required
Description
success
boolean
Yes
Whether the swap succeeded.
agent_id
string
Yes
The agent ID the conversation now uses.
agent_name
string
Yes
The agent name the conversation now uses.
swap_to_default_agent
Required RBAC permission: None (no additional RBAC permission required)
This tool takes no arguments.
Output
Field
Type
Required
Description
success
boolean
Yes
Whether the swap succeeded.
agent_id
string
Yes
The agent ID the conversation now uses.
agent_name
string
Yes
The agent name the conversation now uses.
artifact_write
Required RBAC permission: None (no additional RBAC permission required)
Input
Parameter
Type
Required
Description
content
string
Yes
The markdown content to write to the conversation artifact. This completely replaces any existing artifact content.
Output
Field
Type
Required
Description
success
boolean
Yes
Whether the artifact write succeeded.
characterCount
integer
Yes
The number of characters written to the artifact.
Meta
Tool
Description
Required RBAC Permission
search_tools
Search the agent's available tools on demand.
None (no additional RBAC permission required)
run_tool
Dispatch to any tool available to this agent, including built-in platform tools, agent delegation tools ('agent-'), or third-party MCP tools exposed through the MCP Gateway (e.g.
None (no additional RBAC permission required)
search_tools
Required RBAC permission: None (no additional RBAC permission required)
Input
Parameter
Type
Required
Description
query
string
Yes
Natural-language search query describing the capability you need. Searches tool names, descriptions, argument names, and argument descriptions.
limit
integer
No
Maximum number of matching tools to return.
Output
Field
Type
Required
Description
total
integer
Yes
Number of returned tools.
tools
object[]
Yes
tools[].toolName
string
Yes
Exact tool name to pass to run_tool.
tools[].title
string | null
Yes
Human-friendly title when available.
tools[].description
string | null
Yes
Short tool description, if available.
tools[].source
"archestra" | "mcp" | "agent_delegation"
Yes
Where the tool comes from.
tools[].server
string | null
Yes
MCP server prefix for third-party MCP tools when available.
tools[].catalogName
string | null
Yes
Catalog name for installed MCP tools when available.
tools[].inputParameters
object[]
Yes
tools[].inputParameters[].name
string
Yes
Top-level input parameter name.
tools[].inputParameters[].required
boolean
Yes
Whether the parameter is required.
tools[].inputParameters[].description
string | null
Yes
Parameter description, if available.
run_tool
Required RBAC permission: None (no additional RBAC permission required)
Input
Parameter
Type
Required
Description
tool_name
string
Yes
Name of the tool to invoke. Use the exact name as it appears in the tools list, e.g. 'archestra__whoami', 'context7__resolve-library-id', or an agent delegation name 'agent-'.
tool_args
object
No
Arguments object to pass to the target tool. Must match the target tool's input schema.