Skip to main content
Glama
steven0lisa

Dataiku DSS MCP Server

by steven0lisa

Dataiku DSS MCP Server

A comprehensive Model Context Protocol (MCP) server for Dataiku DSS integration. This project provides Claude Code with direct access to Dataiku DSS for managing recipes, datasets, and scenarios.

šŸš€ Quick Start

Prerequisites

  • Node.js 18.0.0+

  • Dataiku DSS instance with API access

  • Valid DSS API key

Installation

# Install globally
npm install -g @zhangzichao2008/mcp-dataiku

# Or use with npx
npx @zhangzichao2008/mcp-dataiku

Configuration

  1. Copy environment template:

cp .env.sample .env
  1. Configure your DSS connection in .env:

DSS_HOST=https://your-dss-instance.com:10000
DSS_API_KEY=your-api-key-here
DSS_INSECURE_TLS=true  # Only if using self-signed certificates

Claude Code Integration

Register the MCP server with Claude Code:

claude mcp add dataiku-dss \
    -e DSS_HOST=https://your-dss-instance.com:10000 \
    -e DSS_API_KEY=your-api-key-here \
    -e DSS_INSECURE_TLS=true \
    -- npx @zhangzichao2008/mcp-dataiku

Related MCP server: MCP-Server

šŸ“š MCP Tool Catalog

Core Recipe Management Tools

Tool

Description

Key Parameters

create_recipe

Create new recipe

project_key, recipe_type, recipe_name, inputs, outputs, code

update_recipe

Update existing recipe

project_key, recipe_name, **kwargs

delete_recipe

Delete recipe

project_key, recipe_name

run_recipe

Execute recipe

project_key, recipe_name, build_mode

Core Dataset Management Tools

Tool

Description

Key Parameters

create_dataset

Create new dataset

project_key, dataset_name, dataset_type, params

update_dataset

Update dataset settings

project_key, dataset_name, **kwargs

delete_dataset

Delete dataset

project_key, dataset_name, drop_data

build_dataset

Build dataset

project_key, dataset_name, mode, partition

inspect_dataset_schema

Get dataset schema

project_key, dataset_name

check_dataset_metrics

Get dataset metrics

project_key, dataset_name

Core Scenario Management Tools

Tool

Description

Key Parameters

create_scenario

Create new scenario

project_key, scenario_name, scenario_type, definition

update_scenario

Update scenario settings

project_key, scenario_id, **kwargs

delete_scenario

Delete scenario

project_key, scenario_id

run_scenario

Execute scenario

project_key, scenario_id

šŸ”§ Advanced Tools

Tool

Description

Key Parameters

get_scenario_logs

Get detailed run logs and error messages

project_key, scenario_id, run_id

get_recipe_code

Extract actual Python/SQL code from recipes

project_key, recipe_name

get_project_flow

Get complete data flow/pipeline structure

project_key

get_dataset_sample

Get sample data from datasets

project_key, dataset_name, rows, columns

get_recent_runs

Get recent run history across scenarios/recipes

project_key, limit, status_filter

list_projects

List all available Dataiku projects

-

Additional Dataset Tools

Tool

Description

Key Parameters

list_datasets

List all datasets in a project

project_key, dataset_type (optional)

get_dataset_info

Get detailed information about a dataset

project_key, dataset_name

clear_dataset

Clear data from a dataset

project_key, dataset_name, partition (optional)

Additional Recipe Tools

Tool

Description

Key Parameters

list_recipes

List all recipes in a project

project_key, recipe_type (optional)

get_recipe_info

Get detailed information about a recipe

project_key, recipe_name

validate_recipe_syntax

Validate Python/SQL syntax of a recipe

project_key, recipe_name, code (optional)

test_recipe_dry_run

Test recipe logic without actual execution

project_key, recipe_name, sample_rows

Additional Scenario Tools

Tool

Description

Key Parameters

list_scenarios

List all scenarios in a project

project_key, scenario_type, active_only

get_scenario_info

Get detailed information about a scenario

project_key, scenario_id

add_scenario_trigger

Add a trigger to a scenario

project_key, scenario_id, trigger_type, trigger params

remove_scenario_trigger

Remove a trigger from a scenario

project_key, scenario_id, trigger_idx

get_scenario_run_history

Get run history for a scenario

project_key, scenario_id, limit

get_scenario_steps

Get step configuration including Python code

project_key, scenario_id

clone_scenario

Clone an existing scenario with modifications

project_key, source_scenario_id, new_scenario_name, modifications

Advanced Tools

Tool

Description

Key Parameters

search_project_objects

Search for datasets, recipes, scenarios by name/pattern

project_key, search_term, object_types

get_code_environments

List available Python/R environments

project_key (optional)

get_project_variables

Get project-level variables and configuration

project_key

get_connections

List available data connections

project_key (optional)

get_job_details

Get detailed job execution information

project_key, job_id

cancel_running_jobs

Cancel running jobs/scenarios

project_key, job_ids

batch_update_objects

Update multiple objects with similar changes

project_key, object_type, pattern, updates

get_project_flow

Get complete data flow/pipeline structure

project_key

export_project_config

Export project configuration as JSON/YAML

project_key, format

duplicate_project_structure

Copy project structure to new project

source_project_key, target_project_key, include_data

Total: 46 Tools

šŸ”§ Usage Examples

Core Operations

Creating a Python Recipe

{
  "project_key": "ANALYTICS_PROJECT",
  "recipe_type": "python",
  "recipe_name": "data_cleaner",
  "inputs": ["raw_data"],
  "outputs": [{"name": "clean_data", "new": true, "connection": "filesystem_managed"}],
  "code": "import pandas as pd\ndf = dataiku.Dataset(\"raw_data\").get_dataframe()\ndf_clean = df.dropna()\ndataiku.Dataset(\"clean_data\").write_with_schema(df_clean)"
}

Building a Dataset

{
  "project_key": "BI",
  "dataset_name": "user_analytics",
  "mode": "RECURSIVE_BUILD"
}

Getting Dataset Sample

{
  "project_key": "FINANCE_PROJECT",
  "dataset_name": "transactions",
  "rows": 500,
  "columns": ["customer_id", "amount"]
}

Getting Scenario Logs

{
  "project_key": "ANALYTICS_PROJECT",
  "scenario_id": "data_processing"
}

