Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
DEEPSET_API_KEYYesYour deepset API key.
DEEPSET_WORKSPACEYesYour deepset workspace name.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_pipeline_search_historyA

Retrieves search history for a specific pipeline with pagination.

Returns past searches run with the given pipeline. Each entry includes the search query (request.query), results (response), timing (time/duration), status, user info, feedback, labels, and note.

Search history is archived ~30 minutes after a search runs and is then available via this endpoint.

Use the after parameter with next_cursor from the response to fetch the next page. :param pipeline_name: Name of the pipeline to get search history for. :param limit: Maximum number of entries to return per page (default 10, max 1000). :param after: ISO-8601 timestamp cursor to fetch entries older than this point. Pass the value from next_cursor on the previous response. :param query_filter: An OData filter expression to narrow down results. Supported fields: query, client_source_path, pipeline_version_id, answer, api_key, created_at, created_by, tags/tag_id, feedbacks, feedbacks/score, feedbacks/comment, feedbacks/bookmarked, session_id, search_session_id, feedbacks/result_id, request/filters, request/params, duration, labels, status, note. Example: "created_at ge 2024-01-01T00:00:00Z" or "status eq 'failed'". :param sort_field: Field to sort results by. One of: created_at, query, duration, feedbacks/score. Defaults to created_at. :param sort_order: Sort direction — ASC (oldest first) or DESC (newest first). Defaults to DESC. :returns: Paginated list of search history entries or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

add_deployment_tagB

Adds a tag to a deployment. Each deployment supports at most three tags. :param deployment_id: ID of the deployment. :param tag_name: Tag to add (1-50 characters; letters, digits, spaces, underscores, hyphens). :returns: The deployment's full tag list after the add, or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

run_componentA

Run a Haystack component with the given parameters.

This tool allows you to execute a Haystack component by providing its type and initialization parameters, then passing input data to get results. Use this to test components and see how they would work in your pipeline. :param component_type: The type of component to run (e.g., "haystack.components.builders.prompt_builder.PromptBuilder") :param init_params: Initialization parameters for the component :param input_data: Input data for the component :param input_types: Optional type information for inputs (inferred if not provided). For custom types use the full import path (e.g. haystack.dataclasses.document.Document for Document) :param haystack_version: Optional version of Haystack to use for the component. Pass the same version as specified in the pipeline yaml's dependencies section for the haystack-ai package.

:returns: Dictionary containing the component's outputs or error message string

All parameters accept object references in the form @obj_id or @obj_id.path.to.value.

Examples::

# Direct call with values
run_component(data={'key': 'value'}, threshold=10)

# Call with references
run_component(data='@obj_123', threshold='@obj_456.config.threshold')

# Mixed call
run_component(data='@obj_123.items', threshold=10)The output is automatically stored and can be referenced in other functions.

Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

update_indexA

Updates an index configuration in the specified workspace with a replacement configuration snippet.

This function validates the replacement configuration snippet before applying it to the index. If the validation fails and skip_validation_errors is False, it returns error messages. Otherwise, the replacement snippet is used to update the index's configuration. :param index_name: Name of the index to update. :param original_config_snippet: The configuration snippet to replace. :param replacement_config_snippet: The new configuration snippet. :param skip_validation_errors: If True (default), updates the index even if validation fails. If False, stops update when validation fails. :returns: Updated index or error message.

All parameters accept object references in the form @obj_id or @obj_id.path.to.value.

Examples::

# Direct call with values
update_index(data={'key': 'value'}, threshold=10)

# Call with references
update_index(data='@obj_123', threshold='@obj_456.config.threshold')

# Mixed call
update_index(data='@obj_123.items', threshold=10)The output is automatically stored and can be referenced in other functions.

Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

deploy_pipelineA

Deploys a pipeline to production.

This function attempts to deploy the specified pipeline in the given workspace. If the deployment fails due to validation errors, it returns a validation result. :param pipeline_name: Name of the pipeline to deploy. :param version_id: Optional ID of the pipeline version to deploy. If None, deploys the latest non-draft version.

:returns: Deployment validation result or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

list_secretsA

Lists all secrets available in the user's deepset organization.

Use this tool to retrieve a list of secrets with their names and IDs. This is useful for getting an overview of all secrets before retrieving specific ones. :param limit: Maximum number of secrets to return (default: 10) :param after: The cursor to fetch the next page of results

:returns: List of secrets or error message

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

deactivate_deploymentB

Marks a deployment as no longer desired to be served, keeping its active revision intact. :param deployment_id: ID of the deployment. :returns: The updated deployment or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

get_pipeline_trace_logsA

Retrieves the log entries for a single Haystack pipeline run trace.

Returns the run's logs (e.g. to diagnose warnings or errors emitted during the run). Each entry includes the logger, level, message, timestamp, and extra fields.

Obtain query_id from list_pipeline_traces or list_pipeline_search_history.

If errors occur outside of the pipeline (e.g. in the API or search history service), they will not appear in the trace logs. Use the get_pipeline_logs tool to retrieve logs for the pipeline itself (e.g. startup errors, configuration issues, orother runtime problems). :param pipeline_name: Name of the pipeline. :param query_id: UUID of the search history query. :returns: List of log entries or an error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

load_skillA

Loads the full content of a bundled skill guide by name.

Use this tool to read the step-by-step instructions for a specific skill supported by this server.

Available skills: - custom-code: Use this skill whenever writing, generating, reviewing, or fixing a Haystack custom component (deepset_cloud_custom_nodes.code.code_component.Code) or custom tool (deepset_cloud_custom_nodes.tools.code_tool.CodeTool) for the deepset/Haystack enterprise platform. Triggers include requests to create a custom component, a custom tool, to check custom code against the platform's structural constraints (single class/function per file, required decorators, type annotations, allowed dependencies), or to extend the existing pipeline for functionality that is not already covered by existing components. - evaluation: Use this skill before writing, reviewing or fixing an Evaluator (an Evaluation Function) for the Haystack Enterprise Platform, before suggesting which Evaluators a pipeline needs, and before picking the Sessions a scoring run should judge. Covers the @metrics declaration and its grains, the return shape the worker enforces, the judge() contract for LLM-judged criteria, the exact source shape the Judge form can open, how to find Sessions (including failed and negatively rated ones), and structural recipes over the Session helpers.

