Skip to main content

Overview

Tools are HTTP services that agents can call to perform actions. Tools verify agent identities using Vestauth signatures, enabling secure agent-to-service communication without API keys or bearer tokens.

What is a Tool?

A tool is any HTTP API endpoint that:
  1. Accepts requests from Vestauth agents
  2. Verifies agent signatures using vestauth.tool.verify
  3. Returns responses to authenticated agents
Tools can be:
  • File storage systems
  • Email services
  • Database APIs
  • Notification systems
  • Any HTTP service
Tools authenticate agents using cryptographic signatures instead of API keys, making them more secure and easier to manage.

How Agents Call Tools

Agents use the vestauth agent curl command to make authenticated requests:
This automatically:
  1. Signs the request with the agent’s private key
  2. Adds signature headers (Signature, Signature-Input, Signature-Agent)
  3. Sends the request to the tool
  4. Returns the response

Request Flow

First-Party Tools

Vestauth provides official tools hosted at vestauth.com:

SFS (Simple File System)

A simple file system for agents:
Files are scoped to each agent by UID. Agents can only access their own files.

GEO (Latitude and Longitude)

Returns geographic location information:
Response:

Third-Party Tools

Anyone can build tools that work with Vestauth agents:

AS2 (Agentic Secret Storage)

Secure secret storage from dotenvx:

Docle (Email Verification)

Check if email addresses are real:
Third-party tools integrate with Vestauth by using the verification library. No special registration required.

Building Your Own Tool

Create a tool in three steps:

1. Install Vestauth

2. Verify Agent Requests

Add verification to your endpoint:

3. Test with an Agent

The vestauth.tool.verify function:
  1. Extracts signature headers from the request
  2. Parses the Signature-Agent header to get the agent UID
  3. Fetches the agent’s public key from their discovery endpoint
  4. Verifies the signature matches the request
  5. Returns the verified agent identity or throws an error

Tool Verification Implementation

Here’s how vestauth.tool.verify works under the hood:
src/lib/helpers/toolVerify.js

Agent Scoping

Each verified request includes the agent’s UID:
Use this to scope data, track usage, or implement permissions:

Tool Security

SSRF Prevention

Vestauth prevents Server-Side Request Forgery by restricting public key discovery to trusted domains:
For self-hosted agents, configure trusted domains:
Only add trusted domains to TOOL_FQDN_REGEX. Vestauth will fetch public keys from these domains.

Request Validation

Always validate request data after verifying the agent:

Rate Limiting

Implement rate limiting per agent UID:

Tool Discovery

Tools don’t require registration with Vestauth. Agents can call any tool by URL:
The tool verifies the agent by:
  1. Checking the signature
  2. Fetching the public key from the agent’s discovery endpoint
  3. Validating the signature matches
Tools and agents discover each other through standard HTTP and .well-known endpoints. No central registry required.

Primitives API

For advanced use cases, use the primitives API directly:

Tool Development Tips

Cache agent public keys to reduce discovery requests:
Help agents debug by returning clear error messages:
Track which agents use your tool:

Next Steps

Authentication

Learn how signature verification works

Standards

Understand RFC 9421 and Web-Bot-Auth