Exploring Project Structure

{
  "project_key": "SALES_ANALYTICS"
}

šŸ—ļø Architecture

mcp-dataiku/
ā”œā”€ā”€ src/
│   ā”œā”€ā”€ dataiku-client.ts   # Dataiku API client
│   └── mcp-server.ts       # MCP server implementation
ā”œā”€ā”€ package.json
ā”œā”€ā”€ tsconfig.json
ā”œā”€ā”€ .env.sample
└── README.md

šŸ”’ Security

  • API Key Protection: Store API keys in environment variables, never in code

  • SSL Configuration: Support for self-signed certificates with DSS_INSECURE_TLS=true

  • Permission Validation: All operations respect DSS user permissions

  • Error Handling: Sensitive information is not exposed in error messages

šŸ“ˆ Monitoring

The MCP server provides logging for monitoring:

# Check logs for debugging
tail -f dataiku_mcp.log

šŸ¤ Contributing

  1. Fork the repository

  2. Create a feature branch: git checkout -b feature/amazing-feature

  3. Commit changes: git commit -m 'Add amazing feature'

  4. Push to branch: git push origin feature/amazing-feature

  5. Open a Pull Request

Development Setup

# Install dependencies
npm install

# Run in development mode
npm run dev

# Build for production
npm run build

# Run basic validation tests (no actual API calls)
npm test

# Run comprehensive tests (requires Dataiku DSS)
node test-comprehensive.js

# Clean build artifacts
npm run clean

# Publish new version (patch version)
npm run publish:patch

šŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

šŸ“ž Support

If you encounter any issues or have questions, please open an issue on GitHub.


Ready to enhance your Dataiku workflows with AI assistance! šŸš€

Available Tools

43 tools
add_scenario_triggerB

Add a trigger to a scenario

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
scenario_idYesID of the scenario
trigger_typeYesType of trigger (periodic, hourly, daily, monthly, dataset)
every_minutesNoFor periodic triggers: interval in minutes
hourNoFor time-based triggers: hour (0-23)
minuteNoFor time-based triggers: minute (0-59)
dataset_nameNoFor dataset triggers: name of the dataset
timezoneNoTimezone for time-based triggersSERVER

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description should disclose behavioral traits like idempotency, mutation, or side effects (e.g., overrides existing triggers), but it only states the action without further detail.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very concise (one sentence), but lacks structure for a tool with 8 parameters and conditional logic. It is not verbose, but could benefit from front-loading key details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (8 parameters, conditional trigger types, no output schema), the description is insufficient. It does not explain which parameters are required for each trigger_type or what the return value indicates.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds no extra meaning beyond the parameter descriptions, e.g., it does not explain parameter dependencies based on trigger_type.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Add' and the resource 'trigger to a scenario', distinguishing it from the sibling 'remove_scenario_trigger'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No usage context is provided, such as prerequisites (e.g., scenario must exist), when to use this tool versus alternatives, or that adding a trigger may replace existing triggers.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

batch_update_objectsC

Update multiple objects with similar changes

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
object_typeYesType of objects to update
patternYesPattern to match objects
updatesYesUpdates to apply

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully convey behavioral traits. It only states the basic action, omitting details like atomicity, error handling, permission requirements, or the effect of the 'pattern' parameter.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise (one sentence) but lacks front-loaded key details and structure. It is neither verbose nor well-organized, but it does not waste words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 4 required parameters, no output schema, and nested objects, the description is insufficient. It does not explain the return value, error behavior, or how the pattern selection works, leaving significant gaps for the agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds 'with similar changes', which loosely relates to the pattern and updates parameters but provides no additional clarity beyond the schema's descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Update multiple objects with similar changes', which clearly indicates the verb (update), resource (multiple objects), and the qualifier (similar changes), distinguishing it from single-object update tools like update_dataset.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives such as update_dataset or update_recipe. There is no mention of when not to use it or what makes it preferable for batch operations.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

build_datasetC

Build a dataset

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
dataset_nameYesName of the dataset to build
modeNoOptional build mode
partitionNoOptional partition specification

TDQS

C2.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are available, so the description carries the full burden of behavioral disclosure. It only says 'Build a dataset', which reveals nothing about side effects, required permissions, execution time, or whether it modifies or creates something. This is insufficient for safe and correct invocation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely short (three words), which could be considered concise, but it is under-specified. It fails to provide any valuable information beyond the name. True conciseness would retain essential details while eliminating fluff; here, essential details are missing entirely.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of many sibling tools, four parameters with two required, no output schema, and no annotations, the description is critically incomplete. It does not explain the return value, whether the operation is async, or any constraints. This is wholly inadequate for an agent to use the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, meaning each parameter is already described in the schema. The description adds no additional meaning beyond what is in the schema. According to guidelines, baseline is 3 when coverage is high. The description does not provide any extra context for the parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description is 'Build a dataset' which is a verb-resource pair but extremely vague. It does not clarify what 'build' means in this context, nor does it differentiate from sibling tools like create_dataset, update_dataset, or clear_dataset. The purpose is unclear and could lead to confusion.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No usage guidelines are provided. The description gives no clue about when to use this tool versus alternatives such as create_dataset or run_recipe. There is no mention of prerequisites, context, or scenarios where this tool is appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

cancel_running_jobsC

Cancel running jobs/scenarios

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
job_idsYesList of job IDs to cancel

TDQS

C2.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must disclose behavioral traits. It only states the action (cancel) but does not mention destructiveness, reversibility, permissions needed, or side effects. For a destructive action, this is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise (4 words). While brevity is positive, it omits crucial context that could be included without bloat. It is functional but not well-structured for decision-making.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a destructive tool with no output schema and no annotations, the description should cover return values, error conditions, and implications. It lacks all of this, leaving the agent underinformed about what happens after invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for both parameters (project_key and job_ids). The description adds no additional meaning beyond the schema, so it meets the baseline but does not enhance understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states it cancels running jobs/scenarios, which is a verb+resource. However, it is very brief and does not clarify whether it cancels jobs, scenarios, or both. Among sibling tools, no other cancel tool exists, so differentiation is minimal. The purpose is clear but vague.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidelines on when to use this tool versus alternatives. There is no mention of prerequisites, scenarios where cancellation is appropriate, or when not to use it. The description provides no context for invocation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