:param skill_name: The name of the skill to load (see the list above). :returns: The skill's markdown content, or an error message listing available skills if not found.

list_templatesA

Retrieves a list of all available pipeline and indexing templates. :param limit: Maximum number of templates to return (default: 100). :param pipeline_type: The type of pipeline to return. :param after: The cursor to fetch the next page of results. If there are more results to fetch, the cursor will appear as next_cursor on the response.

:returns: List of pipeline templates or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

create_workspaceA

Creates a new workspace with the specified name.

This tool creates a new workspace that can be used to organize pipelines, indexes, and other resources. The workspace name must be unique across the platform. Once created, you can start deploying pipelines and other resources within this workspace. :param name: The name for the new workspace. Must be unique. :returns: Success confirmation or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

get_component_definitionB

Returns the definition of a specific Haystack component. :param component_type: Fully qualified component type (e.g. haystack.components.routers.conditional_router.ConditionalRouter) :param haystack_version: Optional version of Haystack to use. Pass the same version as specified in the pipeline yaml's dependencies section for the haystack-ai package.

:returns: ComponentDefinition model or error message string

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

create_pipelineB

Creates a new pipeline within the currently configured deepset workspace. :param pipeline_name: Name of the pipeline to create. :param yaml_configuration: YAML configuration for the pipeline. :returns: Created pipeline or error message.

All parameters accept object references in the form @obj_id or @obj_id.path.to.value.

Examples::

# Direct call with values
create_pipeline(data={'key': 'value'}, threshold=10)

# Call with references
create_pipeline(data='@obj_123', threshold='@obj_456.config.threshold')

# Mixed call
create_pipeline(data='@obj_123.items', threshold=10)The output is automatically stored and can be referenced in other functions.

Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

get_experiment_resultsA

Reads an Experiment's results: each Metric, candidate against baseline, then each test case.

Find an Experiment with list_experiments. metrics has one entry per Metric of the Metric Group, in its order: each side's value (or labels for a Label), delta and delta_pct of the candidate over the baseline, and how many Sessions errored, meaning the Evaluator's own code broke. A test case's value is the mean over its Sessions, and a Metric is averaged only over the paired_test_cases both sides have a value for, so check that count before trusting a delta. pipeline_metrics compares DURATION, TOKENS and COST the same way. Each test case lists the Sessions each side scored and, per Score Metric keyed {evaluator_id}:{metric_key}, each side's mean; that is where to look for the test cases behind a regression. Resolve evaluator ids to names with list_evaluators. Results are partial while status is REPLAYING or SCORING. :param experiment_id: The Experiment's id. :param max_test_cases: Most test cases to return; metrics still cover every test case. :returns: The results, or an error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

update_deploymentB

Updates a deployment's metadata, sizing, or execution mode.

Only fields you provide are changed; omitted fields keep their current value. :param deployment_id: ID of the deployment to update. :param name: New name for the deployment. :param description: New description. :param group_label: New group label. :param deployment_mode: New execution mode, "MANAGED" or "SERVERLESS". :param service_level: New sizing tier, "PRODUCTION", "DEVELOPMENT", or "CUSTOM". :param idle_timeout_in_seconds: New idle timeout, in seconds. :param min_query_replica_count: New minimum number of query replicas. :param max_query_replica_count: New maximum number of query replicas. :param max_index_replica_count: New maximum number of index replicas. :param cpu_request: New requested CPU per replica. :param cpu_limit: New CPU limit per replica. :param memory_request: New requested memory per replica. :param memory_limit: New memory limit per replica. :param gpu_limit_gigabyte: New GPU memory limit in gigabytes. :returns: The updated deployment or error message.

All parameters accept object references in the form @obj_id or @obj_id.path.to.value.

Examples::

# Direct call with values
update_deployment(data={'key': 'value'}, threshold=10)

# Call with references
update_deployment(data='@obj_123', threshold='@obj_456.config.threshold')

# Mixed call
update_deployment(data='@obj_123.items', threshold=10)The output is automatically stored and can be referenced in other functions.

Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

get_slice_from_object_storeA

Extract a slice from a string or list object that is stored in the object store.

:param object_id: Identifier of the object. :param start: Start index for slicing. :param end: End index for slicing (optional - leave empty to get slice from start to end of sequence). :param path: Navigation path to object to slice (optional). :return: String representation of the slice.

search_pipelineA

Searches using a pipeline.

Uses the specified pipeline to perform a search with the given query. Before executing the search, checks if the pipeline is deployed (status = DEPLOYED). Returns search results. :param pipeline_name: Name of the pipeline to use for search. :param query: The search query to execute.

:returns: Search results or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

get_experiment_runA

Reads one scoring run: how its cells ended, a summary per Metric, then the grid rows.

