Skip to main content

Agent tools

View as Markdown

Agents often call external capabilities to do their work — MCP servers, REST APIs, internal search indexes, or databases. The tools array in an agent's frontmatter captures these dependencies so anyone reading the catalog can understand what the agent reaches out to at runtime.

Agent tools table rendered on an agent page

Define tools in frontmatter

Add a tools array to your agent's frontmatter. Each entry describes one tool:

/agents/OrderSupportAgent/index.mdx (example)
---
# id of your agent, used for slugs and references in EventCatalog.
id: OrderSupportAgent

# Display name of the Agent, rendered in EventCatalog
name: Order Support Agent

# Version of the Agent
version: 0.0.1

# Optional external tools the agent can call
tools:
# Display name of the tool
- name: Order lookup
# Type of tool (e.g. `mcp`, `api`) — free-form string
type: mcp
# Optional icon path (from your catalog's `public/` folder) or absolute URL
icon: /icons/tools/snowflake.svg
# Optional link to the tool endpoint or documentation
url: https://mcp.example.com/orders/lookup
# Optional short description of what the tool does
description: Retrieves order status, totals, shipment milestones, and recent order events from the operational read model.
- name: Support case notes
type: mcp
icon: /icons/tools/zendesk.svg
url: https://mcp.example.com/support/case-notes
description: Appends investigation notes, suggested customer replies, and follow-up actions to the support ticket.
---

Tool fields

FieldRequiredDescription
nameYesDisplay name of the tool
typeYesFree-form string — use mcp for MCP servers, api for REST/HTTP endpoints, or any label that fits your stack
iconNoPath in your catalog's public/ folder or an absolute URL to an icon image
urlNoLink to the tool endpoint or documentation
descriptionNoOne or two sentences describing what the tool does

The type field is a plain string. mcp gets special rendering in the catalog (the MCP logo appears next to the badge), but you can use any value that is meaningful to your team.

Render tools on the page

Add the <AgentTools /> component anywhere in your agent's MDX body to render the tools table. The component reads the tools array from the current agent's frontmatter — no props needed.

/agents/OrderSupportAgent/index.mdx (example)
---
id: OrderSupportAgent
# ... rest of frontmatter
---

This agent helps the support team answer order questions.

## Tools

<AgentTools />

## Responsibilities

- Summarize the current state of an order for support staff.

<AgentTools /> is only supported inside agent pages. If you add it to a service or message page, the catalog will display a warning and skip the table.

Agent tools table with MCP badge and icon columns