check_dataset_metricsB

Get latest dataset metrics

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
dataset_nameYesName of the dataset

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully disclose behavior. It only says 'get latest metrics' without details on whether the operation is read-only, what metrics are included, or any side effects. This is insufficient for understanding the tool's behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise, consisting of a single sentence. While it is not verbose, it could benefit from a bit more context without becoming overly long. The structure is clean and front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that there are 2 parameters, no output schema, and no annotations, the description is too sparse. It does not explain the type of metrics returned, how to interpret them, or any potential edge cases, leaving significant gaps for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with both parameters 'project_key' and 'dataset_name' clearly described in the schema. The tool's description adds no additional meaning beyond the schema, so a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Get latest dataset metrics', which clearly indicates it retrieves metrics for a dataset. However, it does not distinguish from similar sibling tools like 'get_dataset_info' or 'inspect_dataset_schema', leaving ambiguity about what 'metrics' specifically means.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit guidance on when to use this tool over alternatives. The description implies its usage for fetching metrics but fails to provide context about appropriate scenarios or when to use other tools like 'get_dataset_info'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

clear_datasetC

Clear data from a dataset

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
dataset_nameYesName of the dataset to clear
partitionNoOptional partition to clear

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description must bear the burden of behavioral disclosure. It only says 'Clear data' without explaining consequences (e.g., irreversibility, permissions required, or whether it clears all partitions or just specified data). This is insufficient for safe invocation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very concise at one sentence, which can be efficient. However, it may be slightly underspecified for the complexity of the tool. Still, no extraneous content exists.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 3 parameters, no output schema, and no annotations, the description is too minimal. It fails to explain return values, side effects, or proper usage context, leaving gaps for the agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

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 no additional information about parameters beyond what the schema provides. For example, it doesn't clarify the 'partition' parameter's effect or format.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Clear data') and the resource ('dataset'). It uses a specific verb and resource, but does not differentiate from sibling tools like 'delete_dataset' which deletes the entire dataset. A higher score would require explicit distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 (e.g., using 'delete_dataset' for removal or 'update_dataset' for selective clearing). The description lacks any usage context or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

clone_scenarioB

Clone an existing scenario with modifications

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
source_scenario_idYesSource scenario ID to clone
new_scenario_nameYesName for the new scenario
modificationsNoOptional modifications to apply

TDQS

B3.4/5.0
Behavior2/5

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 states 'Clone' indicating a mutation, but fails to disclose what exactly is copied (e.g., triggers, steps), what 'modifications' entails (override vs. merge), and whether source scenario is affected.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, direct sentence with no superfluous words. It is optimally concise for the purpose stated.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations, no output schema, and a complex nested parameter (modifications), the description is insufficient. It does not explain the result of cloning (e.g., returns new scenario ID), the behavior of modifications, or any side effects.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds no extra meaning beyond the schema descriptions. The 'modifications' parameter is described only as 'Optional modifications to apply' without specifications.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb 'Clone' with the resource 'existing scenario' and includes the modifier 'with modifications', clearly distinguishing it from siblings like 'create_scenario' which likely creates from scratch.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for copying a scenario with changes, but no explicit when-to-use or when-not-to-use guidance is given. It does not mention alternatives like create_scenario or delete_scenario.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_datasetC

Create a new dataset in a project

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
dataset_nameYesName for the new dataset
dataset_typeYesType of dataset (e.g., filesystem, sql)
paramsYesDataset configuration parameters

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden for behavioral disclosure. It only states the action ('Create') without mentioning idempotency, side effects, required permissions, or error conditions. The description fails to address whether the operation is safe or destructive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise (one sentence, 7 words). While brevity is desirable, this level of conciseness omits important context that should be present, such as parameter details or behavioral notes. It is an under-specification rather than efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has 4 required parameters including a nested object ('params'), no output schema, and no annotations. The description does not explain what 'params' should contain, what happens after creation (e.g., return value), or how to handle errors. Given the complexity, the description is incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for all four parameters. The description adds no additional meaning beyond what the schema already provides. Since schema coverage is high, the baseline of 3 is appropriate, but no extra value is contributed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Create') and resource ('dataset') and scope ('in a project'). It is specific enough to distinguish from obvious siblings like 'delete_dataset' or 'update_dataset', but lacks differentiation from 'build_dataset' which may also create datasets via recipes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like 'build_dataset'. No mention of prerequisites (e.g., project must exist) or restrictions (e.g., naming rules). The description provides no usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_recipeB

Create a new recipe in a Dataiku project

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
recipe_typeYesType of recipe (e.g., python, sql, join)
recipe_nameYesName for the new recipe
inputsYesList of input dataset names
outputsYesList of output dataset configurations
codeNoOptional code for the recipe

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden but only states 'Create a new recipe'. It fails to disclose any behavioral traits like side effects, required permissions, or whether it can overwrite an existing recipe.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that is front-loaded with the core purpose. Every word earns its place with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite full schema coverage, the description lacks context on return values, error handling, or any behavioral details. For a tool with 6 parameters, this is insufficient for an agent to anticipate outcomes.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents each parameter. The description adds no additional meaning beyond what is in the schema, resulting in a baseline score of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Create', the specific resource 'recipe', and the context 'in a Dataiku project'. It effectively distinguishes from sibling tools like create_dataset or create_scenario.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 update_recipe or run_recipe. There are no prerequisites, conditions, or exclusions mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_scenarioB

Create a new scenario in a project

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
scenario_nameYesName for the new scenario
scenario_typeYesType of scenario (step_based or custom_python)
definitionNoOptional scenario definition

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. However, it does not disclose behavioral traits such as required permissions, whether the definition is optional, or what happens to existing scenarios. This is a significant gap for a creation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no extraneous words. It is appropriately concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 4 parameters including nested objects and no output schema, the description is insufficient. It does not explain the 'scenario_type' options or return value, leaving the agent with incomplete context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for all parameters. The description adds no additional meaning beyond the schema, so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'create', the resource 'scenario', and the scope 'in a project'. It effectively distinguishes from sibling tools like 'update_scenario' and 'delete_scenario'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No usage guidance is provided. There is no mention of when to use this tool versus alternatives like 'clone_scenario' or 'add_scenario_trigger', nor any prerequisites or constraints.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

delete_datasetC

