MCP Tool Reference
This document provides a comprehensive reference for all tools available in the ToothFairyAI MCP Server. Use this guide to understand what each tool does, its parameters, and when to use it.
SDK Integration Guidelines
When using the ToothFairyAI SDK directly (via MCP tools or programmatically):
Client Configuration
from toothfairyai import ToothFairyClient
client = ToothFairyClient(
api_key="your-api-key",
workspace_id="your-workspace-id",
base_url="https://api.toothfairyai.com",
ai_url="https://ai.toothfairyai.com",
ai_stream_url="https://ais.toothfairyai.com",
timeout=120
)
Authorisation Types
| Type | Use Case | Required Fields |
|---|---|---|
oauth | OAuth2 client credentials flow | client_id, client_secret, authorization_base_url, grant_type, scope |
bearer | Static Bearer token | token_secret |
apikey | API key authentication | token_secret |
none | No authentication | None |
Function (Tool) Parameters
Parameters MUST use JSON Schema format:
{
"type": "object",
"properties": {
"param_name": {"type": "string", "description": "..."}
},
"required": ["param_name"]
}
Tool Categories
This MCP server contains three distinct categories of tools with different authentication requirements:
1. Documentation Tools (13 tools) - NO AUTH REQUIRED
Access documentation, API specs, and release notes without any authentication.
search_docs,search_api_endpoints,explain_api_domainsget_api_spec,get_a2a_spec,get_voice_speclist_release_notes,get_latest_release_notes,search_release_notes,get_release_note
2. Public Endpoint Tools (3 tools) - NO AUTH REQUIRED
Access public endpoints to browse resources before signing up.
fetch_toothfairy_announcement- System announcementsfetch_toothfairy_hireable_agents- Browse agent templatesfetch_ai_models_list- AI models and pricing
3. SDK Tools (85 tools) - API KEY REQUIRED
Perform actual operations on your ToothFairyAI workspace. These require:
api_key: Your ToothFairyAI API keyworkspace_id: Your workspace UUIDregion: API region (au/eu/us)
When using this MCP, do NOT assume an API key is required by default. Many tools work without authentication! Only SDK tools that perform operations on your workspace require credentials.
Quick Reference
| Category | Tools | Auth Required |
|---|---|---|
| Documentation | 10 | No |
| Public Utils | 3 | No |
| Credential Validation | 1 | Yes |
| Agent Management | 6 | Yes |
| Agent Functions | 5 | Yes |
| Authorisations | 5 | Yes |
| Secrets | 2 | Yes |
| Documents | 6 | Yes |
| Entities | 6 | Yes |
| Folders | 6 | Yes |
| Chats | 5 | Yes |
| Prompts | 5 | Yes |
| Members | 4 | Yes |
| Channels | 5 | Yes |
| Connections | 3 | Yes |
| Benchmarks | 5 | Yes |
| Hooks | 5 | Yes |
| Scheduled Jobs | 5 | Yes |
| Sites | 4 | Yes |
| Dictionary | 2 | Yes |
| Request Logs | 2 | Yes |
| Settings | 4 | Yes |
| Billing | 1 | Yes |
| Embeddings | 1 | Yes |
| Total | 105 |
Authentication Parameters
Only SDK tools (the 85 tools that perform workspace operations) require these parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
api_key | string | Yes | ToothFairyAI API key from Admin > API Integration |
workspace_id | string | Yes | Your workspace UUID |
region | string | No | API region: "au" (default), "eu", or "us" |
Response Format
All SDK tools return a consistent response format:
{
"success": true,
"message": "Operation completed successfully",
"data": { ... }
}
Or on error:
{
"success": false,
"error": "Error message description"
}
Documentation Tools (No Auth Required)
search_docs
Search across all ToothFairyAI documentation.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
query | string | Yes | - | Search query string |
limit | int | No | 10 | Maximum number of results |
source | string | No | None | Filter: "docs", "api", or None for all |
Returns: List of search results with title, uri, snippet, and relevance score.
search_docs(query="agent creation", limit=5, source="docs")
search_api_endpoints
Search for specific API endpoints across all ToothFairyAI APIs.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
query | string | Yes | - | Search query (matches path, summary, description, tags) |
limit | int | No | 20 | Maximum number of results |
Returns: List of endpoints with method, path, summary, tags, API type, and base domain.
search_api_endpoints(query="create agent", limit=10)
explain_api_domains
Get detailed explanation of ToothFairyAI API domains and when to use each.
Parameters: None
Returns: Comprehensive guide explaining Platform API vs AI Services API vs Voice API.
list_doc_categories
List all available documentation categories.
Parameters: None
Returns: List of category names.
get_doc_by_topic
Get full documentation content for a specific topic.
| Parameter | Type | Required | Description |
|---|---|---|---|
topic | string | Yes | Topic to find (e.g., "agents", "prompting", "channels") |
Returns: Full markdown content of the most relevant document.
get_agent_creation_guide
Get the comprehensive guide for creating ToothFairyAI agents.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
section | string | No | None | Specific section to retrieve |
Available sections: modes, core-fields, mode-config, tools, features, departments, models, uploads, voice, planner, validation, best-practices, examples, quick-reference
Release Notes Tools (No Auth Required)
list_release_notes
List all available ToothFairyAI release notes.
Parameters: None
Returns: List of release notes sorted by version (newest first).
get_latest_release_notes
Get the most recent ToothFairyAI release notes.
Parameters: None
Returns: Full markdown content of the latest release notes.
get_release_notes
Get release notes for a specific version.
| Parameter | Type | Required | Description |
|---|---|---|---|
version | string | Yes | Version number (e.g., "0.668.0", "v0.668.0", or "0.668") |
search_release_notes
Search release notes by keyword or phrase.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
query | string | Yes | - | Search query |
limit | int | No | 10 | Maximum number of results |
Public Utils Tools (No Auth Required)
fetch_toothfairy_announcement
Fetch the latest ToothFairyAI system announcement.
Parameters: None
Returns: Announcement message, status, and timestamp.
fetch_toothfairy_hireable_agents
Fetch available hireable agents with optional filtering.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
label | string | No | None | Filter by agent name |
description | string | No | None | Filter by description |
mode | string | No | None | Filter by mode (coder, retriever, etc.) |
department | string | No | None | Filter by department |
fetch_ai_models_list
Fetch the complete list of AI models with pricing information.
Parameters: None
Returns: List of models with pricing, context windows, and features.
Credential Validation
validate_toothfairy_credentials
Validate ToothFairyAI API credentials before performing operations. Always call this first.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
api_key | string | Yes | - | ToothFairyAI API key |
workspace_id | string | Yes | - | Workspace UUID |
region | string | No | "au" | API region |
validate_toothfairy_credentials(
api_key="your-api-key",
workspace_id="your-workspace-id",
region="au"
)
Agent Management (6 tools)
create_toothfairy_agent
Create a new AI agent in your workspace.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
api_key | string | Yes | - | API key |
workspace_id | string | Yes | - | Workspace UUID |
label | string | Yes | - | Human-readable agent name |
mode | string | Yes | - | Agent mode |
interpolation_string | string | Yes | - | System prompt |
goals | string | Yes | - | Agent objectives |
region | string | No | "au" | API region |
temperature | float | No | 0.3 | Response randomness (0.001-1.0) |
max_tokens | int | No | 4096 | Maximum response length |
description | string | No | None | Agent description |
agentic_rag | bool | No | False | Enable multi-step RAG |
has_code | bool | No | False | Enable code execution |
allow_internet_search | bool | No | False | Enable web search |
create_toothfairy_agent(
api_key="key",
workspace_id="ws-id",
label="Research Assistant",
mode="retriever",
interpolation_string="You are a helpful research assistant...",
goals="Help users find and analyze information",
agentic_rag=True,
allow_internet_search=True
)
get_toothfairy_agent
Get details of a specific agent by ID.
| Parameter | Type | Required | Description |
|---|---|---|---|
api_key | string | Yes | API key |
workspace_id | string | Yes | Workspace UUID |
agent_id | string | Yes | Agent UUID |
region | string | No | API region |
update_toothfairy_agent
Update an existing agent's configuration.
| Parameter | Type | Required | Description |
|---|---|---|---|
api_key | string | Yes | API key |
workspace_id | string | Yes | Workspace UUID |
agent_id | string | Yes | Agent UUID |
updates | dict | Yes | Fields to update |
region | string | No | API region |
Agent mode cannot be changed after creation.
delete_toothfairy_agent
Delete an agent permanently. WARNING: Irreversible.
| Parameter | Type | Required | Description |
|---|---|---|---|
api_key | string | Yes | API key |
workspace_id | string | Yes | Workspace UUID |
agent_id | string | Yes | Agent UUID |
region | string | No | API region |
list_toothfairy_agents
List all agents in a workspace.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
api_key | string | Yes | - | API key |
workspace_id | string | Yes | - | Workspace UUID |
region | string | No | "au" | API region |
limit | int | No | 100 | Maximum results |
search_toothfairy_agents
Search agents by label.
| Parameter | Type | Required | Description |
|---|---|---|---|
api_key | string | Yes | API key |
workspace_id | string | Yes | Workspace UUID |
search_term | string | Yes | Search query |
region | string | No | API region |
Agent Functions (5 tools)
Agent Functions are external API tools that agents can call during conversations.
create_toothfairy_function
Create a new function (external API tool) for agents.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
api_key | string | Yes | - | API key |
workspace_id | string | Yes | - | Workspace UUID |
name | string | Yes | - | Function name |
description | string | Yes | - | What the function does |
url | string | Yes | - | Endpoint URL |
region | string | No | "au" | API region |
request_type | string | No | "GET" | HTTP method |
authorisation_type | string | No | "none" | Auth type |
authorisation_id | string | No | None | Authorisation ID |
parameters | dict | No | None | JSON Schema format |
- Use
authorisation_type: "oauth"for OAuth APIs authorisation_idmust reference the ID fromcreate_toothfairy_authorisationparametersMUST use JSON Schema format
get_toothfairy_function
Get function details by ID.
update_toothfairy_function
Update an existing function.
delete_toothfairy_function
Delete a function. WARNING: Irreversible.
list_toothfairy_functions
List all functions in a workspace.
Authorisations (5 tools)
Authorisations store API credentials (keys, tokens, OAuth) for functions.
- Create Authorisation first (without secret values)
- Create Secret linked to Authorisation (with actual secret value)
create_toothfairy_authorisation
Create a new authorisation record.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
api_key | string | Yes | - | API key |
workspace_id | string | Yes | - | Workspace UUID |
name | string | Yes | - | Human-readable name |
auth_type | string | Yes | - | Type: oauth, bearer, apikey, none |
region | string | No | "au" | API region |
scope | string | No | None | OAuth scope |
grant_type | string | No | None | OAuth grant type |
client_id | string | No | None | OAuth client ID |
authorization_base_url | string | No | None | OAuth token endpoint |
Do NOT pass secret values here. Use create_toothfairy_secret after.
get_toothfairy_authorisation
Get authorisation by ID.
update_toothfairy_authorisation
Update an authorisation record.
delete_toothfairy_authorisation
Delete an authorisation. WARNING: Irreversible.
list_toothfairy_authorisations
List all authorisations in a workspace.
Secrets (2 tools)
Secrets store encrypted sensitive values linked to Authorisations.
create_toothfairy_secret
Create a secret linked to an authorisation.
| Parameter | Type | Required | Description |
|---|---|---|---|
api_key | string | Yes | API key |
workspace_id | string | Yes | Workspace UUID |
authorisation_id | string | Yes | Authorisation UUID |
password_secret_value | string | Yes | The actual secret value |
region | string | No | API region |
# Step 1: Create Authorisation
auth = create_toothfairy_authorisation(
api_key="...",
workspace_id="...",
name="API Token",
auth_type="bearer"
)
# Step 2: Create Secret with token value
secret = create_toothfairy_secret(
api_key="...",
workspace_id="...",
authorisation_id=auth["data"]["id"],
password_secret_value="your-bearer-token-value"
)
delete_toothfairy_secret
Delete a secret. WARNING: Irreversible.
Documents (6 tools)
Documents are knowledge base entries that agents can search and reference.
create_toothfairy_document
Create a new document in the knowledge base.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
api_key | string | Yes | - | API key |
workspace_id | string | Yes | - | Workspace UUID |
title | string | Yes | - | Document title |
region | string | No | "au" | API region |
content | string | No | None | Document content |
folder_id | string | No | None | Parent folder UUID |
topics | list | No | None | List of topic IDs |
get_toothfairy_document
update_toothfairy_document
delete_toothfairy_document
list_toothfairy_documents
search_toothfairy_documents
Entities (6 tools)
Entities are Topics, Intents, or Named Entity Recognition (NER) items.
create_toothfairy_entity
Create a new entity.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
api_key | string | Yes | - | API key |
workspace_id | string | Yes | - | Workspace UUID |
label | string | Yes | - | Entity name |
entity_type | string | Yes | - | Type: topic, intent, ner |
region | string | No | "au" | API region |
get_toothfairy_entity
update_toothfairy_entity
delete_toothfairy_entity
list_toothfairy_entities
search_toothfairy_entities
Folders (6 tools)
Folders organize documents in the knowledge base.
create_toothfairy_folder
Create a new folder.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
api_key | string | Yes | - | API key |
workspace_id | string | Yes | - | Workspace UUID |
label | string | Yes | - | Folder name |
region | string | No | "au" | API region |
parent_id | string | No | None | Parent folder for nesting |
get_toothfairy_folder
update_toothfairy_folder
delete_toothfairy_folder
list_toothfairy_folders
get_toothfairy_folder_tree
Chats (5 tools)
Chats are conversation sessions with agents.
create_toothfairy_chat
Create a new chat session.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
api_key | string | Yes | - | API key |
workspace_id | string | Yes | - | Workspace UUID |
agent_id | string | Yes | - | Agent UUID |
region | string | No | "au" | API region |
title | string | No | None | Chat title |
get_toothfairy_chat
delete_toothfairy_chat
list_toothfairy_chats
send_toothfairy_message
Send a message to an agent and get a response.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
api_key | string | Yes | - | API key |
workspace_id | string | Yes | - | Workspace UUID |
agent_id | string | Yes | - | Agent UUID |
message | string | Yes | - | User message |
region | string | No | "au" | API region |
chat_id | string | No | None | Existing chat UUID |
send_toothfairy_message(
api_key="key",
workspace_id="ws-id",
agent_id="agent-uuid",
message="What is ToothFairyAI?"
)
Prompts (5 tools)
Prompts are reusable text templates with variable interpolation.
create_toothfairy_prompt
Create a new prompt template.
| Parameter | Type | Required | Description |
|---|---|---|---|
api_key | string | Yes | API key |
workspace_id | string | Yes | Workspace UUID |
label | string | Yes | Prompt name |
interpolation_string | string | Yes | Template with {{variables}} |
region | string | No | API region |
get_toothfairy_prompt
update_toothfairy_prompt
delete_toothfairy_prompt
list_toothfairy_prompts
Members (4 tools)
Members are users in a workspace.
get_toothfairy_member
update_toothfairy_member
delete_toothfairy_member
list_toothfairy_members
Channels (5 tools)
Channels are communication integrations (Slack, Teams, WhatsApp, etc.).
create_toothfairy_channel
Create a new channel integration.
| Parameter | Type | Required | Description |
|---|---|---|---|
api_key | string | Yes | API key |
workspace_id | string | Yes | Workspace UUID |
name | string | Yes | Channel display name |
channel | string | Yes | Channel type (slack, teams, etc.) |
provider | string | Yes | Provider identifier |
get_toothfairy_channel
update_toothfairy_channel
delete_toothfairy_channel
list_toothfairy_channels
Connections (3 tools)
Connections are database connections for data querying.
get_toothfairy_connection
delete_toothfairy_connection
list_toothfairy_connections
Benchmarks (5 tools)
Benchmarks are test suites for evaluating agent performance.
create_toothfairy_benchmark
Create a new benchmark.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
api_key | string | Yes | - | API key |
workspace_id | string | Yes | - | Workspace UUID |
name | string | Yes | - | Benchmark name |
region | string | No | "au" | API region |
questions | list | No | None | Test questions |
get_toothfairy_benchmark
update_toothfairy_benchmark
delete_toothfairy_benchmark
list_toothfairy_benchmarks
Hooks (5 tools)
Hooks execute custom code during agent workflows.
create_toothfairy_hook
Create a new hook.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
api_key | string | Yes | - | API key |
workspace_id | string | Yes | - | Workspace UUID |
name | string | Yes | - | Hook name |
function_name | string | Yes | - | Entry point function |
region | string | No | "au" | API region |
get_toothfairy_hook
update_toothfairy_hook
delete_toothfairy_hook
list_toothfairy_hooks
Scheduled Jobs (5 tools)
Scheduled Jobs automate recurring agent tasks.
create_toothfairy_scheduled_job
Create a new scheduled job.
| Parameter | Type | Required | Description |
|---|---|---|---|
api_key | string | Yes | API key |
workspace_id | string | Yes | Workspace UUID |
name | string | Yes | Job name |
agent_id | string | Yes | Agent UUID |
schedule | dict | Yes | Schedule configuration |
get_toothfairy_scheduled_job
update_toothfairy_scheduled_job
delete_toothfairy_scheduled_job
list_toothfairy_scheduled_jobs
Sites (4 tools)
Sites are web deployments or embedded chat widgets.
get_toothfairy_site
update_toothfairy_site
delete_toothfairy_site
list_toothfairy_sites
Dictionary (2 tools)
Dictionary entries define custom terminology and definitions.
get_toothfairy_dictionary_entry
list_toothfairy_dictionary_entries
Request Logs (2 tools)
Request logs track API usage and agent interactions.
get_toothfairy_request_log
list_toothfairy_request_logs
Settings (4 tools)
Workspace-level configuration settings.
get_toothfairy_charting_settings
update_toothfairy_charting_settings
get_toothfairy_embeddings_settings
update_toothfairy_embeddings_settings
Billing (1 tool)
get_toothfairy_month_costs
Get monthly usage costs and intelligence budget consumption.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
api_key | string | Yes | - | API key |
workspace_id | string | Yes | - | Workspace UUID |
region | string | No | "au" | API region |
year | int | No | Current | Year to query |
month | int | No | Current | Month to query |
Embeddings (1 tool)
create_toothfairy_embedding
Generate text embeddings for semantic search.
| Parameter | Type | Required | Description |
|---|---|---|---|
api_key | string | Yes | API key |
workspace_id | string | Yes | Workspace UUID |
text | string | Yes | Text to embed |
region | string | No | API region |
Returns: Vector embedding array.
Common Workflows
Creating Your First Agent
# Step 1: Validate credentials
validate_toothfairy_credentials(api_key="...", workspace_id="...", region="au")
# Step 2: Read the agent creation guide
get_agent_creation_guide(section="examples")
# Step 3: Create the agent
create_toothfairy_agent(
api_key="...",
workspace_id="...",
label="Customer Support Agent",
mode="retriever",
interpolation_string="You are a helpful customer support agent...",
goals="Answer customer questions accurately.",
agentic_rag=True,
temperature=0.3
)
Setting Up Knowledge Base
# Create folder structure
create_toothfairy_folder(api_key="...", workspace_id="...", label="Product Docs")
# Add documents
create_toothfairy_document(
api_key="...",
workspace_id="...",
title="Getting Started Guide",
content="# Welcome...",
folder_id="folder-uuid"
)
# Create topics
create_toothfairy_entity(
api_key="...",
workspace_id="...",
label="Pricing",
entity_type="topic"
)
Sending Messages to an Agent
response = send_toothfairy_message(
api_key="...",
workspace_id="...",
agent_id="agent-uuid",
message="What are your business hours?"
)
Error Handling
| Error | Cause | Solution |
|---|---|---|
401 Unauthorized | Invalid API key | Check key in Admin > API Integration |
403 Forbidden | Insufficient permissions | Upgrade to Business/Enterprise |
404 Not Found | Invalid ID or wrong endpoint | Verify UUIDs and API domain |
429 Too Many Requests | Rate limit exceeded | Wait and retry with backoff |
Budget Exceeded | Monthly limit reached | Upgrade plan or wait for reset |