Skip to main content

get_custom_tool

Fetch one custom tool's full connector definition by its name (as shown by list_custom_tools): the HTTP method, the URL / header / body templates, the input schema, and the auth scheme. Use it to inspect a tool before editing, or to copy its definition.

The auth secret is never returned — only the auth type (a bearer token, header, or basic credential is set in the dashboard, never exposed over MCP).

You can read any tool you can see, including one from your organization's shared catalogue. A tool you can't see reads as not found — its existence is never revealed.

The name is caller-relative: bare selects personal content for a standalone credential and the organization catalogue for an organization credential; me/name selects the represented member's private organization space, and <team>/name selects a bound team.

Parameters​

ParameterTypeRequiredDescription
namestringYesThe tool to fetch, named exactly as list_custom_tools shows it.

Response​

FieldTypeDescription
namestringThe tool's name.
descriptionstringThe tool's description, when it has one.
http_methodstringThe HTTP method of the outbound request.
url_templatestringThe URL template, with {placeholder} substitution.
headersobjectHeader name → value-template map.
body_templatestringThe request-body template, when the tool sends a body.
input_schemaobjectThe JSON Schema describing the tool's arguments.
authobjectThe auth scheme — its type, plus header_name for header auth. Never the secret.

Example​

{
"name": "weather"
}

Result:

{
"name": "weather",
"description": "Fetch the weather for a city",
"http_method": "GET",
"url_template": "https://api.example.com/weather/{city}",
"headers": {},
"input_schema": { "type": "object", "properties": { "city": { "type": "string" } } },
"auth": { "type": "none" }
}

Errors​

Each failure carries a precise code in the response. A domain rejection — a not-found or a capability denial — is returned as a tool result with isError: true, so the agent can read the code and self-correct; malformed arguments and server faults are JSON-RPC protocol errors.

CodeCauseDelivered as
custom_tool_not_foundNo such tool is visible to you — it doesn't exist or is out of scope.tool error (isError)
capability_deniedThe credential lacks the Tools capability required for governed tool use.tool error (isError)
invalid_argumentsThe arguments are missing or don't match the input schema.protocol error (invalid_params)
internal_errorAn unexpected error occurred.protocol error (internal_error)

Notes​

  • The auth secret is never part of the response. Secrets are set and kept in the dashboard.
  • To copy a tool, read its definition here, then use create_custom_tool.
  • Reading a tool counts as one tool call against your plan's tool-invocation allowance.