Delete a dataset from a project

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
dataset_nameYesName of the dataset to delete
drop_dataNoWhether to drop the underlying data

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so the description must disclose behavior. It only states the action, omitting whether deletion is permanent, reversible, or what happens to the 'drop_data' parameter when omitted. No mention of permissions or effects on dependencies.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no wasted words, but it is under-specified given the tool's complexity. Could be expanded without losing conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a destructive operation with 3 parameters and no output schema, the description should explain return values, error conditions, and side effects. It is insufficiently complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with parameter descriptions. The description adds no additional meaning beyond the schema, so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Delete a dataset from a project' clearly indicates the action and resource, but does not differentiate from sibling tools like 'clear_dataset' or 'update_dataset' which have overlapping scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives (e.g., 'clear_dataset' might be for clearing data without deleting the dataset). The description lacks context about prerequisites or consequences.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

delete_recipeB

Delete a recipe from a project

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
recipe_nameYesName of the recipe to delete

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It states the action but gives no details on side effects, irreversibility, permissions, or impact on related data. This is insufficient for a destructive operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Extremely concise single sentence. No wasted words, but it is perhaps too brief. However, for conciseness it scores high.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Basic action is clear, but missing important context like preconditions, confirmation, or post-effects. Given no output schema, the description could do more to inform the agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

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 no additional parameter 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.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Delete') and the resource ('a recipe from a project'). It is specific and distinguishes from sibling tools like create_recipe, update_recipe, run_recipe, etc.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives (e.g., update_recipe). No mention of prerequisites or context that would affect the decision to delete.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

delete_scenarioB

Delete a scenario from a project

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
scenario_idYesID of the scenario to delete

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description must disclose behavioral traits. It only states 'Delete', implying a destructive operation, but does not describe side effects (e.g., deletion of related triggers or logs) or any safety considerations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with no extraneous words. However, the brevity sacrifices important behavioral context, which is a trade-off.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and no annotations, the description is insufficient. It lacks information on return values, confirmation steps, or prerequisites like project key validity, making it incomplete for a delete operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with basic descriptions for both parameters. The tool description adds no additional meaning beyond the schema, so baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action 'Delete a scenario from a project' with a specific verb and object, distinguishing it from sibling tools like create, clone, or update scenarios.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives, such as when a scenario should be deactivated instead of deleted, or any prerequisites like permissions or cascading effects.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

duplicate_project_structureC

Copy project structure to new project

ParametersJSON Schema
NameRequiredDescriptionDefault
source_project_keyYesSource project identifier
target_project_keyYesTarget project identifier
include_dataNoWhether to copy data

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, and the description does not disclose behavioral traits such as whether the tool is destructive, what happens to existing projects with the same key, or permission requirements. It fails to compensate for missing annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise, using a single sentence. It is front-loaded and contains no fluff, though it could benefit from slightly more detail without losing conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is incomplete. It does not explain the return value, side effects, or what is included in the structure. Critical context is missing for safe and effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already describes all parameters. The description adds no additional meaning or constraints beyond what is in the schema, resulting in a baseline score.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it copies a project structure to a new project, distinguishing it from sibling tools like clone_scenario or delete_dataset. It is specific but could elaborate on what 'structure' includes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives such as creating a project manually or cloning a scenario. The description lacks context about prerequisites or use cases.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_project_configC

Export project configuration as JSON/YAML

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
formatNoExport format (json/yaml)json

TDQS

C2.4/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully convey behavioral traits. It only states the export action without disclosing any operational details such as read-only nature, error handling, permission requirements, or impact on the system.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise but lacks structure and essential details. It is a single sentence fragment that does not earn its place due to missing information about the tool's behavior and context.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (2 parameters, no output schema, no annotations), the description is still incomplete. It does not explain the return value, format specifics, or any constraints for using the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the description does not need to add parameter semantics. It does not add any value beyond what the schema already provides for project_key and format.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Export' and the resource 'project configuration' along with the output formats JSON/YAML. It distinguishes this tool from siblings, as no other sibling tool appears to export project configuration.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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, nor does it mention prerequisites or exclusions. The context of usage is entirely implied by the tool's name and basic action.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_code_environmentsB

List available Python/R environments

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyNoProject identifier (optional)

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, and description only states basic function. Does not disclose whether it requires authentication, rate limits, or what constitutes 'available' environments.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence with no wasted words, but slightly under-specified for a tool with no output schema or annotations.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite simplicity, lack of output schema means agent won't know what information is returned; description insufficient for full understanding.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema provides description for the only parameter (optional project_key), and description adds no further meaning. Schema coverage is 100%, so baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description uses specific verb 'List' and resource 'available Python/R environments', clearly distinguishing from sibling tools that operate on datasets, scenarios, etc.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives; no mention of prerequisites or context for querying environments.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_connectionsC

List available data connections

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyNoProject identifier (optional)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It only says 'List' but does not disclose whether the operation is read-only, requires permissions, or what the response contains. Minimal behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very short (one phrase) and front-loaded with the verb and resource. No wasted words, though it could benefit from a bit more detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one optional parameter and no output schema, the description is minimally adequate but lacks completeness. It fails to explain what constitutes a 'connection' or any side effects.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with a clear description for the single optional parameter. The description adds no additional meaning beyond the schema, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'List available data connections' clearly states the verb (List) and resource (data connections). It distinguishes from siblings as no other sibling tool mentions connections, though it doesn't explicitly differentiate.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives. The description does not provide context for selecting this tool over sibling tools like list_datasets or list_projects.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_dataset_infoC

Get detailed information about a dataset

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
dataset_nameYesName of the dataset

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description must disclose behavior. It implies read-only but does not explicitly state safety, prerequisites, or what 'detailed information' entails.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single short sentence is concise but adds little beyond the tool name. Could be expanded to include key details without losing conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and many sibling tools, the description lacks completeness. It does not explain return values or edge cases.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with basic descriptions like 'The project key'. Description adds no extra parameter context, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description states 'Get detailed information about a dataset' – clear verb and resource. However, it does not distinguish from sibling tools like 'inspect_dataset_schema' or 'check_dataset_metrics'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. With many sibling dataset tools, this omission is significant.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_dataset_sampleC