A scoring run is a Metric Group judging chosen Sessions of one pipeline. Find one with list_metric_groups (last_run) or list_experiments (a side's scoring_runs). It judges each chosen Session with each Evaluator; one cell per pair. counts says how the cells ended: errored is the Evaluator's own code breaking (see the cell's error_detail), not a low Metric; failed is a cell that never ran and can be retried. metrics summarises each Evaluator's Metric over every row, rows past max_rows included: mean, min and max for a Score, a count per label for a Label, and how often it did not apply. Each row is a Session with its cells; a cell's metrics carry the value per address (session, turn/2, ...) and the rationale the Evaluator wrote, which is what to group failures by. run.selection says whether the Sessions were SAMPLED or HAND_PICKED; only sampled runs say anything about traffic as a whole. :param pipeline_name: Name of the pipeline. :param metric_group_id: The id of the Metric Group the run scored with. :param run_id: The run's id. :param max_rows: Most rows to return; the summaries still cover every row. :returns: The run report, or an error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

delete_deploymentA

Deletes a deployment along with all of its revisions. This cannot be undone. :param deployment_id: ID of the deployment to delete. :returns: Confirmation or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

search_component_definitionsA

Searches for components based on name or description using semantic similarity. :param query: The search query :param top_k: Maximum number of results to return (default: 5) :param haystack_version: Optional version of Haystack to use. Pass the same version as specified in the pipeline yaml's dependencies section for the haystack-ai package.

:returns: ComponentSearchResults model or error message string

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

activate_deploymentB

Re-activates a deployment's current active revision, marking it as desired to be served.

Use this to bring a deactivated deployment back online without pushing a new revision. :param deployment_id: ID of the deployment. :returns: The updated deployment or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

create_deploymentA

Creates a new deployment (AI Gateway), optionally linked to a pipeline.

A deployment created without an origin_pipeline_id has no active revision until you call create_deployment_revision and activate_deployment_revision. Default service sizing follows Development unless explicit sizing fields are provided. :param name: Name of the deployment. :param description: Optional description. :param group_label: Optional label used to group related deployments. :param origin_pipeline_id: ID of the platform pipeline to link, if any. :param deployment_mode: Execution mode, "MANAGED" or "SERVERLESS" (default "MANAGED"). :param service_level: Sizing tier, "PRODUCTION", "DEVELOPMENT", or "CUSTOM" (default "DEVELOPMENT"). :param idle_timeout_in_seconds: Seconds of inactivity before scaling down. :param min_query_replica_count: Minimum number of query replicas. :param max_query_replica_count: Maximum number of query replicas. :param max_index_replica_count: Maximum number of index replicas. :param cpu_request: Requested CPU per replica. :param cpu_limit: CPU limit per replica. :param memory_request: Requested memory per replica. :param memory_limit: Memory limit per replica. :param gpu_limit_gigabyte: GPU memory limit in gigabytes. :returns: The created deployment or error message.

All parameters accept object references in the form @obj_id or @obj_id.path.to.value.

Examples::

# Direct call with values
create_deployment(data={'key': 'value'}, threshold=10)

# Call with references
create_deployment(data='@obj_123', threshold='@obj_456.config.threshold')

# Mixed call
create_deployment(data='@obj_123.items', threshold=10)The output is automatically stored and can be referenced in other functions.

Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

get_cost_breakdownA

Reads the LLM cost of the workspace, or of one pipeline, grouped by model, pipeline, deployment or API key.

Use this to find what drove the cost: which models, pipelines, deployments or API keys spent the most. Costs are in USD. Results are sorted by cost, highest first, unless you set sort_by and sort_order. Each entry has a key (a model or provider name, or a UUID for the other dimensions) and a readable label. A deleted pipeline still shows up with group_by='pipeline', labelled with its UUID. total is the number of groups across all pages; when has_more is true, read the next page_number. total_requests counts queries, not individual LLM calls. A cost_total of null means the group had usage but none of it was priced. Without dates the range is the last 30 days. :param group_by: The dimension to group by: model, workspace, pipeline, deployment, api_key or provider. :param pipeline_name: Restrict to this pipeline. Omit for the whole workspace. Needs Pipelines read as well as Costs read. :param start_date: Inclusive start as an ISO timestamp. Defaults to 30 days before end_date. :param end_date: Exclusive end as an ISO timestamp. Defaults to no upper bound. :param sort_by: Sort by label, cost_total, total_tokens or total_requests. Defaults to cost_total. :param sort_order: ASC or DESC. Defaults to DESC. :param limit: Groups per page, from 1 to 100. :param page_number: The page to read, starting at 1. :returns: One page of the breakdown, or an error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

patch_pipeline_versionA

Updates fields of an existing pipeline version in place.

At least one of yaml_configuration, description, or is_draft must be provided. :param pipeline_name: Name of the pipeline. :param version_id: UUID of the version to update. :param yaml_configuration: New YAML configuration for the version (optional). :param description: New description for the version (optional). :param is_draft: New draft status for the version (optional). :returns: The updated pipeline version or error message.

All parameters accept object references in the form @obj_id or @obj_id.path.to.value.

Examples::

# Direct call with values
patch_pipeline_version(data={'key': 'value'}, threshold=10)

# Call with references
patch_pipeline_version(data='@obj_123', threshold='@obj_456.config.threshold')

# Mixed call
patch_pipeline_version(data='@obj_123.items', threshold=10)The output is automatically stored and can be referenced in other functions.

Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

create_experimentA

Creates an Experiment that compares a candidate pipeline version against a baseline.

Both sides are scored by the same Metric Group over the test cases of one Dataset. The baseline is either another pipeline version (give baseline_pipeline_name and baseline_pipeline_version_id together) or Recorded (leave both unset): a Recorded baseline reuses the Sessions each test case recorded, with nothing replayed. The candidate is always a pipeline version that will be replayed on each test case.

Replaying runs the pipeline on the customer's models, so get a yes before creating when the cost matters. sessions_per_test_case sets how many Sessions each side scores per test case (1..50); existing Sessions on that version are reused and only the shortfall is replayed. Find ids with list_metric_groups (metric groups) and list_experiments (an existing Experiment's dataset_id). Read the running or finished Experiment with get_experiment_results. :param name: Human-readable name for the Experiment. :param dataset_id: The Dataset's id (the UI's Dataset dropdown). :param metric_group_id: The Metric Group id to score both sides with. :param candidate_pipeline_name: Name of the candidate pipeline. :param candidate_pipeline_version_id: The candidate pipeline version to replay. :param baseline_pipeline_name: Baseline pipeline name; omit for a Recorded baseline. :param baseline_pipeline_version_id: Baseline version id; required when baseline_pipeline_name is given. :param sessions_per_test_case: Repetitions per test case (1..50, default 1). :param replay_mode: FIRST_USER_MESSAGE replays the first turn only; ALL_USER_MESSAGES replays every turn. :returns: The created Experiment, or an error message.

list_doc_sectionsA

List the main sections of the deepset AI Platform documentation.

Use this to understand what documentation is available and help users navigate to the right section. Pass a section id to search_docs as section to limit search results to that part of the docs.

:returns: A list of documentation sections with descriptions and URLs.

get_indexB

Fetches detailed configuration information for a specific index, identified by its unique index_name. :param index_name: Unique name of the index to fetch. :returns: The index configuration or an error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

get_session_replayA

Reads a session replay that replay_session handed back while it was still running. :param pipeline_name: Name of the pipeline. :param replay_run_id: The replay_run_id from replay_session. :returns: The replay report with the new Session's id once it ended, or an error message.

list_sessionsA

Lists a pipeline's Sessions that a scoring run can judge, newest last activity first.

