Skip to content

MCP Tools

Overview

MCP tools extend Claude's capabilities by providing functions that Claude can call to perform actions or retrieve data. Tools are the primary way to integrate external systems, APIs, and custom functionality with Claude.

About This Section

This section is designed to be filled by forked projects with their specific tools. The base Seed server includes minimal example tools for reference.

Adding Tools to This Documentation

If you've forked Seed and are adding custom tools, structure your documentation as follows:

wiki/tools/
├── overview.md (this file)
├── catalog.md (list of all available tools)
├── categories/
│   ├── database.md (database tools)
│   ├── api.md (API integration tools)
│   ├── file-system.md (file operations)
│   └── utilities.md (utility functions)
└── guides/
    ├── creating-tools.md (how to create new tools)
    └── best-practices.md (tool design patterns)

Tool Documentation Template

For each tool, include:

markdown
# Tool Name

## Description
Brief description of what the tool does.

## Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| param1 | string | Yes | Description |
| param2 | number | No | Description (default: value) |

## Return Value

Description of what the tool returns.

## Example Usage

\`\`\`json
{
  "name": "tool_name",
  "arguments": {
    "param1": "value",
    "param2": 42
  }
}
\`\`\`

## Example Response

\`\`\`json
{
  "content": [
    {
      "type": "text",
      "text": "Result..."
    }
  ]
}
\`\`\`

## Error Handling

Common errors and how to handle them.

## Related Tools

Links to related tools.

Base Server Tools

The base Seed server includes one example tool:

seed_ping

Purpose: Health check and authentication test tool

Description: Simple ping tool that returns server status and authenticated user information. Useful for testing connectivity and verifying JWT authentication is working correctly.

Parameters: None

Returns:

json
{
  "message": "pong",
  "timestamp": "2025-12-09T...",
  "authenticated_user": {
    "sub": "user-id",
    "email": "user@example.com"
  }
}

Usage: This tool serves as a reference implementation. See the development guide for details on tool architecture.

Development Resources

Creating Tools

See the comprehensive guide: Adding MCP Tools

Key topics covered:

  • Tool structure and registration
  • Input schema definition with JSON Schema
  • Return types (text, image, resource)
  • Error handling patterns
  • Testing strategies
  • Authentication and user context
  • External service integration

Tool Best Practices

  1. Clear Naming - Use descriptive snake_case names
  2. Comprehensive Schemas - Document all parameters thoroughly
  3. Input Validation - Always validate before processing
  4. Error Messages - Provide helpful, actionable error messages
  5. Testing - Write comprehensive test coverage
  6. Documentation - Document each tool with examples

Next Steps

Contributing Tools

If you've created useful tools that others might benefit from:

  1. Ensure tools are well-tested and documented
  2. Follow the project's code quality standards
  3. Submit a merge request with your tool implementation
  4. Include documentation following the template above

See Contributing Guide for details.

Released under the MIT License.