Get sample data from datasets

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
dataset_nameYesName of the dataset
rowsNoNumber of sample rows
columnsNoSpecific columns to include

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description bears full load. It fails to mention that this is a read operation, no side effects, or any permissions needed. Minimal behavioral info.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Short single sentence, but too sparse for a tool with 4 parameters. Could include key details without being verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema; description should mention return format (e.g., array of rows). Lacks context on sample behavior or limits. Incomplete for a data retrieval tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline 3. Description adds no extra parameter meaning beyond what schema already provides. Neutral.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description states 'Get sample data from datasets' - verb+resource is clear. Distinguishable from siblings like get_dataset_info or inspect_dataset_schema, but could specify sample type (e.g., random).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use vs. other dataset tools. With many siblings, explicit context for when to sample vs. get full info is missing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_job_detailsC

Get detailed job execution information

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
job_idYesJob identifier

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, and the description does not disclose behavioral traits like read-only nature, auth requirements, or rate limits. The description carries the full burden but provides no such details.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence with no waste. It front-loads the core purpose but could benefit from additional context without becoming verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has no output schema, and the description does not indicate what the returned 'detailed job execution information' includes. For a tool with two required parameters, more completeness about output format or behavior would be expected.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Both parameters (project_key, job_id) are fully described in the input schema (100% coverage). The description adds no additional meaning beyond the schema, so baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get detailed job execution information' clearly identifies the action (get) and resource (job details). It sufficiently distinguishes from sibling tools like get_scenario_info or get_recipe_info, though it could be more specific about what 'detailed information' entails.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance provided on when to use this tool versus alternatives such as get_scenario_logs or get_recent_runs. The description lacks any context for selecting among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_project_flowB

Get complete data flow/pipeline structure

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden but only states the action; it omits details like whether the operation is read-only, potential performance implications, or what 'complete' entails.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise (one phrase), which is efficient, though it could include a bit more context without becoming verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simplicity (1 required param, no output schema), the description is minimally viable but lacks details about the return structure, which is important for an agent to understand what 'data flow/pipeline structure' means.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the parameter description is adequate, but the tool description adds no extra meaning beyond the schema's 'The project key'. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states the verb 'Get' and the resource 'complete data flow/pipeline structure', clearly distinguishing it from sibling tools that target specific components like datasets or recipes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 get_dataset_info or get_recipe_info, leaving the agent without context for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_project_variablesC

Get project-level variables and configuration

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must disclose behavioral traits. It only says 'get', implying read-only, but does not mention authentication needs, error behavior, rate limits, or any side effects. The minimal verb gives only a vague indication of behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, short sentence that is front-loaded with the core purpose. It is concise with no unnecessary words, though it could benefit from slightly more detail without losing brevity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has a single parameter and no output schema. The description does not explain what the return value contains (e.g., list of variables, configuration object), nor does it mention any edge cases. It is too brief to be fully informative for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage for the only parameter 'project_key', so baseline is 3. The description does not add any additional meaning beyond the schema's brief 'The project key', so no extra value is provided.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get project-level variables and configuration' clearly states the action (get) and the resource (project-level variables and configuration). It is distinct from siblings like 'get_code_environments' or 'get_connections', though it does not explicitly differentiate them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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, no prerequisites, and no context about when not to use it. It simply states the function without any usage direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_recent_runsB

Get recent run history across all scenarios/recipes

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
limitNoNumber of recent runs to retrieve
status_filterNoFilter by status

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It indicates a read operation but does not disclose behavioral traits such as authentication needs, rate limits, pagination behavior, or what constitutes 'recent'. Basic information is missing.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence with no wasted words. However, it is so brief that it sacrifices valuable context. It earns a 4 for being well-structured but not a 5 because it could include more useful information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has no output schema and only a brief description, it omits important details like the format of returned runs, default sorting order, or valid values for status_filter. For a tool that provides history, expectations about output are not set.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with each parameter having a description in the input schema. The description adds no additional parameter context beyond what the schema already provides. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the verb 'Get' and resource 'recent run history' with scope 'across all scenarios/recipes'. This effectively distinguishes it from sibling tool get_scenario_run_history which is per-scenario. The purpose 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.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when needing run history across multiple scenarios/recipes, but it does not explicitly state when to use this tool versus get_scenario_run_history, nor does it provide conditions or prerequisites. Guidance is only implicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_recipe_codeB

Extract actual Python/SQL code from recipes

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
recipe_nameYesName of the recipe

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must disclose behavioral traits. It does not mention return format, side effects, permissions, or that the operation is read-only.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single, clear sentence with no redundant information. However, it could be slightly more detailed without losing conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Lacks output schema and does not describe the return value. For a simple extraction tool, this is a minor gap; the description is mostly adequate but incomplete in explaining what the agent receives.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description covers 100% of parameters, so the tool description adds no additional meaning. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Extract' and specifies the resource 'actual Python/SQL code from recipes', distinguishing it from sibling tools like get_recipe_info or run_recipe.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. Does not indicate prerequisites or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_recipe_infoB

Get detailed information about a recipe

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
recipe_nameYesName of the recipe

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, and description lacks detail on behavior (e.g., what information returned, read-only nature, side effects).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, concise sentence that front-loads the purpose, though could be slightly more informative without losing efficiency.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Lacks explanation of what 'detailed information' includes, and does not differentiate from sibling tools; incomplete given no output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for both parameters; description adds no extra meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Get' and the resource 'detailed information about a recipe', distinguishing it from siblings like 'get_recipe_code' and 'list_recipes'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives; no criteria for selection among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_scenario_infoC

Get detailed information about a scenario

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
scenario_idYesID of the scenario

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description must disclose behavior. It only says 'get information' without stating what is included (e.g., fields, status), auth requirements, or side effects. Lacks detail.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence is concise but overly minimal. Could be expanded to include return value or behavioral notes without losing conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema and no annotations. The description fails to specify what 'detailed information' comprises (e.g., returned fields, structure). Incomplete for a read tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with each parameter clearly described in the schema. The description adds no further meaning. Baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description states 'Get detailed information about a scenario' with a clear verb and resource. However, it does not differentiate from sibling tools like list_scenarios (summary) or get_scenario_logs (logs), leaving ambiguity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives (e.g., list_scenarios, get_scenario_run_history). No exclusions or prerequisites provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_scenario_logsB