A Session is the turns that share a search_session_id; a run without one is a single-turn Session named by its query_id. Only Sessions whose every turn still has its trace are listed. session_id is the id a scoring run takes. To find Sessions that went wrong (a failed turn, negative feedback), use list_pipeline_traces with an OData filter instead and take each row's search_session_id, or its query_id when that is empty. :param pipeline_name: Name of the pipeline. :param origin: Only Sessions whose every turn came from a Service, the pipeline's own API, or the Playground. :param deployment_id: Only Sessions whose every turn this Service served. :param pipeline_version_id: Only Sessions whose every turn this pipeline version served. :param since: ISO-8601 time; only Sessions last active at or after it. :param until: ISO-8601 time; only Sessions last active at or before it. :param limit: Most Sessions per page (at most 200). A page can hold fewer and still have a next. :param cursor: The next value of the previous page. :returns: One page of Sessions, or an error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

get_pipeline_versionA

Fetches a specific version of a pipeline by its version ID. :param pipeline_name: Name of the pipeline. :param version_id: UUID of the version to fetch. :returns: Pipeline version details or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

activate_deployment_revisionB

Activates a revision, marking it as the deployment's desired served revision. :param deployment_id: ID of the deployment. :param revision_id: ID of the revision to activate. :returns: The updated deployment or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

search_pipeline_with_filtersB

Searches using a pipeline with filters.

Uses the specified pipeline to perform a search with the given query and filters. Filters follow the Haystack filter syntax: https://docs.haystack.deepset.ai/docs/metadata-filtering. Before executing the search, checks if the pipeline is deployed (status = DEPLOYED). Returns search results. :param pipeline_name: Name of the pipeline to use for search. :param query: The search query to execute. :param filters: The filters to apply to the search.

:returns: Search results or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

restore_pipeline_versionC

Restores a non-draft pipeline version to be editable as a new draft.

The previous draft (if any) is finalized, getting an incremented version number. :param pipeline_name: Name of the pipeline to restore. :param version_id: UUID of the version to restore. :returns: The restored pipeline version or error message.

All parameters accept object references in the form @obj_id or @obj_id.path.to.value.

Examples::

# Direct call with values
restore_pipeline_version(data={'key': 'value'}, threshold=10)

# Call with references
restore_pipeline_version(data='@obj_123', threshold='@obj_456.config.threshold')

# Mixed call
restore_pipeline_version(data='@obj_123.items', threshold=10)The output is automatically stored and can be referenced in other functions.

Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

list_pipeline_versionsA

Lists all versions of a pipeline, ordered by version number descending (newest first). :param pipeline_name: Name of the pipeline to list versions for. :param after: Cursor (version_id UUID) to fetch the next page of results. :returns: Paginated list of pipeline versions or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

get_pipeline_trace_span_tagsA

Retrieves all tags for a single span within a Haystack pipeline run trace.

A span's tags carry the component-level detail, including its input and output (e.g. haystack.component.input / haystack.component.output) plus type and error information. Use this to inspect one component run in detail.

Obtain span_id from a span in a get_pipeline_trace response, and query_id from list_pipeline_traces or list_pipeline_search_history. :param pipeline_name: Name of the pipeline. :param query_id: UUID of the search history query. :param span_id: UUID of the span whose tags to retrieve. :returns: The span's tag dictionary or an error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

create_indexC

Creates a new index within your Haystack Enterprise Platform workspace. :param index_name: Unique name of the index to create. :param yaml_configuration: YAML configuration to use for the index. :param description: Description of the index to create. :returns: A message and the created index, or an error message.

All parameters accept object references in the form @obj_id or @obj_id.path.to.value.

Examples::

# Direct call with values
create_index(data={'key': 'value'}, threshold=10)

# Call with references
create_index(data='@obj_123', threshold='@obj_456.config.threshold')

# Mixed call
create_index(data='@obj_123.items', threshold=10)The output is automatically stored and can be referenced in other functions.

Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

list_experimentsA

Lists the workspace's Experiments, newest first.

An Experiment compares a candidate pipeline version against a baseline on the test cases of one Dataset: each side gets its Sessions (reused, or replayed against its version) and is scored by the same Metric Group. The baseline is another version, or, when recorded, the Sessions the Dataset recorded. status and each side's status go REPLAYING, SCORING, then ENDED or FAILED; a side's error says why it failed and scoring_counts how its evaluations ended. Read how the candidate did against the baseline with get_experiment_results. To read one side's scoring run cell by cell, pass its scoring_runs[].experiment_run_id, that entry's pipeline_id resolved to a name with list_pipelines, and the Experiment's metric_group_id to get_experiment_run. :param pipeline_name: Only Experiments with either side on this pipeline, when given. :returns: The Experiments, or an error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

get_secretA

Retrieves detailed information about a specific secret by its ID.

Use this tool to get information about a specific secret when you know its ID. The secret value itself is not returned for security reasons, only metadata. :param secret_id: The unique identifier of the secret to retrieve

:returns: Secret information or error message

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

search_pipeline_with_paramsA

Searches using a pipeline with params.

Uses the specified pipeline to perform a search with the given query and params. Params can be arbitrary parameters to customize the search behavior. Filters can be used as well under the "filters" key in params. Filters follow the Haystack filter syntax: https://docs.haystack.deepset.ai/docs/metadata-filtering. Before executing the search, checks if the pipeline is deployed (status = DEPLOYED). Returns search results. :param pipeline_name: Name of the pipeline to use for search. :param query: The search query to execute. :param params: The parameters to customize the search.

:returns: Search results or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

yq_object_storeA

Query or transform structured data stored in the object store using a jq filter expression.

Use this to filter, map, select, or rewrite nested data without pulling the whole object into context, e.g. {"object_id": "@obj_001", "filter": ".items[] | select(.active) | .name"}. Transforming filters work the same way, e.g. .config.timeout = 30.

