fivetran-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@fivetran-mcpcheck sync status of Salesforce connection"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
fivetran-mcp
25 tools. 161 endpoints. Zero bloat.
A hybrid Fivetran MCP server built on the architecture Cloudflare pioneered for their own API: instead of drowning the model in dozens of tool definitions, we give it 23 fast native tools for the data engineering workflow you actually use, plus two universal tools that unlock the entire Fivetran REST API on demand.
The Problem with Every Other Fivetran MCP
Existing Fivetran MCP servers expose 13–20+ individual tools, each one permanently loaded into the LLM's context window. They still don't cover the full API — no transformations, no teams, no webhooks, no schema management depth. So you get the worst of both worlds: context overhead without completeness.
This is the context flooding problem. Cloudflare ran the math on their own API (2,500+ endpoints) and found that exposing everything as native MCP tools would consume 1.17 million tokens per turn. Their solution was radical: collapse the entire API surface into just two tools — search and execute — and let the model discover what it needs on the fly. They called it Code Mode, and it reduced the footprint to ~1,000 tokens.
Related MCP server: ads-mcp
Our Take: The Hybrid Architecture
Pure Code Mode is elegant, but it has a tradeoff. For the stuff you do every single day — check sync status, trigger a sync, list connections, pause a connector — forcing the model to search the API catalog first adds an unnecessary round trip. You already know what you want. The model should too.
So we built a hybrid:
Layer 1: 23 native tools for the complete data engineering workflow. These are purpose-built, zero-overhead, and handle the 80% case. Checking sync status, triggering a resync, managing schemas — one tool call, done. No searching, no discovering, no extra turns.
Layer 2: search + execute for everything else. An embedded catalog of all 161 Fivetran API endpoints, generated from the official OpenAPI spec. The model searches to discover endpoints, then executes to call them. Private links, proxy agents, system keys, custom connector SDKs — it's all there without adding a single extra tool definition.
The result: 25 tool schemas in your context window instead of an incomplete subset. Fast for the common case, omnipotent for the edge case.
Other Fivetran MCPs | fivetran-mcp | |
Tools in context | 13–20+ | 25 |
API coverage | Partial | Full (161 endpoints) |
Token cost per turn | High (all schemas always loaded) | Minimal |
Common tasks | Same overhead as rare ones | Optimized native tools |
New Fivetran endpoints | Requires code changes | Already covered via execute |
Setup
Get Your Fivetran API Credentials
Log in to Fivetran
Go to Settings → API Key (or click your username → API Key)
Generate a new API key — copy both the Key and the Secret
The secret is only shown once. Store it somewhere safe.
Claude Code
Add to your ~/.claude.json (or project-level .claude.json) under mcpServers:
{
"mcpServers": {
"fivetran": {
"type": "stdio",
"command": "npx",
"args": ["-y", "fivetran-mcp"],
"env": {
"FIVETRAN_API_KEY": "your-api-key",
"FIVETRAN_API_SECRET": "your-api-secret"
}
}
}
}Restart Claude Code for the server to connect. You'll see fivetran in your MCP server list, and the tools will appear as mcp__fivetran__list_connections, mcp__fivetran__search, etc.
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"fivetran": {
"command": "npx",
"args": ["-y", "fivetran-mcp"],
"env": {
"FIVETRAN_API_KEY": "your-api-key",
"FIVETRAN_API_SECRET": "your-api-secret"
}
}
}
}Restart Claude Desktop. The Fivetran tools will appear in the tools menu (hammer icon).
Cursor / Windsurf / Other MCP Clients
The config pattern is the same — npx -y fivetran-mcp as the command, with your API key and secret in the env block. Consult your client's MCP documentation for where to place the config.
Running from Source (Development)
If you cloned the repo instead of using npx:
{
"mcpServers": {
"fivetran": {
"command": "node",
"args": ["/path/to/fivetran-mcp/dist/index.js"],
"env": {
"FIVETRAN_API_KEY": "your-api-key",
"FIVETRAN_API_SECRET": "your-api-secret"
}
}
}
}Native Tools: The Fast Path
These 23 tools cover the complete data engineering lifecycle — no searching required:
Connection Management
Tool | What it does |
| List all connections with sync status, optionally filtered by group |
| Get full config, status, schedule for a specific connection |
| Create a new connector (use |
| Update connection config, schedule, or settings |
| Permanently delete a connection |
| Trigger an immediate sync without waiting for schedule |
| Pause a connection's sync schedule |
| Resume a paused connection |
Schema Management
Tool | What it does |
| Get schema/table/column config with enabled/disabled state |
| Enable/disable schemas, tables, and columns |
| Refresh schema from source (detect new tables/columns) |
Sync Monitoring
Tool | What it does |
| Current sync state, last sync time, warnings, failures |
| Per-table sync status flattened into a readable list |
| Connection state and sync history |
Group & Destination Management
Tool | What it does |
| List all groups (workspaces) |
| List all connections within a group |
| List all destinations with config |
| Run destination connectivity tests |
User & Team Management
Tool | What it does |
| List all account users |
| Invite a new user with role |
| List all teams |
Advanced Operations
Tool | What it does |
| Force historical resync of specific tables (not the whole connection) |
| Discover available connector types and their required config |
Example: Daily Data Engineering Workflow
1. list_groups() → find your workspace
2. get_group_connectors(group_id) → see all connections
3. get_sync_status(connection_id) → check if sync succeeded
4. get_table_status(connection_id) → drill into table-level status
5. trigger_sync(connection_id) → force a sync if needed
6. get_connection_schema(connection_id) → inspect what's being syncedExample: Resync Specific Tables
resync_tables(
connection_id: "spoke_foolish",
tables: { "public": ["users", "orders", "products"] }
)Universal Tools: The Long Tail
For anything beyond the 23 native tools — private links, proxy agents, system keys, custom connector SDKs, HVR registrations, and more — use search and execute.
Search: Discover What's Available
Call with no arguments to see the full API map:
> search()
Fivetran REST API — 161 endpoints across 21 categories
Account Management (1) — Account-level info and settings
Certificate Management (17) — SSL certificate and fingerprint approval
Connection Management (11) — Connectors — create, configure, sync, pause, resume, delete
Connection Schema Management (11) — Schema, table, and column configuration
Team Management (21) — Teams — membership, groups, connections, permissions
User Management (16) — Users — invite, modify, delete, memberships
...Narrow it down:
> search(tag: "Webhook Management")
> search(query: "schema reload")
> search(query: "proxy agent", method: "POST")Execute: Call Any Endpoint
> execute(method: "GET", path: "/account/info")
{ "account_id": "...", "account_name": "..." }
> execute(method: "GET", path: "/roles")
> execute(method: "POST", path: "/webhooks", body: {
"url": "https://example.com/webhook",
"events": ["sync_end"],
"active": true
})All 21 API Categories
Category | Endpoints | Description |
Account Management | 1 | Account-level info and settings |
Certificate Management | 17 | SSL certificate and fingerprint approval |
Connection Management | 11 | Connectors — create, configure, sync, pause, resume, delete |
Connection Schema Management | 11 | Schema, table, and column configuration |
Connector Metadata | 2 | Available connector types and config schemas |
Connector SDK Package Resource | 6 | Custom connector SDK management |
Destination Management | 6 | Data warehouse and lake destinations |
Group Management | 11 | Groups — connectors, users, service accounts |
HVR Registrations Management | 1 | HVR replication registrations |
Hybrid Deployment Agent Management | 6 | On-premises deployment agents |
Log Service Management | 10 | Sync logs and log service configuration |
Private Link Management | 5 | Private networking (AWS/Azure/GCP) |
Proxy Agent Management | 6 | Proxy agent configuration |
Public Endpoints | 1 | Public API information |
Role Management | 1 | Roles and permissions |
System Key Management | 6 | System API key management |
Team Management | 21 | Teams — membership, groups, connections, permissions |
Transformation Management | 10 | dbt transformations — create, run, manage |
Transformation Projects Management | 6 | dbt project management |
User Management | 16 | Users — invite, modify, delete, memberships |
Webhook Management | 7 | Webhooks — create, test, manage notifications |
Development
git clone https://github.com/livemau5/fivetran-mcp.git
cd fivetran-mcp
npm install
npm run build
# Regenerate the API catalog from the latest Fivetran spec
npm run generate-catalog
# Run in development mode
FIVETRAN_API_KEY=your-key FIVETRAN_API_SECRET=your-secret npm run devProject Structure
src/
index.ts Entry point — server setup, tool registration, stdio transport
types.ts CatalogEntry interface
utils.ts Auth header building, URL construction, response formatting
api-catalog.ts Auto-generated catalog of all 161 endpoints
tools/
native.ts 23 native tools for the data engineering workflow
search.ts Search tool — text/tag/method filtering over the catalog
execute.ts Execute tool — HTTP client with automatic Basic Auth
scripts/
generate-catalog.ts Parses official Fivetran OpenAPI spec into api-catalog.tsLicense
MIT
Available Tools
25 toolscreate_connectionA
Create a new Fivetran connection (connector). Use get_connector_metadata to discover available connector types and their required config. Returns compact confirmation by default — set verbose=true for full response.
| Name | Required | Description | Default |
|---|---|---|---|
| config | Yes | Connector-specific configuration object | |
| paused | No | Create in paused state (default false) | |
| service | Yes | Connector type (e.g., 'google_sheets', 'postgres', 'salesforce') | |
| verbose | No | Return full API response instead of compact summary (default false) | |
| group_id | Yes | Group (destination) to create the connection in | |
| trust_certificates | No | Auto-trust certificates | |
| trust_fingerprints | No | Auto-trust fingerprints |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the transparency burden. It adds meaningful behavioral detail: 'Returns compact confirmation by default — set verbose=true for full response.' This clarifies the response format and the effect of the verbose flag, which is not obvious from the schema alone. It does not disclose potential side effects like initial sync or permissions, but provides useful behavior beyond the basic create action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the primary purpose, and contains no filler. Every sentence contributes: the first states the action, the second provides guidance on discovering config and return behavior.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 7 parameters, a nested config object, and no output schema, the description adequately orients the user by referencing get_connector_metadata for config discovery and explaining the default vs verbose response. It does not detail every parameter, but the schema covers those, and the description supplies the necessary context for successful usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds value by explaining how to approach service-specific config via get_connector_metadata and by clarifying the verbose parameter behavior ('set verbose=true for full response'). This goes beyond the schema's generic parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Create a new Fivetran connection (connector)' with a specific verb and resource. It also distinguishes from siblings by pointing to get_connector_metadata for discovery, and the name itself contrasts with update/delete/list tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description guides the user to use get_connector_metadata to discover connector types and required config before creating, providing a clear alternative context. However, it does not explicitly state when not to use this tool (e.g., for updating existing connections), so it lacks full exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_connectionA
Permanently delete a connection and all its synced data configuration. This cannot be undone.
| Name | Required | Description | Default |
|---|---|---|---|
| verbose | No | Return full API response instead of compact summary (default false) | |
| connection_id | Yes | The connection ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description discloses critical behavioral traits: the deletion is permanent ('cannot be undone') and cascades to all synced data configuration. However, it omits other useful context such as required permissions, success/failure response format, or behavior if the connection is currently syncing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences clearly convey the action and permanence. No filler or redundant wording.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is adequate for a simple delete operation, but it does not mention what the API returns, whether any prerequisites exist, or error cases. Given the lack of an output schema, a bit more detail on return values would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully documents both parameters (connection_id and verbose) with descriptions, so the description need not add more. The tool description does not expand on parameter semantics beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('delete'), the resource ('a connection'), and the scope ('all its synced data configuration'), distinguishing it from sibling tools like update_connection or get_connection_details. It is specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, when not to use it, or any prerequisites (e.g., pausing the connection first). The description is purely declarative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
executeA
Execute any Fivetran REST API call. Use the search tool first to discover available endpoints and their parameters. Write operations return compact summaries by default — set verbose=true for full response.
| Name | Required | Description | Default |
|---|---|---|---|
| body | No | Request body for POST/PATCH/PUT requests (JSON object) | |
| path | Yes | API path (e.g., "/connections", "/groups/{groupId}", "/connections/{connectionId}/schemas") | |
| method | Yes | HTTP method | |
| params | No | Query parameters (e.g., { "limit": "10", "cursor": "abc123" }) | |
| verbose | No | Return full API response. By default, write operations (POST/PATCH/PUT/DELETE) return compact summaries to save context. Set verbose=true to get the full response. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the transparency burden. It discloses that write operations return compact summaries by default and that verbose=true provides full responses. However, it does not mention authentication, rate limits, or error handling, and only indirectly implies destructive capability via the method enum.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: the first states the purpose, the second gives two actionable guidelines (use search first, and verbose behavior). No wasted words, and the key information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 5-parameter generic HTTP tool with no output schema, the description covers the main caveat (write operations return compact summaries) and directs users to the search tool for discovery. It doesn't specify GET default responses or pagination behavior, but is sufficient for basic use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description's note about verbose=true duplicates the schema description for the verbose parameter, adding no new parameter semantics. Other parameters (method, path, params, body) are already well-described in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description begins with 'Execute any Fivetran REST API call,' a specific verb and resource that clearly identifies it as a generic raw API executor. This distinguishes it from the many dedicated sibling tools that cover specific endpoints.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It instructs to 'Use the search tool first to discover available endpoints and their parameters,' providing a clear workflow directive. It implies for general API calls, but does not explicitly contrast with specific sibling tools like 'create_connection' when those are more appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_connection_detailsA
Get detailed information for a specific connection including config, status, sync state, and schedule.
| Name | Required | Description | Default |
|---|---|---|---|
| connection_id | Yes | The connection ID (e.g., 'spoke_foolish') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of behavioral disclosure. It clearly signals a read-only operation via the verb 'Get' and lists the returned information categories. It does not address error handling or side effects, but for a simple getter this is acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, front-loaded with the action and resource, and efficiently lists the key content areas without unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter getter with no output schema, the description outlines the main information categories, giving sufficient context for an agent to decide to use it. It stops short of describing the exact return format or error behavior, but the tool's simplicity reduces the need for more.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides a complete description for the single parameter, including an example, so baseline is 3. The tool description adds no extra parameter semantics beyond what the schema already offers.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Get' and clearly identifies the resource as 'detailed information for a specific connection.' It enumerates the content categories (config, status, sync state, schedule), which distinguishes it from sibling tools like list_connections, get_connection_schema, and get_sync_status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies usage for retrieving details on a single, known connection, contrasting with listing operations. However, it does not explicitly reference alternative tools or state when not to use it, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_connection_schemaA
Get the schema configuration for a connection: all schemas, tables, and columns with their enabled/disabled state.
| Name | Required | Description | Default |
|---|---|---|---|
| connection_id | Yes | The connection ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the transparency burden. The verb 'get' implies a read-only operation, but the description does not explicitly state that there are no side effects, nor does it mention any special behaviors like pagination or error conditions. It is adequate but lacks explicit behavioral disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that immediately states the action and object, followed by specifics. There is no wasted or redundant wording.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple get tool with one parameter and no output schema, the description sufficiently explains the return content (schemas, tables, columns, enabled/disabled state). It lacks details on output format or error handling, but for a read-only schema lookup this is acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (connection_id is described as 'The connection ID'), so the baseline is 3. The description adds no additional parameter meaning beyond what the schema already provides; it only contextualizes that the schema is for a connection.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets the schema configuration for a connection, specifying the contents (schemas, tables, columns, enabled/disabled state). This specific verb+resource combination distinguishes it from siblings like get_connection_details (connection metadata) and reload_schema (refetching schema).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: use this when you need to view a connection's schema configuration. However, it does not explicitly mention alternatives or state when not to use it, such as distinguishing from get_connection_details or update_connection_schema.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_connector_metadataA
Get available connector types and their configuration schemas. Use this to discover what connectors Fivetran supports and what config each requires.
| Name | Required | Description | Default |
|---|---|---|---|
| service | No | Specific connector type to get config schema for (e.g., 'google_sheets', 'postgres'). Omit to list all available types. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It implies a read-only operation through 'Get' and 'discover', but it does not explicitly state that no resources are modified, mention authentication requirements, or describe response structure. The description adds minimal behavioral context beyond what the name and verb already suggest.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is exactly two sentences, front-loaded with the core action and resource, followed immediately by a practical usage hint. Every sentence earns its place with no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple single-parameter metadata tool, the description provides enough context to invoke correctly: it explains the purpose, how to use it to discover supported connector types, and implicitly the 'service' filter behavior. There is no output schema, but the return type ('configuration schemas') is reasonably implied. It lacks explicit examples or shape details, but those are not essential for this level of complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%: the single optional 'service' parameter is fully described in the schema. The tool description adds context about 'configuration schemas' and 'what config each requires', aligning with the parameter's purpose, but it does not introduce new syntax or details beyond the schema. This meets the baseline for full schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Get' with a clear resource: 'available connector types and their configuration schemas'. It clearly differentiates this metadata-discovery tool from sibling tools like get_connection_details or list_connections, which operate on specific connections rather than catalog-level metadata.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The second sentence provides explicit usage context: 'Use this to discover what connectors Fivetran supports and what config each requires.' It doesn't state explicit exclusions or name alternatives, but the context is clear enough for an agent to know when to select this tool over connection-specific tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_group_connectorsA
List all connections within a specific group.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results | |
| cursor | No | Pagination cursor | |
| group_id | Yes | The group ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only states that it lists connections; it does not mention pagination behavior (despite a cursor parameter), whether it returns all pages, or any other behavioral trait such as read-only semantics or rate limits. This leaves significant room for misinterpretation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence, front-loaded with the action and scope. Every word earns its place, and there is no extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a simple list tool with three parameters, one required, and a complete schema. The description adequately conveys the core purpose, and the schema handles pagination parameters. Since no output schema is present, a bit more detail about the return format could help, but for this level of complexity, the description is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter (limit, cursor, group_id) having a description. The tool description adds no additional meaning beyond the schema; it just reaffirms that the group_id is the filter. Per the rubric, baseline 3 is appropriate when schema fully documents parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List all connections within a specific group' uses a specific verb (List) and resource (connections) with a clearly scoped target (a specific group). It distinguishes itself from sibling tools like list_connections by implying group-level filtering, making its purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for retrieving connections tied to a group, but it does not explicitly state when to use this tool versus alternatives like list_connections. There are no exclusions or alternative recommendations, so it relies on the reader to infer the group-scoped context from the name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_sync_logsB
Get sync logs for a connection. Returns the connection state including sync history and warnings.
| Name | Required | Description | Default |
|---|---|---|---|
| connection_id | Yes | The connection ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool returns connection state including sync history and warnings, but does not disclose potential side effects (though 'Get' implies read-only), error behavior, rate limits, or data format. The description is minimal and does not add meaningful context beyond what the name suggests.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, with the primary action front-loaded: 'Get sync logs for a connection.' The second sentence adds the return content. There is no extraneous information or redundancy, making it appropriately concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with one parameter and no output schema or annotations. The description covers the basic purpose and return content, but lacks details on the nature of the logs (e.g., chronological order, pagination, error handling) and any prerequisites. For a tool of this complexity, it is minimally viable but leaves room for additional context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with the parameter description 'The connection ID.' The tool description does not add further meaning beyond referencing 'a connection.' Since the schema already documents the parameter well, the description adds no additional semantic value, matching the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb+resource combination: "Get sync logs for a connection." It clearly identifies what the tool does and what it returns (connection state, sync history, warnings). While it doesn't explicitly distinguish from siblings like get_sync_status, the mention of "sync history and warnings" implies a more detailed output than a basic status tool, giving it reasonable purpose clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like get_sync_status. It does not specify scenarios (e.g., troubleshooting sync issues, reviewing past runs) or state when not to use it. The usage context is only implied by the tool name and description, leaving the agent to infer suitability.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_sync_statusA
Get the current sync status for a connection: sync state, last sync time, schedule, and any warnings or failures.
| Name | Required | Description | Default |
|---|---|---|---|
| connection_id | Yes | The connection ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full behavioral burden. It discloses the return fields (sync state, last sync time, schedule, warnings/failures), which sets expectations, but it does not explicitly state that the operation is read-only, side-effect-free, or mention any permission or error conditions. For a simple get, this is acceptable but not fully transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that directly states the resource and the specific data fields returned. It is front-loaded, contains no redundant words, and every part adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only status tool with one parameter and no output schema, the description adequately explains what it does and what information it provides. It could be more explicit about behavioral aspects (e.g., read-only confirmation), but it does not leave the agent wondering about the tool's core purpose or return content.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema describes the only parameter (connection_id) as 'The connection ID', providing 100% coverage. The description adds no extra meaning or usage details about this parameter beyond the schema, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Get the current sync status for a connection' and enumerates the included data ('sync state, last sync time, schedule, and any warnings or failures'). This specific verb+resource+scope distinguishes it from siblings like get_connection_details or get_sync_logs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is to be used when checking current sync status, but it does not explicitly state when to use it over alternatives such as get_connection_details or get_sync_logs. No exclusions or alternative tool names are provided, so guidance is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_table_statusA
Get per-table sync status for a connection: enabled state, sync mode, and metadata for each table.
| Name | Required | Description | Default |
|---|---|---|---|
| connection_id | Yes | The connection ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. The 'Get' verb implies a read-only operation, and the description lists the returned fields (enabled state, sync mode, metadata). However, it does not disclose any behavioral traits such as whether the operation fails for invalid connection_ids, whether it triggers any side effects, or how the response is structured. For a simple read tool, this is adequate but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that presents the main action and the key output components without superfluous words. Every phrase adds value, and the structure is clear and scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with one parameter and no output schema, the description gives a high-level summary of the response content (enabled state, sync mode, metadata). It could be more precise about the response format or fields included under 'metadata', but it covers the core information an agent needs to decide whether this tool fits the request. The presence of sibling tools like get_sync_status and get_sync_logs creates a need for more explicit distinction, which is partially met.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter, connection_id, is documented in the schema with 'The connection ID'. The description adds no additional semantic detail beyond placing it in the context of per-table sync status. Since schema coverage is 100%, the baseline is 3, and the description does not elevate beyond that.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Get' and identifies the resource 'per-table sync status for a connection', then lists the specific content: 'enabled state, sync mode, and metadata'. This clearly distinguishes it from sibling tools like get_sync_status (overall sync status) and get_sync_logs (logs).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies the use case: querying per-table sync status for a connection. It does not explicitly exclude alternatives, but the contrast with sibling tool get_sync_status is apparent from the wording and name. It provides enough context for an agent to select this tool over others, though it stops short of naming alternatives explicitly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
invite_userA
Invite a new user to the Fivetran account with a specified role. Returns compact confirmation by default — set verbose=true for full response.
| Name | Required | Description | Default |
|---|---|---|---|
| role | No | Account-level role (use search to find /roles endpoint for options) | |
| Yes | User's email address | ||
| verbose | No | Return full API response instead of compact summary (default false) | |
| given_name | Yes | User's first name | |
| family_name | Yes | User's last name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It does mention the default compact confirmation and the verbose option for full response, which is useful. However, it does not disclose side effects (e.g., email sending), required permissions, or behavior if the role is omitted, leaving some behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence. It states the core purpose first, then uses a dash to add the key behavioral detail about response format. Every word contributes value, with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (simple parameters, no output schema), the description adequately covers the return behavior (compact vs full). It does not address edge cases like duplicate invites or role defaults, but the schema handles parameter details. Overall, sufficiently complete for a straightforward invite tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so all parameters are already described in the schema. The description does not add meaning beyond the schema, referencing 'specified role' and 'verbose=true' but without additional detail. This matches the baseline of 3 for full schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action ('Invite a new user') on a specific resource ('the Fivetran account'), with an additional qualifier ('with a specified role'). The verb 'invite' is distinct from all sibling tools, eliminating ambiguity about which tool to select.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used for inviting users but provides no explicit guidance on when to use it versus alternatives (there are none for inviting) or any prerequisites/exclusions. The context is clear from the name and action, but the description does not elaborate on scenarios or conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_connectionsA
List all Fivetran connections (connectors) with their sync status. Optionally filter by group.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results (default 100) | |
| cursor | No | Pagination cursor from a previous response | |
| group_id | No | Filter to connections in this group ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of behavioral disclosure. It says 'List all' but doesn't disclose that pagination via limit and cursor may be required to retrieve truly all connections. It also doesn't explicitly state that the operation is read-only, though that is implied. The phrase 'with their sync status' gives some return context but lacks details about pagination behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core purpose, and contains no wasted words. It efficiently communicates the main function and optional filtering.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Without an output schema, the description should clarify return values. It mentions 'sync status' but does not explain pagination details, default limits, or how to handle cursors. Given the pagination parameters, the description is somewhat incomplete for a list operation that may not return all results in a single response.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for all three parameters, so the baseline is 3. The description only repeats the group filter concept ('Optionally filter by group') and adds no additional meaning beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List') and the resource ('Fivetran connections (connectors)') and distinguishes itself from siblings like get_connection_details (singular) and get_sync_status (specific status) by indicating it returns connections with sync status. The optional group filter aligns with the group_id parameter.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool (when you need a list of connections) and mentions an optional filter. However, it does not explicitly state when to use alternatives, such as get_connection_details for a single connection or get_sync_status for a specific sync status, which is a missing exclusion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_destinationsB
List all destinations in the account with their configuration and status.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results | |
| cursor | No | Pagination cursor |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden for behavioral disclosure. It states the tool lists destinations and returns configuration/status, but it does not disclose that 'all' may be subject to pagination via the limit parameter, potentially misleading the agent. It also does not explicitly confirm read-only behavior, though 'list' implies it. The description adds minimal context beyond what the schema already provides.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that immediately conveys the action, resource, and return content. There is no redundant or filler wording; every word contributes, making it concise and effectively front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (two optional parameters, no output schema, no annotations), the description is minimally viable. It provides the essential purpose and return scope ('configuration and status'), but lacks explicit notes on pagination behavior, response format, or safety profile. Since the schema covers pagination parameters, the missing details are not critical, but the overall completeness is adequate rather than rich.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage for both parameters (limit and cursor) with descriptions, so the baseline is 3. The description does not add any additional meaning about parameter usage, defaults, or how they affect the result, but given the schema already covers these, no further description is necessary to reach the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List all destinations'), the resource type ('destinations'), and the scope ('in the account'). It also specifies what information is returned ('configuration and status'), which differentiates it from sibling tools like list_connections by focusing on the destinations resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool instead of alternatives such as list_connections, get_connection_details, or get_connector_metadata. There are no exclusions, prerequisites, or contextual hints about the relationship between destinations and connections. No usage context beyond the basic listing action is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_groupsA
List all groups (workspaces) in the Fivetran account.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results (default 100) | |
| cursor | No | Pagination cursor |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden of behavioral disclosure. While 'List all groups' clearly indicates a read-only operation, it does not explain pagination behavior (e.g., cursor usage) or what the response structure looks like, which are relevant given the absence of an output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with zero wasted words. It conveys the essential purpose and scope efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (2 optional params, no output schema, no annotations). The description, combined with the schema, gives a reasonably complete picture for a list operation. However, the lack of output schema and explicit pagination details leaves minor gaps in what the agent can expect as a return value.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of the parameters (limit and cursor) with clear descriptions. The tool description adds no additional parameter semantics beyond the schema, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('groups (workspaces)') with clear scope ('all groups in the Fivetran account'). This distinguishes it from sibling tools that target connections, destinations, users, and other resource types.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when you need to enumerate groups, but it does not explicitly state when to use this tool versus alternatives, nor does it mention any exclusions or prerequisites. The guidance is limited to the stated purpose itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_teamsB
List all teams in the Fivetran account.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results | |
| cursor | No | Pagination cursor |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility for behavioral disclosure. The phrase 'List all teams' suggests a single, complete listing, but the schema includes limit and cursor parameters indicating pagination. The description does not clarify that 'all' may require multiple calls or explain the pagination behavior, which is a meaningful gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, complete sentence that is perfectly front-loaded. It conveys the essential action and scope without any redundant or verbose language, making it highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity and complete parameter documentation, the description is adequate but not fully complete. There is no output schema, and the description does not mention the return format (e.g., array of team objects) nor clarify how pagination interacts with the 'all teams' claim. These gaps prevent a higher score.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with clear descriptions for both 'limit' and 'cursor'. The tool description adds no extra meaning beyond this, so the baseline score of 3 is appropriate; the schema already communicates the parameter semantics adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('teams') with explicit scope ('in the Fivetran account'), clearly distinguishing this from sibling list tools such as list_groups, list_users, and list_connections. It is immediately obvious what action is performed and on what entity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide any guidance on when to use this tool versus the many sibling list tools. While the name implies listing teams, there is no mention of prerequisites, exclusions, or alternatives. This leaves the agent to infer usage from the resource name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_usersB
List all users in the Fivetran account.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results | |
| cursor | No | Pagination cursor |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It simply states that it lists all users, but does not mention pagination, the effect of the limit parameter, or any authorization requirements. The implied read-only behavior is not explicitly confirmed, and important operational details are absent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no filler or redundant wording. It is front-loaded with the action and resource, earning high marks for conciseness, even though it sacrifices detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's pagination parameters and lack of output schema or annotations, the description is too minimal. It does not mention that results are paginated, the response format, or any behavioral caveats, leaving the agent without a complete understanding of how to fully utilize the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully describes both parameters (limit and cursor) with descriptions and constraints, providing 100% schema coverage. The description adds no extra semantics beyond what the schema already specifies, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'List' with the resource 'users' and scope 'in the Fivetran account'. It clearly distinguishes from sibling tools like list_connections or invite_user, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as list_teams or search. The description does not mention any prerequisites, exclusions, or comparison to other tools, leaving the agent without explicit selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pause_connectionA
Pause a connection's sync schedule. The connection will not sync until resumed. Returns compact confirmation by default — set verbose=true for full response.
| Name | Required | Description | Default |
|---|---|---|---|
| verbose | No | Return full API response instead of compact summary (default false) | |
| connection_id | Yes | The connection ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses key behavioral outcomes: the connection will not sync until resumed and the default response is a compact confirmation. It stops short of detailing side effects on in-flight syncs or required permissions, but covers the essential behavior for a simple state-changing tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two precise sentences with no filler. The first sentence states the intended action, the second explains the consequence and response behavior. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter tool with no output schema, the description fully covers what the tool does, its effect, and how to get more detail. It is complete and appropriate for the tool's complexity, especially among sibling tools with obvious opposites.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description's note about compact confirmation and verbose=true essentially repeats the schema's verbose description, adding no new parameter-level meaning beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Pause') and identifies the exact resource ('a connection's sync schedule'), making the tool's purpose unmistakable. It also distinguishes itself from sibling tools like resume_connection and trigger_sync by stating the effect of the pause.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies when to use the tool: to pause a connection's sync schedule. It also hints at the opposite operation ('until resumed') but doesn't explicitly name resume_connection as the alternative. The verbose flag instruction adds usage context but no formal exclusions or when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reload_schemaA
Reload the schema configuration from the source. Detects new tables, columns, or schema changes. Returns compact confirmation by default — set verbose=true for full response.
| Name | Required | Description | Default |
|---|---|---|---|
| verbose | No | Return full API response instead of compact summary (default false) | |
| connection_id | Yes | The connection ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description must carry the burden. It discloses the return behavior (compact confirmation, verbose option for full response) and the core action of detecting changes, but does not specify whether the operation is idempotent, what side effects occur on existing schema, or any authorization/rate-limit concerns.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the action, followed by the detection behavior and return format. It contains no filler and is appropriately sized for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter tool with no output schema, the description covers the purpose, behavior, and return options. However, without annotations, it lacks explicit guidance on when to use this versus the schema-related sibling tools and does not disclose side effects or error conditions, leaving moderate gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes both parameters (verbose and connection_id) with 100% coverage. The description adds only a redundant hint about setting verbose=true, providing no additional semantic value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Reload', the resource 'schema configuration', and the source. It also specifies what it detects (new tables, columns, schema changes), which distinguishes it from read-only schema retrieval tools like get_connection_schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool should be used when you want to refresh the schema from the source after changes, but it does not explicitly state when to use it over sibling tools like get_connection_schema or update_connection_schema, nor does it provide exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
resume_connectionA
Resume a paused connection. It will sync on its next scheduled interval. Returns compact confirmation by default — set verbose=true for full response.
| Name | Required | Description | Default |
|---|---|---|---|
| verbose | No | Return full API response instead of compact summary (default false) | |
| connection_id | Yes | The connection ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the core action, the deferred sync behavior, and the response format (compact by default, verbose with flag). This is solid, though it doesn't address edge cases like already-active connections or error conditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences that front-load the primary action, then provide the most relevant behavioral detail (scheduled sync and response format). No waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter tool with no output schema, the description covers the purpose, the key timing behavior, and response verbosity. It is sufficient for a competent agent to select and invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters are already documented. The description reinforces that verbose=true returns full response, but adds no additional meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description starts with a clear verb+resource construction: 'Resume a paused connection.' This directly states what the tool does and distinguishes it from siblings like pause_connection and trigger_sync.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It clearly explains when to use the tool (when a connection is paused) and gives a key condition: it will sync on the next scheduled interval, not immediately. This implicitly contrasts with trigger_sync, though it doesn't name alternatives explicitly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
resync_tablesA
Force a historical resync of specific tables within a connection. Only re-syncs the specified tables, not the entire connection. Returns compact confirmation by default — set verbose=true for full response.
| Name | Required | Description | Default |
|---|---|---|---|
| tables | Yes | Object mapping schema names to arrays of table names, e.g. { "public": ["users", "orders"] } | |
| verbose | No | Return full API response instead of compact summary (default false) | |
| connection_id | Yes | The connection ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full transparency burden. It does disclose return behavior (compact confirmation by default, verbose option) and scope limitation, but lacks details on potential side effects, permissions required, or whether this is a long-running operation. This is adequate but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the verb and resource. Every sentence earns its place with no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 3-parameter tool with full schema coverage, the description clearly explains the operation's scope and return behavior. It lacks some context on execution time, error scenarios, or data impact, but remains sufficiently complete for an agent to use it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so parameters are already well-documented. The description adds slight reinforcement by mentioning 'verbose=true for full response' and referencing 'tables', but does not introduce significant new meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the action ('Force a historical resync') and the resource ('specific tables within a connection'). It also distinguishes from siblings by explicitly noting that only the specified tables are re-synced, not the entire connection, which differentiates it from tools like trigger_sync.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context on scope ('Only re-syncs the specified tables, not the entire connection') and implies when to choose this tool over a full-sync alternative. It does not explicitly name the alternative but offers de facto guidance on exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchA
Search the Fivetran REST API catalog to discover endpoints. Returns method, path, summary, and parameter details. Call with no arguments to see all available categories.
| Name | Required | Description | Default |
|---|---|---|---|
| tag | No | Filter by API category (e.g., 'Connection Management', 'Group Management', 'User Management') | |
| limit | No | Max results to return (default 20) | |
| query | No | Text to search for in endpoint paths, summaries, and tags (e.g., 'connection', 'sync', 'schema reload') | |
| method | No | Filter by HTTP method |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of disclosure. It explains return contents and the no-argument behavior, which is useful. However, it does not explicitly state whether the operation is read-only or mention rate limits or authentication, though the search nature makes these less critical. The disclosure is adequate without being exhaustive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core purpose, and each sentence earns its place. The second sentence adds a valuable usage tip without unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a search tool with no output schema, the description adequately explains the return values and provides a key usage example. It could mention pagination or result ordering, but the schema's limit parameter covers pagination implicitly. Overall, it is sufficiently complete for an agent to select and invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage of parameter descriptions, so the baseline is 3. The description adds no additional parameter semantics beyond what the schema already provides, such as examples or parameter relationships. It does not compensate beyond the schema's coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: search the Fivetran REST API catalog to discover endpoints. It specifies the resource (API catalog), the verb (search), and the output (method, path, summary, parameter details), distinguishing it from sibling tools that perform specific operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for use (discovering endpoints) and a specific usage tip (call with no arguments to see categories), but it does not explicitly state when to use this tool over alternatives or provide exclusions. This is close to a 4 but lacks explicit sibling differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
test_destinationA
Run setup tests for a destination to verify connectivity and configuration. Returns compact confirmation by default — set verbose=true for full response.
| Name | Required | Description | Default |
|---|---|---|---|
| verbose | No | Return full API response instead of compact summary (default false) | |
| destination_id | Yes | The destination ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does disclose output behavior ('Returns compact confirmation by default — set verbose=true for full response'), which is useful. However, it does not explicitly state whether the tool is read-only or if running tests has any side effects, and it does not describe what the tests actually do beyond 'verify connectivity and configuration.' This partial transparency meets the minimum but leaves gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences, front-loaded with the primary purpose, and then provides the key behavioral detail about output verbosity. Every word earns its place, with no fluff or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with only two parameters and simple semantics, the description provides adequate context: what it does, the default output behavior, and how to change it. It does not have an output schema, so the description of 'compact confirmation' vs 'full response' partially compensates. However, it could be more complete by hinting at what the confirmation includes or indicating that the tool is safe to run (read-only). Still, the core information needed to invoke and interpret is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already includes descriptions for both parameters ('destination_id' and 'verbose') with 100% coverage. The description adds no new meaning; the mention of 'verbose=true' simply restates the schema's parameter description. Since schema coverage is high, a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Run setup tests for a destination to verify connectivity and configuration.' This is a specific verb ('run setup tests') with a resource ('destination') and a clear goal. It also distinguishes from siblings by focusing on testing/verification, which none of the other connection-related tools explicitly do.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context—during destination setup to verify connectivity—but does not explicitly state when to use this over alternatives or provide any exclusions. It lacks guidance such as 'use after creating or updating a destination' or 'use instead of get_connection_details for verification purposes.' The context is clear but not explicit enough to warrant a higher score.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trigger_syncA
Trigger an immediate sync for a connection without waiting for the next scheduled sync. Returns compact confirmation by default — set verbose=true for full response.
| Name | Required | Description | Default |
|---|---|---|---|
| force | No | Force sync even if one is already running (default false) | |
| verbose | No | Return full API response instead of compact summary (default false) | |
| connection_id | Yes | The connection ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses the default response behavior (compact confirmation) and how to get the full response via `verbose`. With no annotations, the description carries the burden; however, it does not mention side effects, whether the sync is asynchronous, or behavior when a sync is already running beyond the `force` parameter.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no wasted words. Front-loads the core action, then adds response behavior. Perfectly sized for the information provided.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple trigger tool, the description covers the key purpose and response format. It lacks details on auth requirements or error conditions, but the schema fills in parameter meanings and the tool is not complex enough to demand more.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds value by explaining the default response and how `verbose` alters it, but does not go beyond schema for `force` or `connection_id`.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the action ('Trigger an immediate sync') and the resource ('for a connection'). Distinguishes from scheduled syncs and sibling tools like `get_sync_status` or `resync_tables` by emphasizing immediate execution.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear context: use when you want a sync now rather than waiting for the next scheduled interval. Does not explicitly name alternatives or state when not to use, so just short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_connectionA
Update a connection's configuration, schedule, or settings. Returns compact confirmation by default — set verbose=true for full response.
| Name | Required | Description | Default |
|---|---|---|---|
| config | No | Updated connector-specific config | |
| paused | No | Set paused state | |
| verbose | No | Return full API response instead of compact summary (default false) | |
| connection_id | Yes | The connection ID | |
| schedule_type | No | Schedule type | |
| sync_frequency | No | Sync frequency in minutes (e.g., 60, 360, 1440) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden of behavioral disclosure. It discloses the default compact confirmation and the verbose option, which is useful. However, it doesn't describe mutability semantics, permissions, or error behavior, leaving gaps for a write operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the primary purpose and adding a single key behavioral note. Every word earns its place, and it is exceptionally concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the main action and one behavioral trait (verbose output). With six parameters, a nested config object, and no output schema, more detail about return values or update semantics would help, but it's adequate for basic use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema descriptions cover 100% of parameters, so the description doesn't need to add much. It does mention the verbose parameter behavior implicitly, but the description adds no extra meaning beyond the schema. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool updates a connection's configuration, schedule, or settings, which is a specific verb+resource action. It distinguishes from sibling tools like pause_connection, trigger_sync, or update_connection_schema by covering the general update scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intended use is implied by the name and description, but there's no explicit guidance on when to prefer this over alternatives. It doesn't mention that update_connection_schema is for schema changes, which could create ambiguity. No exclusion or alternative guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_connection_schemaA
Update schema config to enable/disable schemas, tables, or columns for a connection. Returns compact confirmation by default — set verbose=true for full schema response.
| Name | Required | Description | Default |
|---|---|---|---|
| schemas | Yes | Schema configuration object with enabled/disabled tables and columns | |
| verbose | No | Return full API response instead of compact summary (default false) | |
| connection_id | Yes | The connection ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It does mention the default compact confirmation and the verbose flag for a full schema response, adding some transparency. However, it omits details on permissions, reversibility, or whether the update is partial or full replacement, which would be valuable for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences: the first states the action and scope, the second explains the response behavior. No fluff or redundancy, making it efficient and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the 3-parameter tool with a nested object and no output schema, the description is adequate but not rich. It covers the core purpose and response behavior, but does not explain the structure of the schemas object or potential edge cases. The schema partially compensates, but the description could be more complete for a mutation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers all parameters (100% coverage), so the baseline is 3. The description adds slight clarification about the enable/disable semantics of the 'schemas' parameter and the effect of 'verbose', providing marginal value beyond the schema descriptions themselves.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Update schema config') and its scope ('enable/disable schemas, tables, or columns for a connection'). This distinguishes it from sibling tools like get_connection_schema (reading) and reload_schema (refreshing), making its purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: this tool is for modifying schema configuration. However, it does not explicitly mention alternatives or when not to use it, such as using get_connection_schema for reading or reload_schema for refreshing. The guidance is adequate but lacks explicit exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
25 tool updates
v1.0.0- First observed
create_connection - First observed
delete_connection - First observed
execute - First observed
get_connection_details - First observed
get_connection_schema - First observed
get_connector_metadata - First observed
get_group_connectors - First observed
get_sync_logs - First observed
get_sync_status - First observed
get_table_status - First observed
invite_user - First observed
list_connections - First observed
list_destinations - First observed
list_groups - First observed
list_teams - First observed
list_users - First observed
pause_connection - First observed
reload_schema - First observed
resume_connection - First observed
resync_tables - First observed
search - First observed
test_destination - First observed
trigger_sync - First observed
update_connection - First observed
update_connection_schema
TDQS
Scored across 25 tools
Most tools have clear verb+noun names, but several overlap in purpose: get_connection_details, get_sync_status, and get_sync_logs all report sync/status information, and list_connections overlaps with get_group_connectors. Descriptions help, but an agent could still plausibly pick the wrong status or schema tool. This overlap prevents a higher score.
Tool names overwhelmingly follow a predictable snake_case verb_noun pattern, with list_*, get_*, create_*, update_*, and delete_* dominating. The pattern is weakened by the bare verbs search and execute, plus reload_schema missing the connection_ prefix and get_group_connectors using get instead of list. These are minor deviations from an otherwise consistent scheme.
25 tools sits at the high end of the 'heavy' range and covers many resource areas: connections, schema, sync, groups, destinations, users, teams, and generic API access. Each tool has a purpose, but the set could likely be trimmed by consolidating overlapping status/log tools and relying more on execute. It is not extreme enough for a 2, but it is not a tight, well-scoped surface.
The connection lifecycle is solid: create/get/update/delete, schema management, sync triggers, and resync are all present. However, destination setup is incomplete with only list/test and no create/update/delete, and user/group/team management stops at listing or inviting. The search/execute escape hatch can work around these gaps, but the high-level tool surface has notable missing lifecycle operations.
Maintenance
Related MCP Connectors
Unified MCP Server is a remote MCP connector for AI agents and vertical AI products that provides access to 22,000+ authorized SaaS tools across 400+ integrations and 24 categories directly inside LLMs (Claude, GPT, Gemini, Cohere). Tools operate only on explicitly authorized customer connections, enabling agents to safely read and write against live third-party systems.
Unified gateway exposing 150+ tools across all NexGenData MCP servers via one endpoint.
One connector URL giving any MCP client live access to 21 services and 51 tools.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceMCP server with 32 tools for ETL ingestion, AI-generated data quality rules, AI transformations, vector search, and natural-language SQL. Works across Postgres, MongoDB, Kafka, S3/MinIO, HashiCorp Vault, and five vector stores (Qdrant, Weaviate, Milvus, Chroma, pgvector).12AGPL 3.0
- AlicenseNot gradedqualityCmaintenanceUnified MCP server for managing Meta Ads, LinkedIn Ads, Google Ads, GA4, and Search Console with 89 read/write tools, multi-account support, OAuth setup, and safe dry-run mutations.MIT
- AlicenseAqualityCmaintenanceAn MCP server for controlling Fivetran data pipelines. Enables AI assistants to manage syncs, monitor connection status, and control pipelines through natural language.15235 PyPI2MIT
- AlicenseAqualityDmaintenanceA hybrid Mailchimp MCP server with 12 tools: 10 native tools for common email workflows plus search and execute to access all 282 Mailchimp Marketing API endpoints on demand.1217 npmMIT