Get detailed run logs and error messages for failed scenarios

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
scenario_idYesID of the scenario
run_idNoSpecific run ID (defaults to latest)

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description carries the full burden of behavioral disclosure. It only states it gets logs for failed scenarios, but does not disclose whether the operation is read-only, safe, or has any side effects. Missing details on data volume or scope of logs returned.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that is front-loaded with the verb and resource. It is concise without unnecessary words. However, it could be slightly more descriptive without becoming verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simplicity of the tool (3 parameters, no output schema, no annotations), the description provides minimal but adequate context. It does not describe return format, pagination, or any limitations. More details would improve completeness for a tool with no output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with all parameters described in the input schema. The description adds no additional meaning beyond the schema, such as usage examples or parameter relationships. Baseline is 3 for high coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves detailed run logs and error messages, specifically for failed scenarios. It distinguishes from siblings like get_scenario_run_history and get_scenario_info by focusing on logs for failures. However, the qualifier 'for failed scenarios' could imply it only works for failures, which might need clarification.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when logs or errors for a failed scenario are needed, but it does not explicitly state when to use or not use this tool, nor does it mention alternatives among the sibling tools. No guidance on prerequisites or context is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_scenario_run_historyB

Get run history for a scenario

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
scenario_idYesID of the scenario
limitNoMaximum number of runs to return

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description must cover behavioral traits. It does not state that the operation is read-only, nor does it mention any limits, pagination, or ordering behavior. The minimal description fails to disclose key aspects beyond the basic action.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single short sentence that efficiently states the core purpose. It is front-loaded with the verb and resource, and there is no superfluous text. However, it could be slightly more informative without harming conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has 3 parameters, 2 required, and no output schema. The description fails to mention what the run history includes (e.g., fields returned), how the 'limit' parameter affects results, or any ordering. This is insufficient for an agent to fully understand the tool's behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage with descriptions for all parameters, so the baseline is 3. The description adds no additional meaning beyond the schema, but it does not need to since schema already defines 'project_key', 'scenario_id', and 'limit' clearly.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses the specific verb 'Get' with the resource 'run history' qualified by 'for a scenario', clearly indicating the tool's purpose. It effectively distinguishes from sibling tools like 'get_recent_runs' and 'get_scenario_logs' by specifying 'run history' as the subject.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 'get_recent_runs' or 'get_scenario_logs'. There are no scenarios or prerequisites mentioned, leaving the agent without context for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_scenario_stepsB

Get step configuration including Python code

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
scenario_idYesID of the scenario

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must disclose behavioral traits. It only states it 'gets' configuration, but does not describe side effects, authentication requirements, rate limits, or data scope (e.g., whether it returns all steps or a specific step).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with one sentence. It is front-loaded and to the point, though it could benefit from additional detail without becoming verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the low complexity (2 parameters, no output schema), the description is minimally adequate. However, it does not specify whether the result is a list of steps or a single step, nor does it clarify the return format.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters. The description adds no additional meaning beyond what is in the schema, meeting the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get') and the resource ('step configuration including Python code'). It is specific and distinguishes from sibling tools like get_scenario_info or get_scenario_logs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 when step configuration is needed versus other scenario details. No exclusions or prerequisites are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_dataset_schemaC

Get dataset schema information

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
dataset_nameYesName of the dataset

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description needs to disclose behavioral traits. It fails to mention that the operation is read-only, any permission requirements, or what 'schema information' specifically includes, such as column types or constraints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that is appropriately sized and front-loaded. It wastes no words, though it could benefit from slightly more detail without becoming verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the absence of an output schema, the description should explain the return format. It does not, making it incomplete for an agent to understand what to expect. Additionally, with many sibling tools, more context is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents both parameters. The description does not add any additional meaning or constraints beyond what is in the schema, warranting a baseline score of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get dataset schema information' clearly states the action and resource. It is specific enough to convey the tool's primary function but does not differentiate it from sibling tools like 'get_dataset_info' or 'get_dataset_sample', which could have overlapping purposes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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. The description lacks context about prerequisites, such as ensuring the dataset exists, or how it differs from other get tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_datasetsA

List all datasets in a project

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
dataset_typeNoOptional filter by dataset type
searchNoOptional search keyword to filter datasets by name
simpleNoWhether to return only simplified dataset information (name, projectKey, type)

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description must fully disclose behavioral traits. It only states the tool lists datasets, omitting important details like read-only nature, pagination, permissions, or response format. The 'simple' parameter's impact on behavior is not described.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-formed sentence that is concise and front-loaded with the core purpose. Every word is meaningful with no redundancy or fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description should clarify what is returned and any edge cases. It does not mention whether results are paginated, sorted, or if empty results are returned. For a listing tool with 4 parameters, it is adequate but not complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents all parameters. The description adds no extra meaning beyond what is in the parameter descriptions. Baseline 3 is appropriate as the description does not compensate or enhance parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb-resource combination: 'List all datasets in a project.' This distinguishes from sibling tools like 'get_dataset_info' (single dataset) and 'search_project_objects' (broader search).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no explicit when-to-use or when-not-to-use guidance. While the context of sibling tools implies listing vs. search, the description itself lacks any usage direction. The optional filter parameters are hinted at in the schema but not mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_projectsB

List all available Dataiku projects

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It only states 'List all available Dataiku projects', which implies a read operation but does not mention authentication needs, rate limits, or any other behavioral traits. Essential context is missing.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence with no wasted words. It is front-loaded and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite low complexity, the tool lacks an output schema and annotations. The description does not hint at the return format (e.g., names, IDs, objects), leaving the agent uncertain about the response structure. More detail is needed for full contextual completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has no parameters (schema coverage 100%), so the description does not need to add parameter details. Baseline score of 3 is appropriate as the description adds no extra value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'List' and the resource 'all available Dataiku projects'. It is specific and distinct from sibling tools like list_datasets or list_recipes, which focus on different resource types.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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. While the name distinguishes it from other list tools, the description does not explicitly mention any context, exclusions, or alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_recipesC