If the targeted value is a JSON or YAML string (e.g. a pipeline's YAML config), it is parsed before the filter runs so you can navigate into its fields; a transformed result is re-serialized back to that same format.

By default, the result is stored as a new object and returned with a preview, so you can reference it further (e.g. get_from_object_store) or feed it back into another yq_object_store call. Set store=False if you just want the full result inline and don't need it stored, e.g. for a small lookup you'll act on immediately.

:param object_id: The id of the object to query in the format @obj_001. :param filter: jq filter expression to apply, e.g. .field, .items[], .[] | select(.status=="done"), or a transformation like .field = "value". :param path: Navigation path to a nested attribute to query instead of the whole object (optional). :param store: Whether to store the result as a new object (default: True). Set to False to get the full result inline instead of a preview, without writing anything to the object store. :return: New object ID and a preview of the result, the full result if store is False, or a message if the filter is invalid or produced no results.

list_custom_component_installationsB

List custom component installations. :param limit: Maximum number of installations to return per page. :param after: The cursor to fetch the next page of results.

:returns: Custom component installations or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

get_from_object_storeA

Use this tool to fetch an object from the object store.

You can fetch a specific object by using the object's id (e.g. @obj_001). You can also fetch any nested path by using the path-parameter (e.g. {"object_id": "@obj_001", "path": "user_info.given_name"} -> returns the content at obj.user_info.given_name).

:param object_id: The id of the object to fetch in the format @obj_001. :param path: The path of the object to fetch in the format of access.to.attr or ["access"]["to"]["attr"]. :return: String representation of the object or of the value at path.

list_deploymentsA

Lists deployments (AI Gateways) in the currently configured deepset workspace.

A deployment serves a pipeline behind a stable endpoint, independent of the pipeline's own draft/version history. :param after: The cursor to fetch the next page of results. :param group_label: Filter deployments by group label. :param tags: Filter deployments by tags (matches if any tag is present). :returns: Paginated list of deployments or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

try_evaluatorA

Tries Evaluator source on one Session and returns what it found. Persists nothing.

Use it to check a draft before showing it as ready, and to judge a replayed Session against its source. The source is an Evaluation Function as the evaluation skill describes; to try a saved Evaluator, read a version's python_code with get_evaluator and pass it. A try that judges with a model costs a model call per judged turn on the customer's provider.

outcome ERRORED means the code broke: read error_detail and fix it. metrics are the values per address with their rationales. trace_summary says which Session Tools the evaluator called. If status is RUNNING the wait ran out: poll get_evaluation_try. :param pipeline_name: Name of the pipeline the Session belongs to. :param python_code: The Evaluation Function's source. :param session_id: The Session to judge: a search_session_id, or a single-turn run's query_id. :param wait_seconds: How long to wait for the result before handing back the id to poll. :returns: The try report, or an error message.

list_evaluatorsA

Lists the Evaluators in the workspace.

An Evaluator is a versioned Python function that judges a Session and reports named Metrics. Each entry carries its newest version's id and the Metrics that version declares (name, shape, grain and, for a closed Label, its vocabulary), but not the source. Evaluators belong to the workspace, not to a pipeline; a Metric Group picks which ones a scoring run judges with. :returns: The Evaluators, or an error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

list_deployment_tagsB

Lists distinct tag strings attached to deployments in the workspace.

Useful for autocomplete when adding tags, or to see how deployments are currently grouped. :param name: Case-insensitive substring filter on tag names. :param order: Sort order for the returned tags, "ASC" or "DESC" (default "ASC"). :returns: List of distinct tag names or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

deploy_indexA

Deploys an index to production.

This function attempts to deploy the specified index in the given workspace. If the deployment fails due to validation errors, it returns an object describing the validation errors. :param index_name: Name of the index to deploy.

:returns: A string indicating the deployment result or the validation results including errors.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

get_templateA

Fetches detailed information for a specific pipeline or indexing template, identified by its template_name. :param template_name: The name of the template to fetch.

:returns: Pipeline or indexing template details or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

get_pipelineA

Fetches information for a specific pipeline, identified by its unique pipeline_name. :param pipeline_name: The name of the pipeline to fetch. :returns: Pipeline details or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

list_metric_groupsA

Lists the workspace's Metric Groups, newest first.

A Metric Group is a named, ordered set of Evaluators. It belongs to the workspace, not to a pipeline: a scoring run judges chosen Sessions of one pipeline with it, and an Experiment scores both its sides with one. With pipeline_name, each entry's last_run is its newest scoring run on that pipeline without the grid (status, selection, timing), or null when it never ran there; read a run's results with get_experiment_run. :param pipeline_name: A pipeline to attach each Metric Group's most recent scoring run on. :returns: The Metric Groups, or an error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

get_cost_over_timeA

Reads the LLM cost of the workspace, or of one pipeline, per UTC day.

Use this to see how spending developed, find the day a cost spike started, or compare periods. Costs are in USD. There is one point per day with usage; days without usage are left out, so a missing day means zero cost. A cost_total of null means that day had usage but none of it was priced. Without dates the range is the last 30 days. start_date is inclusive and end_date exclusive. The daily figures leave out unpriced LLM calls; use get_cost_totals to check whether the cost is complete. :param pipeline_name: Restrict to this pipeline. Omit for the whole workspace. Needs Pipelines read as well as Costs read. :param start_date: Inclusive start as an ISO timestamp. Defaults to 30 days before end_date. :param end_date: Exclusive end as an ISO timestamp. Defaults to no upper bound. :returns: The daily cost, or an error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

get_latest_custom_component_installation_logsB

Get the logs from the latest custom component installation.

:returns: The latest installation logs or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

delete_deployment_tagB

Removes a tag from a deployment. Tag matching is case-insensitive. :param deployment_id: ID of the deployment. :param tag_name: Tag to remove. :returns: The deployment's full tag list after removal, or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

get_deployment_statsB

Fetches query volume, outcome split, and run durations for a deployment. :param deployment_id: ID of the deployment. :param days: Size of the rolling window, in days (1-90, default 30). :param granularity: Bucket width for the returned series, "DAY" (default) or "HOUR". :param time_zone: IANA time zone used to bucket the series (default "UTC"). :returns: Deployment statistics or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

search_docsA

Search the Haystack Enterprise Platform documentation.

Use this to find information about Haystack components, pipelines, document stores, embedders, generators, retrievers, and other AI platform features. Returns relevant documentation excerpts with source URLs.

:param query: The search query. Be specific about what you're looking for. Examples: 'How to create a RAG pipeline', 'OpenAI embedder configuration', 'document store filters'. :param section: Optional documentation section id from list_doc_sections (for example, how-to-guides or api). Limits results to that section. :returns: Relevant documentation excerpts with source URLs.

create_pipeline_versionA

Creates a new version of an existing pipeline with the provided YAML configuration.

Use this to update a pipeline's configuration. Each call creates a new immutable version, preserving the full history of changes.

If is_draft is True, and there is already a draft version, the existing draft will be finalized and incremented to a new version number. :param pipeline_name: Name of the pipeline to create a version for. :param yaml_configuration: The new YAML configuration for this version. :param description: Optional description of what changed in this version. :param is_draft: If True, the version is created as a draft (default: False). :returns: The newly created pipeline version or error message.

All parameters accept object references in the form @obj_id or @obj_id.path.to.value.

Examples::

# Direct call with values
create_pipeline_version(data={'key': 'value'}, threshold=10)

# Call with references
create_pipeline_version(data='@obj_123', threshold='@obj_456.config.threshold')

# Mixed call
create_pipeline_version(data='@obj_123.items', threshold=10)The output is automatically stored and can be referenced in other functions.

Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

list_indexesA

Retrieves a list of all indexes available within the currently configured deepset workspace. :param after: The cursor to fetch the next page of results. If there are more results to fetch, the cursor will appear as next_cursor on the response. :returns: List of indexes or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

get_deployment_metricsB

Fetches per-replica CPU/memory usage, resource limits, and replica counts for a deployment. :param deployment_id: ID of the deployment. :param start_ms: Start of the time range, in unix milliseconds. :param end_ms: End of the time range, in unix milliseconds. :returns: Deployment metrics or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

list_deployment_revisionsA

Lists revisions of a deployment, i.e. the history of pipeline configurations it has served. :param deployment_id: ID of the deployment. :param after: The cursor to fetch the next page of results. :returns: Paginated list of revisions or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

list_deployment_activityB

Lists activation and revision activity for a deployment. :param deployment_id: ID of the deployment. :param after: The cursor to fetch the next page of results. :returns: Paginated list of activity events or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

validate_indexA

Validates the provided index YAML configuration against the deepset API. :param yaml_configuration: The YAML configuration to validate. :returns: Validation result with original YAML or error message.

All parameters accept object references in the form @obj_id or @obj_id.path.to.value.

Examples::

# Direct call with values
validate_index(data={'key': 'value'}, threshold=10)

# Call with references
validate_index(data='@obj_123', threshold='@obj_456.config.threshold')

# Mixed call
validate_index(data='@obj_123.items', threshold=10)The output is automatically stored and can be referenced in other functions.

Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

list_search_historyA

Retrieves search history for the configured deepset workspace.

Returns past searches run in the workspace, including queries, answers, prompts, feedback, and metadata. Use this to inspect what users have searched for, analyze usage, or debug pipeline behavior.

Each entry includes:

  • request.query — the search query text

  • time / created_at — when the search ran

  • duration — how long it took (seconds)

  • status — 'success' or 'failed'

  • pipeline.name — which pipeline handled the query

  • response — the list of search results

  • feedback, labels, note — user annotations

Use the after parameter with the next_cursor value from the previous response to fetch the next page. :param limit: Maximum number of entries to return per page (default 10, max 1000). :param after: ISO-8601 timestamp cursor to fetch entries older than this point. Pass the value from next_cursor on the previous response. :param query_filter: An OData filter expression to narrow down results. Supported fields: query, client_source_path, pipeline_version_id, answer, api_key, created_at, created_by, tags/tag_id, feedbacks, feedbacks/score, feedbacks/comment, feedbacks/bookmarked, session_id, search_session_id, feedbacks/result_id, request/filters, request/params, duration, labels, status, note. Example: "created_at ge 2024-01-01T00:00:00Z" or "query eq 'my search'". :param sort_field: Field to sort results by. One of: created_at, query, duration, feedbacks/score. Defaults to created_at. :param sort_order: Sort direction — ASC (oldest first) or DESC (newest first). Defaults to DESC. :returns: Paginated list of search history entries or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

validate_pipelineB

Validates the provided pipeline YAML configuration against the deepset API. :param yaml_configuration: The YAML configuration to validate. :returns: Validation result with original YAML or error message.

All parameters accept object references in the form @obj_id or @obj_id.path.to.value.

Examples::

# Direct call with values
validate_pipeline(data={'key': 'value'}, threshold=10)

# Call with references
validate_pipeline(data='@obj_123', threshold='@obj_456.config.threshold')

# Mixed call
validate_pipeline(data='@obj_123.items', threshold=10)The output is automatically stored and can be referenced in other functions.

Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

list_pipelinesA

Retrieves a list of all pipeline available within the currently configured deepset workspace. :param after: The cursor to fetch the next page of results. If there are more results to fetch, the cursor will appear as next_cursor on the response. :returns: List of pipelines or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

sed_object_storeA

Find and replace text in a string stored in the object store using regex.

Applies substitution (like sed s/pattern/replacement/) and stores the result as a new object, returning its ID. The original object is not modified.

:param object_id: The id of the object to modify in the format @obj_001. :param pattern: Regular expression pattern to find. :param replacement: Replacement string. Supports backreferences like \1, \2. :param path: Navigation path to a nested string attribute (optional). :param count: Maximum number of replacements (0 = replace all, default: 0). :param case_sensitive: Whether the pattern match should be case sensitive (default: False). :return: New object ID with the modified string and a preview of the result.

debug_pipelineA

Runs a pipeline configuration in debug mode: pin a breakpoint, resume a snapshot, or trace a full run.

Debugs a pipeline configuration directly (not a saved pipeline by name) -- pass the YAML you want to test, e.g. from get_pipeline_version, create_pipeline_version, or a local draft. The inline run trace is always returned, so a failure is visible even for a run that never reaches a breakpoint.

One call carries at most one of:

  • break_at_component_name (with break_at_visit_count) -- run from inputs until the breakpoint is hit, then stop and return a resumable snapshot in the 'snapshot' field. Pass that back as resume_from to continue the run.

  • resume_from -- replay a snapshot returned by a previous debug run to completion; inputs are ignored, they come from the snapshot.

  • neither -- run the pipeline from inputs to completion as a plain debug run. :param yaml_configuration: The pipeline YAML configuration to debug. :param inputs: Named pipeline inputs keyed by the input name declared under the pipeline config's 'inputs' mapping (e.g. {"query": "What is love?"}). Ignored when resume_from is set. :param break_at_component_name: Name of the component to break at. Mutually exclusive with resume_from; omit both to run to completion as a plain debug run. :param break_at_visit_count: Break when the target has been visited this many times (0 breaks before the first visit; relevant for loops/cycles). Only used if break_at_component_name is set. :param resume_from: A snapshot returned by a previous debug run (its 'snapshot' field), replayed to completion. Mutually exclusive with break_at_component_name. :param files: File IDs to download and inject into the inputs declared under the pipeline config's 'inputs.files' mapping. :param pipeline_id: Optional ID of the pipeline this debug run is associated with. :param pipeline_version_id: Optional ID of the pipeline version to associate the run with (requires pipeline_id). :param dry_run: Best-effort stateless run: state-modifying components (e.g. DocumentWriter) are replaced with no-op equivalents so the pipeline can be inspected without side effects. Required for indexing pipelines (their document store carries no index until deploy time); harmless for query pipelines. Set it on resume too if the original run used dry_run, otherwise the run is rejected.

:returns: PipelineDebugResult with status, result/snapshot, and the run trace, or an error message.

All parameters accept object references in the form @obj_id or @obj_id.path.to.value.

Examples::

# Direct call with values
debug_pipeline(data={'key': 'value'}, threshold=10)

# Call with references
debug_pipeline(data='@obj_123', threshold='@obj_456.config.threshold')

# Mixed call
debug_pipeline(data='@obj_123.items', threshold=10)The output is automatically stored and can be referenced in other functions.

Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

get_pipeline_logsA

Fetches logs for a specific pipeline.

Retrieves log entries for the specified pipeline, with optional filtering by log level. This is useful for debugging pipeline issues or monitoring pipeline execution. :param pipeline_name: Name of the pipeline to fetch logs for. :param limit: Maximum number of log entries to return (default: 30). :param level: Filter logs by level. If None, returns all levels. :param after: The cursor to fetch the next page of results.

:returns: Pipeline logs or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

get_cost_totalsA

Reads the total LLM cost, tokens and requests of the workspace, or of one pipeline, over a date range.

Use this to answer how much a workspace or pipeline spent on LLM calls. Costs are in USD. Without dates the range is the last 30 days. start_date is inclusive and end_date exclusive, so for September 2026 pass 2026-09-01T00:00:00Z and 2026-10-01T00:00:00Z.

Check is_cost_complete before reporting total_cost. When it is false, total_cost is a lower bound, not the final figure: say so, and name the models in unpriced_models (LLM calls with no price on file) and mention pending_generation_count (calls whose cost is still being calculated, which usually clears within a minute). total_requests counts queries, not individual LLM calls; one query can make several LLM calls. :param pipeline_name: Restrict to this pipeline. Omit for the whole workspace. Needs Pipelines read as well as Costs read. :param start_date: Inclusive start as an ISO timestamp. Defaults to 30 days before end_date. :param end_date: Exclusive end as an ISO timestamp. Defaults to no upper bound. :returns: The cost totals, or an error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

grep_object_storeA

Search for a regex pattern in a string stored in the object store.

Returns matches with surrounding context, similar to grep.

:param object_id: The id of the object to search in the format @obj_001. :param pattern: Regular expression pattern to search for. :param path: Navigation path to a nested string attribute (optional). :param case_sensitive: Whether the search should be case sensitive (default: False). :return: Matches with context, or a message if no matches found.

get_evaluation_tryA

Reads an ad-hoc try that try_evaluator handed back while it was still running.

EXPIRED means the result aged out (tries are kept for an hour): run try_evaluator again. :param pipeline_name: Name of the pipeline. :param try_id: The try_id from try_evaluator. :returns: The try report, or an error message.

list_pipeline_tracesA

Lists Haystack pipeline run trace summaries for a specific pipeline.

Returns one lightweight summary per query run — query_id, query text, status, timing (duration_s, created_at), and failure details if the run failed. Summaries do not include spans or logs. Use this to browse runs, find slow or failed queries, then pass a query_id to get_pipeline_trace for the full execution trace (spans with essential tags such as component type), get_pipeline_trace_span_tags for a single span with full tags (including input/output), or get_pipeline_trace_logs for the logs of the trace.

Use the after parameter with next_cursor from the response to fetch the next page. :param pipeline_name: Name of the pipeline to retrieve traces for. :param limit: Maximum number of trace entries to return per page (default 10). :param after: ISO-8601 timestamp cursor from next_cursor on the previous response. :param query_filter: An OData filter expression to narrow down results. Supported fields: query, client_source_path, pipeline_version_id, answer, api_key, created_at, created_by, tags/tag_id, feedbacks, feedbacks/score, feedbacks/comment, feedbacks/bookmarked, session_id, search_session_id, feedbacks/result_id, request/filters, request/params, duration, labels, status, note. Example: "status eq 'failed'" or "created_at ge 2024-01-01T00:00:00Z". :param sort_field: Field to sort results by. One of: created_at, query, duration, feedbacks/score. Defaults to created_at. :param sort_order: Sort direction — ASC (oldest first) or DESC (newest first). Defaults to DESC. :returns: Paginated list of pipeline trace summaries or an error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

get_modelsA

Lists the models including their configuration options available for use in a workspace's pipelines and indexes.

This includes predefined models offered by deepset as well as custom models configured at the workspace or organization level. Use this tool to discover which model names and providers can be used, which configuration options are available, and which default configuration is offered when configuring chat generators. :param limit: Maximum number of models to return per page. :param page_number: The page to fetch, starting at 1. :param connected: If set, only return models for which the workspace does (True) or does not (False) have a working integration configured. :param provider: If set, only return models from this provider. Accepts a well-known ModelProvider value (e.g. 'openai', 'anthropic', 'gemini', 'aws-bedrock') or any other provider name as a plain string. Case-insensitive, exact match. :param model: If set, only return models whose configured model name contains this value (e.g. 'gpt-4o'). Case-insensitive, substring match. :returns: A page of models including their configuration options or an error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

get_deploymentB

Fetches details for a specific deployment, including its active revision and runtime status. :param deployment_id: ID of the deployment to fetch. :returns: Deployment details or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

get_evaluatorA

Fetches one Evaluator, or one of its versions with the Python source.

Without version_id it returns the Evaluator with every version, newest first, each with the Metrics it declares but no source. With version_id it returns that version including its python_code; pass latest_version.evaluator_version_id to read the current source. :param evaluator_id: The Evaluator's id. :param version_id: A version's id, to read that version's source. :returns: The Evaluator or the version, or an error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

get_pipeline_traceA

Retrieves the Haystack pipeline run trace including all spans for a single search history record.

Returns the execution trace for one query: every component span with essential tags (excluding the component's input and output), timing, and failure details. Use this to deep-dive into a specific query run identified by its query_id (obtainable from list_pipeline_traces or list_pipeline_search_history).

For a targeted look at one span including the input and output at one component, use get_pipeline_trace_span_tags; for the logs, use get_pipeline_trace_logs. :param pipeline_name: Name of the pipeline. :param query_id: UUID of the search history query whose trace to retrieve. Obtain this from the query_id / search_history_id field of a list_pipeline_traces or list_pipeline_search_history response. :returns: The pipeline trace entry including all spans or an error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

list_component_familiesA

Lists all Haystack component families that are available on deepset. :param haystack_version: Optional version of Haystack to use. Pass the same version as specified in the pipeline yaml's dependencies section for the haystack-ai package.

:returns: ComponentFamilyList model or error message string

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

get_deployment_revisionB

Fetches a single deployment revision, including the pipeline configuration YAML it serves. :param deployment_id: ID of the deployment. :param revision_id: ID of the revision to fetch. :returns: The revision, including its config YAML, or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

list_workspacesB

Retrieves a list of all workspaces available to the user.

This tool provides an overview of all workspaces that the user has access to. Each workspace contains information about its name, ID, supported languages, and default idle timeout settings. :returns: List of workspaces or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

replay_sessionA

Replays a recorded Session against a pipeline version, a draft included, into a new Session.

Use it to check a pipeline change on real Sessions: replay the Sessions behind the change against the draft version, then try_evaluator the relevant Evaluators on each source Session and on its replayed_session_id, and compare. Each replay runs the pipeline on the customer's models, so say what it costs and get a yes before replaying. The source Session and the deployed pipeline are untouched.

FIRST_USER_MESSAGE replays the first turn only; ALL_USER_MESSAGES replays every turn of a chat in order. Leave it unset to use the server's default (the first turn), and say so when reporting. If status is still CREATED or STARTED the wait ran out: poll get_session_replay. :param pipeline_name: Name of the pipeline. :param session_id: The Session to replay: a search_session_id, or a single-turn run's query_id. :param pipeline_version_id: The pipeline version to replay against, e.g. the current draft's. :param replay_mode: FIRST_USER_MESSAGE or ALL_USER_MESSAGES; unset uses the server's default. :param wait_seconds: How long to wait for the replay before handing back the id to poll. :returns: The replay report with the new Session's id, or an error message.

create_deployment_revisionA

Pushes a new revision onto a deployment, e.g. from a platform pipeline version.

Creating a revision does not serve it automatically; call activate_deployment_revision to make it the deployment's served revision. :param deployment_id: ID of the deployment. :param comment: Comment describing the revision. :param config_yaml: Inline pipeline configuration YAML, for an externally pushed revision. :param source_version_id: ID of the source pipeline version, for a platform pipeline revision. :param source_type: Where the revision's pipeline configuration comes from, "PLATFORM_PIPELINE" (default) or "EXTERNAL_PIPELINE". :returns: The newly created revision or error message.

All parameters accept object references in the form @obj_id or @obj_id.path.to.value.

Examples::

# Direct call with values
create_deployment_revision(data={'key': 'value'}, threshold=10)

# Call with references
create_deployment_revision(data='@obj_123', threshold='@obj_456.config.threshold')

# Mixed call
create_deployment_revision(data='@obj_123.items', threshold=10)The output is automatically stored and can be referenced in other functions.

Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

get_workspaceA

Fetches detailed information for a specific workspace by name.

This tool retrieves comprehensive details about a specific workspace, including its unique ID, supported languages, and configuration settings. Use this when you need detailed information about a particular workspace. :param workspace_name: The name of the workspace to fetch details for. :returns: Workspace details or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

get_custom_componentsA

Get a list of all installed custom components. :param haystack_version: Optional version of Haystack to use. Pass the same version as specified in the pipeline yaml's dependencies section for the haystack-ai package.

:returns: ComponentDefinitionList model or error message string.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

search_templatesA

Searches for pipeline or indexing templates based on name or description using semantic similarity. :param query: The search query. :param top_k: Maximum number of results to return (default: 10). :param pipeline_type: The type of pipeline to return ('indexing' or 'query'; default: 'query').

:returns: Search results with similarity scores or error message.

The output is automatically stored and can be referenced in other functions. Returns a formatted preview with an object ID (e.g., @obj_123). Use the object store tools in combination with the object ID to view nested properties of the object. Use the returned object ID to pass this result to other functions.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.3/5.0

Scored across 83 tools

Disambiguation4/5

Most tools target a clearly distinct resource+action, and the descriptions carefully distinguish subtle pairs (get_pipeline_logs vs get_pipeline_trace_logs, activate_deployment vs activate_deployment_revision). The main overlap is the search trio (search_pipeline, search_pipeline_with_params, search_pipeline_with_filters), where with_params also accepts filters, plus list_search_history vs list_pipeline_search_history and list_pipeline_traces overlapping in scope.

Naming Consistency4/5

The set overwhelmingly follows a consistent verb_noun snake_case convention (list_, get_, create_, update_, delete_, search_, validate_, deploy_). Minor deviations exist in a handful of noun/tool-first names (yq_object_store, sed_object_store, grep_object_store, load_skill), but these are readable and don't undermine predictability.

Tool Count2/5

83 tools is very heavy and exceeds the range where an agent can reliably select without help, even given the genuinely broad platform scope. Many fine-grained operations (per-revision, per-tag, per-cost-view) could be consolidated, making the surface hard to navigate.

Completeness3/5

Read/write coverage is broad across pipelines, deployments, indexes, workspaces, evaluations, costs, and docs, but delete/lifecycle operations are missing for several core resources (no delete_pipeline, delete_index, update/delete_workspace, and no create_secret despite get/list_secret). These gaps will cause dead ends for full CRUD workflows.

Maintenance

ActivityActive
ResponsivenessNo issues