Documentation Index
Fetch the complete documentation index at: https://docs.getmcp.com/llms.txt
Use this file to discover all available pages before exploring further.
A tool is the core building block of GetMCP. When an AI client wants to take an action (fetch data, create a record, send a message), it calls a tool. Each tool maps to a specific HTTP API endpoint.
Tools are defined by:
- A name and description that help the AI decide when to use the tool
- An endpoint URL and HTTP method to call
- An input schema defining what parameters the AI can pass
- Parameter mapping that controls where arguments go in the request
| Property | Description |
|---|
| Name | Machine-readable identifier used by AI clients to call the tool (e.g., get_weather) |
| Description | Human-readable explanation; AI uses this to decide when to call the tool |
| Tags | Free-form labels for internal grouping; no effect on MCP behavior |
| HTTP Method | GET, POST, PUT, PATCH, or DELETE |
| Endpoint URL | The HTTP URL to call (supports {param} path placeholders) |
| Input Schema | JSON Schema defining accepted parameters |
| Parameter Mapping | Where to inject each input parameter |
| Headers | Custom HTTP headers to include in the request |
| Cache TTL | Cache response for N seconds (0 = no cache) |
| Timeout | Maximum request wait time in seconds (default: 30) |
| Retry Count | Number of retries on failure |
| Status | active or paused |
Tools use JSON Schema to define their inputs. This lets AI clients understand what parameters to pass and enables automatic validation.
Example input schema:
{
"type": "object",
"properties": {
"city": {
"type": "string",
"description": "The city name"
},
"units": {
"type": "string",
"enum": ["metric", "imperial"],
"default": "metric",
"description": "Temperature units"
}
},
"required": ["city"]
}
Parameter Mapping
Each input parameter can be mapped to a different part of the HTTP request:
| Mapping | Description | Example |
|---|
| Path | Replaces {param} in the URL | https://api.example.com/users/{user_id} |
| Query | Appends as ?param=value | https://api.example.com/search?q=value |
| Body | Included in the JSON request body | POST/PUT requests |
| Header | Sent as a custom HTTP header | X-Custom-Header: value |
Authentication
Tools can receive API credentials in two ways:
Fixed credentials — Add static API keys as Custom Headers in the tool’s Advanced Settings. Common patterns:
| Auth Pattern | Header |
|---|
| Bearer Token | Authorization: Bearer your_token |
| API Key (header) | X-API-Key: your_key |
| Basic Auth | Authorization: Basic base64(user:pass) |
| API Key (query) | Add directly to the Endpoint URL: ?api_key=your_key |
User-supplied credentials — When each user of the MCP server has their own API key (e.g., their own OpenAI account), they add their key to the headers block in their MCP client config. GetMCP forwards these headers to the external API — the keys are never stored in GetMCP.
Each tool has its own Custom Headers, so different tools can authenticate with different APIs using different credentials.
See the Authentication Guide for a full walkthrough of both approaches.
Naming Conventions
Tool names follow MCP conventions and are typically snake_case. Good examples:
get_user — fetch a user record
create_invoice — create a new invoice
search_products — search a product catalog
send_email — send an email message
Write detailed, specific descriptions. The AI uses your description to decide when and how to call the tool. Vague descriptions lead to incorrect or missed tool calls.
Tags are free-form labels you attach to tools for internal organization. They have no effect on how the MCP protocol exposes or calls the tool — AI clients do not use tags to decide which tools to call.
Use tags to group and filter tools in the GetMCP admin:
| Example Tag | Purpose |
|---|
billing | All tools related to payments and invoices |
read-only | Tools that only fetch data, never mutate |
staging | Tools pointed at staging/sandbox endpoints |
deprecated | Tools scheduled for removal |
Adding tags — Open the tool editor, scroll to the Tags field, and type a tag name then press Enter. A tool can have multiple tags.
Filtering by tag — On the Tools tab, use the tag filter dropdown to show only tools matching a specific tag. This is useful on servers with many tools across multiple domains.
Tags are for admin-side organization only. They do not affect tool discovery, tool calls, or any MCP protocol behavior seen by AI clients.
Use the built-in test panel to verify tool behavior before connecting AI clients:
- Click the Test button on any tool
- Enter sample argument values as a JSON object
- Click Run Test to execute against the real API
- Review the response, status code, and response time
cURL Import
Already have a working API request? Import it directly:
- Copy a
curl command from your terminal or API docs
- Click Import from cURL in the tool editor
- GetMCP parses the URL, method, headers, and body automatically
See the cURL Import guide for details.
MCP Protocol
Tools integrate with the standard MCP protocol methods:
tools/list — Returns all active tools for the server (name, description, input schema). AI clients call this on connect to discover what tools are available.
tools/call — Executes a specific tool with the provided arguments and returns the result. GetMCP validates the arguments against the input schema, makes the configured HTTP request, and returns the response to the AI client.
The order tools appear in tools/list matches the order they are arranged in the GetMCP admin. Use drag-and-drop in the Tools tab to control which tools appear first.