List all recipes in a project

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
recipe_typeNoOptional filter by recipe type
searchNoOptional search keyword to filter recipes by name
simpleNoWhether to return only simplified recipe information (name, projectKey, type)

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must convey all behavioral traits. It describes a read operation ('list all recipes') but omits details about pagination, sorting, default behavior of the simple parameter, or what fields are returned.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely short (one sentence) but lacks structure. While concise, it omits critical information that would help an agent, making it minimally viable rather than efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

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 explain return values. It does not. Given 4 parameters and no annotations, the description is incomplete and leaves the agent with significant unknowns.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents each parameter. The description adds no extra meaning or usage context beyond what the schema provides, resulting in baseline adequacy.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'List' and the resource 'recipes' with scope 'in a project', making the purpose unambiguous. It distinguishes from single-recipe tools like get_recipe_info implicitly, but does not explicitly contrast with siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives such as get_recipe_info or list_scenarios. No prerequisites (e.g., project must exist) or conditions are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_scenariosC

List all scenarios in a project

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
scenario_typeNoOptional filter by scenario type
active_onlyNoWhether to list only active scenarios

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, and the description does not disclose behavioral traits such as read-only nature, pagination, or any side effects. It merely states the action without elaboration.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence with no wasted words. However, it could be more informative without losing conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a list tool with 3 parameters, no output schema, and no annotations, the description is incomplete. It does not explain return format, pagination, or parameter behaviors beyond the schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so parameters are already well-described. The description adds no additional meaning beyond the schema, but baseline is 3 for high coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it lists all scenarios within a project, but does not differentiate from siblings like get_scenario_info or run_scenario. The name itself is clear, but the description lacks explicit distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 other scenario-related tools (e.g., get_scenario_info for individual details). There are no usage tips or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

remove_scenario_triggerB

Remove a trigger from a scenario

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
scenario_idYesID of the scenario
trigger_idxYesIndex of the trigger to remove (0-based)

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description does not disclose any behavioral traits such as irreversibility, required permissions, or side effects on scenario execution. Without annotations, the description fails to provide necessary behavioral context 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence with no wasted words. It is appropriately concise for a simple operation, though it could benefit from slightly more context without sacrificing brevity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has three parameters and no output schema. The description does not explain prerequisites, return values, or any state changes beyond removal. It is not complete enough for a tool with no annotations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

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 tool description adds no additional meaning beyond what the schema already provides for 'project_key', 'scenario_id', and 'trigger_idx'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's action with a specific verb ('Remove') and resource ('trigger from a scenario'). It effectively distinguishes the tool from its sibling 'add_scenario_trigger'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 or when to consider alternatives. The context is purely implicit from the tool name, leaving the agent without explicit usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

run_recipeC

Run a recipe to build its outputs

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
recipe_nameYesName of the recipe to run
build_modeNoOptional build mode

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It indicates mutation ('build its outputs') but lacks details on whether it is synchronous/asynchronous, permission requirements, or side effects like overwriting outputs. This is insufficient for safe invocation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence with no extraneous information. It is efficiently front-loaded with the core action. However, the brevity sacrifices necessary detail, preventing a perfect score.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has no output schema, yet the description does not hint at what the response might be (e.g., job ID or status). For a tool that triggers an execution, this is a significant gap. Sibling tools like get_job_details suggest post-run actions are needed, but the description offers no guidance.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All three parameters have descriptions in the input schema (100% coverage), meeting the baseline. The description does not add extra meaning beyond what the schema provides; for example, 'build_mode' remains loosely defined. Hence a score of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'run' and the resource 'recipe', and it mentions the purpose 'to build its outputs'. This distinguishes it from sibling tools like create_recipe, delete_recipe, or test_recipe_dry_run. However, it could be slightly more precise about what 'run' entails (e.g., execution triggering).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives like test_recipe_dry_run. There is no mention of prerequisites, context, or when not to use it. The agent receives no help in deciding between run_recipe and other execution-related tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

run_scenarioC

Run a scenario manually

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
scenario_idYesID of the scenario to run

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden but only says 'Run a scenario manually.' It does not disclose whether the run is synchronous, whether it triggers a job, if it requires permissions, or any side effects. This is insufficient for a tool that likely executes an action.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very concise (one sentence) but lacks substance. While brevity is valued, it comes at the cost of missing critical information. Every sentence should earn its place; this one barely does.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 2 required parameters, no output schema, and numerous sibling tools (like run_recipe, get_scenario_run_history), the description is incomplete. It does not explain the result of a run, whether it is blocking, or how it relates to other scenario operations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and both parameters have descriptions. The tool description adds no additional meaning beyond the schema, but since the schema itself is clear, the baseline of 3 is appropriate. No further detail is provided about parameter constraints or formats.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Run' and resource 'a scenario', with the qualifier 'manually' distinguishing it from automated triggers. However, it does not differentiate from sibling tools like run_recipe or explain what 'run' entails in terms of execution.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 (e.g., add_scenario_trigger for automated runs, get_scenario_run_history for past runs). There is no mention of prerequisites or context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_project_objectsB

Search for datasets, recipes, scenarios by name/pattern

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
search_termYesSearch pattern
object_typesNoList of object types to search (datasets, recipes, scenarios)

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description carries full burden. It does not disclose search behavior (case sensitivity, pattern format, result details), which is minimal for behavioral transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence that is efficient and front-loaded with the verb and resources. No wasted words, but could be slightly expanded for clarity without being verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and sibling tools that list individual objects, the description lacks details about search behavior, result format, and whether it supports regex or case-insensitivity. Incomplete for a 3-parameter tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents parameters. The description adds no extra semantic value beyond stating the search pattern and object types.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool searches for datasets, recipes, and scenarios by name/pattern. It uses a specific verb 'Search' and identifies the resources, distinguishing it from sibling list tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives like list_datasets or get_* tools. The purpose is implied but not differentiated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

test_recipe_dry_runB

Test recipe logic without actual execution

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
recipe_nameYesName of the recipe
sample_rowsNoNumber of sample rows to test with

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must fully disclose behavior. It states 'without actual execution' but fails to explain what the tool actually returns (e.g., errors, warnings, or success status) or whether it has side effects. The behavioral insight is minimal.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, concise sentence conveys the core purpose with zero fluff. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a testing tool with three parameters and no output schema, the description is too sparse. It lacks information on expected output behavior, error handling, or how to interpret results, leaving the agent underinformed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds no extra meaning beyond the schema fields; it does not elaborate on the purpose of sample_rows or how project_key and recipe_name are used.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool tests recipe logic without execution, distinguishing it from siblings like run_recipe (which executes) and validate_recipe_syntax (checks syntax).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for testing without execution but does not explicitly specify when to use this tool versus alternatives like validate_recipe_syntax or run_recipe. No when-not-to-use or prerequisites mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_datasetC

