Skip to main content
Glama
getsimba-ai

Simba MCP Server

Official
by getsimba-ai

Run Pipeline

run_pipeline

Start a refresh of an owned data pipeline by hash or ID, queue it for server-side execution, and poll the returned run ID until it succeeds or fails.

Instructions

Start a refresh of one owned data pipeline (by pipeline_hash or id). Returns {run_id, status: "queued"} at once; the run executes on the server as the pipeline's owner with its saved connections. Poll get_pipeline_run until status is succeeded or failed (every few seconds; warehouse runs can take minutes, and a run stops at 30 minutes). Optional start_date / end_date (YYYY-MM-DD) limit the source steps to that range. One run per pipeline at a time: if one is already queued or running you get run_in_progress with that run_id — poll it instead of starting another. Each successful run saves a new pipeline version. Requires the create:models scope.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
end_dateNo
start_dateNo
pipeline_refYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.12.0

TDQS

A4.8/5.0
Behavior5/5

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

Goes well beyond the annotations (readOnlyHint=false, idempotentHint=false) by disclosing that the run executes server-side as the owner with saved connections, returns {run_id, status: \"queued\"} immediately, enforces one-run-per-pipeline, produces a new pipeline version, and requires the create:models scope. These are exactly the operational traits an agent needs.

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 dense block that is front-loaded with the action and return shape, with each subsequent clause adding a distinct operational fact (polling, duration cap, concurrency, versioning, scope). It is long for one paragraph but essentially waste-free rather than padded.

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

Completeness5/5

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

For an async trigger tool with annotations and a sibling poller, everything needed to invoke correctly is present: inputs, immediate return, concurrency conflict handling, duration bound, and auth scope. An output schema exists, so return-value detail is covered structurally.

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

Parameters4/5

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

Schema coverage is 0%, so the description must carry the load, and it does: pipeline_ref is explained as accepting a hash or id, and start_date/end_date are explained as YYYY-MM-DD values that limit source steps to that range. It stops just short of stating the date behavior when only one bound is supplied or the default full-refresh range.

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?

States a specific verb and resource ('Start a refresh of one owned data pipeline') and immediately scopes it by identifier type (pipeline_hash or id). It is clearly distinguishable from siblings like get_pipeline_run and list_pipelines, which are referenced as polling/listing operations rather than triggers.

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

Usage Guidelines5/5

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

Explicitly routes the agent: poll get_pipeline_run until succeeded/failed, with cadence guidance ('every few seconds'), expected duration, and the 30-minute stop. It also names the alternative behavior when a run is already active ('poll it instead of starting another').

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

Deploy Server

Other Tools