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

# Tools

> Tools let Feather agents read data and take actions in your own systems or connected services.

Tools are how an agent moves beyond conversation into action. A tool can look up account data, create a task, schedule an appointment, update a CRM record, or trigger a downstream workflow.

## Tool Categories

* **Custom tools**: HTTP requests you define
* **Pre-built tools**: ready-made Feather capabilities exposed to agents
* **Integration-backed tools**: actions unlocked after connecting a supported integration

## When to Use a Tool

Use a tool when the agent needs trusted data or a side effect, for example:

* Look up an order or policy
* Create or update a CRM record
* Trigger internal follow-up work
* Book or confirm an appointment
* Hand off to another workflow or human team

## Custom Tool Example

This tool creates a follow-up task in an external system.

```bash theme={"system"}
curl -X POST "https://prod.featherhq.com/api/v1/tools" \
  -H "X-API-Key: $FEATHER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Create follow-up task",
    "slug": "create_follow_up_task",
    "description": "Create a follow-up task in the CRM after a customer conversation.",
    "speech": "I am creating the follow-up now.",
    "structure": {
      "url": "https://api.example.com/tasks",
      "method": "POST",
      "headers": [
        {
          "key": "Authorization",
          "value": "Bearer YOUR_BACKEND_TOKEN",
          "secure": true
        },
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "body": {
        "title": "{{task_title}}",
        "ownerId": "{{owner_id}}",
        "customerId": "{{customer_id}}",
        "notes": "{{notes}}"
      },
      "timeout": 30,
      "variables": [
        {
          "name": "task_title",
          "type": "str",
          "description": "Short action-oriented task title",
          "required": true
        },
        {
          "name": "owner_id",
          "type": "str",
          "description": "CRM owner identifier",
          "required": true
        },
        {
          "name": "customer_id",
          "type": "str",
          "description": "Customer identifier in the CRM",
          "required": true
        },
        {
          "name": "notes",
          "type": "str",
          "description": "Freeform notes about the follow-up",
          "required": false
        }
      ]
    }
  }'
```

## Prompting for Tool Use

Describe tools in the prompt in terms of intent, not implementation. Good prompts tell the agent:

* When the tool should be used
* Which facts must be confirmed first
* What success looks like
* When the agent must avoid using the tool

## Tool Design Guidelines

* Keep tools narrow and outcome-focused.
* Require only the inputs the agent can reliably collect.
* Return structured, human-readable results.
* Hide credentials in secure headers instead of prompt text.
* Make side effects idempotent where possible.

## Tools and Knowledge Base

Tools and knowledge base solve different problems:

* Use **knowledge base** for grounded answers from documents.
* Use **tools** for live data retrieval and actions.

Most production agents use both.

## Related API Reference

<CardGroup cols={2}>
  <Card title="Custom Tools API" icon="code" href="/api-reference/tools/create-new-tool">
    Create and manage custom tools.
  </Card>

  <Card title="Pre-built Tools API" icon="code" href="/api-reference/tools/list-pre-built-tools">
    Inspect the tools Feather exposes directly.
  </Card>

  <Card title="Integrations" icon="plug" href="/documentation/core-concepts/integrations">
    Learn how connected services can power tools.
  </Card>

  <Card title="Knowledge Base" icon="database" href="/documentation/core-concepts/knowledge-base">
    Pair tools with grounded document retrieval.
  </Card>
</CardGroup>