Update dataset settings

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
dataset_nameYesName of the dataset to update

TDQS

C2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the full burden of behavioral disclosure falls on the description. It only says 'Update dataset settings' without explaining idempotency, side effects, required permissions, or what happens on failure. This is insufficient 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.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely short (one sentence), which is concise but omits necessary detail. It is not well-structured for clarity due to the mismatch with the schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is a mutation operation with no output schema, no annotations, and a description that fails to explain what 'settings' can be updated or how the identifiers are used. Given the complexity of a dataset update, this description is severely incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents the two parameters. However, the description implies there are settings to update, but the input schema lacks any setting fields (e.g., description, metadata). This contradiction adds misleading semantics rather than value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description states 'Update dataset settings', which is a clear verb-resource pair, but the input schema only contains identifiers (project_key, dataset_name) with no settings fields. This mismatch makes the description misleading regarding what the tool actually updates.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 sibling tools like create_dataset, delete_dataset, or other dataset operations. There are no usage context, prerequisites, or alternative recommendations.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_recipeC

Update an existing recipe

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
recipe_nameYesName of the recipe to update

TDQS

C2.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided; the description only states the action without detailing side effects, permissions, or behavior. For a mutation tool, this is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Extremely concise but at the cost of necessary detail. Under-specification cannot be rewarded as conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and no annotations, the description fails to explain what updating entails, return format, or partial vs full update.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with basic parameter descriptions. The tool description adds no additional meaning beyond the schema, meeting the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description 'Update an existing recipe' merely restates the tool name, providing no additional clarity on what aspects of a recipe can be updated. It is a tautology.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus siblings like create_recipe or run_recipe. The description does not specify prerequisites or context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_scenarioC

Update scenario settings

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
scenario_idYesID of the scenario to update

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description should disclose behavioral traits. It merely states 'Update scenario settings' without explaining idempotency, effects on existing data, required permissions, or potential side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence, but it lacks structure. It could be enhanced with additional context without being overly verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with no output schema and no annotations, the description is insufficient. It fails to explain what 'settings' means, what fields can be updated, or any behavioral constraints, making it incomplete for effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents both parameters with descriptions. The tool description adds no additional meaning beyond what the schema provides, resulting in a baseline score of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Update scenario settings' clearly indicates the verb (update) and resource (scenario), distinguishing it from create or delete siblings. However, 'settings' is vague and does not specify which settings can be updated, leaving room for ambiguity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No usage guidelines are provided. The description does not indicate when to use this tool versus alternatives like get_scenario_info or create_scenario, nor does it mention any prerequisites or constraints.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validate_recipe_syntaxB

Validate Python/SQL syntax of a recipe

ParametersJSON Schema
NameRequiredDescriptionDefault
project_keyYesThe project key
recipe_nameYesName of the recipe
codeNoOptional code to validate (uses recipe code if not provided)

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, and the description does not disclose behavioral traits like side effects, error reporting, or whether it modifies state. For a validation tool, this is a gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no wasted words. It is concise and clear.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple validation tool without an output schema, the description could explain what the tool returns (e.g., success/failure or error list). It is adequate but incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

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 does not add meaning beyond the schema as the 'code' parameter already explains its optionality.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Validate Python/SQL syntax of a recipe' is specific with a verb and resource, clearly distinguishing it from sibling tools like run_recipe or test_recipe_dry_run.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives, such as when code needs validation before running a recipe. The context is implied but not explicit.

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. Dates show when Glama detected each change.

  1. 43 tool updatesv1.0.7
    • First observedadd_scenario_trigger
    • First observedbatch_update_objects
    • First observedbuild_dataset
    • First observedcancel_running_jobs
    • First observedcheck_dataset_metrics
    • First observedclear_dataset
    • First observedclone_scenario
    • First observedcreate_dataset
    • First observedcreate_recipe
    • First observedcreate_scenario
    • First observeddelete_dataset
    • First observeddelete_recipe
    • First observeddelete_scenario
    • First observedduplicate_project_structure
    • First observedexport_project_config
    • First observedget_code_environments
    • First observedget_connections
    • First observedget_dataset_info
    • First observedget_dataset_sample
    • First observedget_job_details
    • First observedget_project_flow
    • First observedget_project_variables
    • First observedget_recent_runs
    • First observedget_recipe_code
    • First observedget_recipe_info
    • First observedget_scenario_info
    • First observedget_scenario_logs
    • First observedget_scenario_run_history
    • First observedget_scenario_steps
    • First observedinspect_dataset_schema
    • First observedlist_datasets
    • First observedlist_projects
    • First observedlist_recipes
    • First observedlist_scenarios
    • First observedremove_scenario_trigger
    • First observedrun_recipe
    • First observedrun_scenario
    • First observedsearch_project_objects
    • First observedtest_recipe_dry_run
    • First observedupdate_dataset
    • First observedupdate_recipe
    • First observedupdate_scenario
    • First observedvalidate_recipe_syntax

TDQS

B3/5.0
Disambiguation4/5

Most tools have distinct purposes, e.g., get_recipe_info vs get_recipe_code clearly separate; overlapping functions like get_job_details and get_recent_runs are scoped differently. A few pairs like search_project_objects and individual list functions could cause confusion, but descriptions generally clarify.

Naming Consistency4/5

Majority follow verb_noun pattern (e.g., create_dataset, delete_recipe). Some deviations exist (check_dataset_metrics instead of get_, batch_update_objects as a prefix), but overall consistency is high with no mixed conventions.

Tool Count3/5

43 tools is high, but the Dataiku platform is complex, covering datasets, recipes, scenarios, projects, and system resources. While some tools could be consolidated (e.g., multiple scenario getters), the count is borderline but reasonable for the domain.

Completeness4/5

Covers CRUD for main objects, plus build, run, test, validate, search, batch operations, and project-level exports. Missing delete_project and user management, but core workflows are well-supported with no dead ends.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/steven0lisa/mcp-dataiku'

If you have feedback or need assistance with the MCP directory API, please join our Discord server