Tool domains

July 31, 2026 · View on GitHub

English | 简体中文

Version 1.0 has one built-in read-only catalog: eight top-level domains and fifty-five exact children. This page explains product intent. The generated tool registry is authoritative for formal feature IDs, handler bindings, authorization identifiers, variants, and migration inputs.

Discovery and execution shape

Discover a domain:

{}

Execute one discovered child:

{
  "child_tool": "<exact child name>",
  "arguments": {},
  "manifest_version": "<returned by discovery>"
}

Availability is runtime-specific. A child listed below is part of the public contract, but it is callable only when its version, feature, provider, permission, route, and configuration predicates pass.

doris_catalog — metadata navigation

ChildPurposeImportant behavior
list_catalogsList internal and external catalogs.Bounded, ordered, filterable; external visibility follows Doris privileges.
list_databasesList databases in one catalog.Requires an exact catalog when the route uses multiple catalogs.
list_tablesList tables/views in one database.Stable filtering and signed cursor pagination.
get_table_contextAssemble table basic, schema, comments, and indexes sections.schema is always required; optional sections can report partial/unavailable independently.
get_table_sizeReturn table and bounded partition size evidence.Uses live statistics/metadata; reports truncation rather than unbounded scans.

get_table_context replaces five pre-1.0 top-level calls. It keeps section provenance and warnings instead of flattening partially available metadata into one ambiguous object.

doris_query — read-only query and diagnostics

ChildPurposeImportant behavior
execute_queryExecute one read-only SQL statement.SQL guard, bound parameters, timeout/row/byte ceilings, masking, deterministic errors.
explain_queryReturn a bounded Doris query plan.The target SQL must itself pass the read-only guard.
get_query_profileRetrieve a bounded FE query profile.Requires FE HTTP/profile evidence and never returns credentials.
diagnose_query_performanceProduce deterministic findings from plan/profile/query evidence.Evidence-based rules; no invented confidence score.
list_slow_queriesList bounded slow-query evidence.Requires readable audit history; raw sensitive SQL fields are sanitized.
get_adbc_connection_infoReport Arrow Flight SQL/ADBC readiness.Advanced, default-off, and valid only after explicit user intent selects ADBC.
execute_adbc_queryExecute a bounded read-only query through ADBC.Requires explicit_adbc=true; never substitutes for ordinary execute_query; fail-closed on token-bound routes.

Ordinary SQL always uses execute_query. The two ADBC children are an advanced path for requests that explicitly name ADBC or Arrow Flight SQL; their schemas require explicit_adbc=true, and the runtime independently enforces the same condition. The query domain accepts SQL because SQL is the native Doris query interface, but it does not expose DDL, DML, administrative SQL, arbitrary stacked statements, or an unbounded result channel.

doris_cluster — runtime and resource state

ChildPurposeImportant behavior
get_cluster_overviewSummarize deployment, versions, and node health.Preserves mixed/dead component evidence without treating dead nodes as active gates.
list_cluster_nodesList FE/BE and relevant component inventory.Sanitized host/state/version evidence.
list_active_tasksInspect active query/load/task progress.Selects unified or legacy views from live evidence.
get_monitoring_metricsRetrieve allowlisted bounded metrics.Metric names, node count, and values are bounded.
get_memory_statsInspect memory trackers and use.Reports source and partial availability.
get_cache_statusInspect file/cache status.Selects advanced or base evidence by patch and live metadata.
get_compaction_statusInspect compaction state.Uses system table or allowlisted HTTP evidence, with explicit fallback.
get_workload_group_statusInspect workload-group definitions and metrics.Requires readable workload-group metadata.
get_compute_group_statusInspect compute groups.Availability depends on deployment and readable metadata.
analyze_resource_growthAnalyze bounded recorded resource history.Requires historical metrics/audit evidence; no speculative forecast.
get_runtime_capabilitiesReturn a sanitized capability snapshot.Exposes bounded reasons/evidence, not credentials or private route internals.

doris_pipeline — ingestion and freshness

ChildPurposeImportant behavior
get_ingestion_statusInspect batch, stream, routine, and insert jobs.Version-aware job views; bounded collections.
diagnose_ingestionDiagnose observed ingestion failures/state.Deterministic rules over returned evidence.
get_materialized_view_statusInspect MV definitions, jobs, tasks, and compute context.Selects available metadata paths and reports partial state.
monitor_data_freshnessReport bounded table freshness evidence.Does not claim freshness without an observable timestamp/source.
analyze_data_dependenciesInfer bounded upstream/downstream dependencies.Audit-derived runtime evidence; not a complete static lineage proof.

doris_search — text, vector, and hybrid retrieval

ChildPurposeImportant behavior
search_dataRun structured text, vector, or hybrid retrieval.Validates target indexes/fields, vector dimensions, filters, top-k, and output fields.
preview_text_analysisPreview Doris tokenization/analyzer output.Input text and output tokens are bounded.
inspect_search_indexesInspect inverted and ANN index metadata.Does not expose storage secrets or unrelated table properties.
diagnose_search_queryExplain and diagnose search execution.Requires a validated structured request and bounded plan evidence.

Caller values remain driver-bound. The domain does not accept raw Doris SEARCH DSL fragments or arbitrary filter SQL through the structured search child.

doris_governance — quality, lineage, audit, and access

ChildPurposeImportant behavior
analyze_columnsAnalyze bounded column statistics and quality evidence.Column count and sampling are bounded; Doris permission remains final.
analyze_table_storageInspect partitions, indexes, and storage shape.Sensitive locations/properties are removed from model-facing output.
get_lineage_capability_statusExplain which lineage path is active and why.Separates native, audit-primary, degraded fallback, and unavailable states.
trace_column_lineageTrace attributable bounded lineage edges.Native provider on eligible routes; conservative audit inference otherwise.
analyze_data_access_patternsSummarize bounded audit access evidence.Raw SQL/client/auth data is sanitized.
get_recent_audit_logsReturn bounded recent audit events.Time window/result count are capped; sensitive fields redacted.
list_udfsInspect visible UDF metadata.Version-aware function family metadata; no function execution.
get_auth_mapping_statusInspect sanitized LDAP/OIDC role mapping readiness.Does not expose bind credentials, rules containing secrets, or raw provider errors.

Native lineage requires both an eligible Doris version and a healthy queryable companion store. Version 4.0.6+ alone does not make it callable.

doris_lakehouse — external and semi-structured data

ChildPurposeImportant behavior
inspect_external_catalogInspect visible external catalog metadata and readiness.Properties and locations are sanitized.
inspect_lakehouse_tableInspect table format, snapshots, partitions, lifecycle, and pushdown evidence.4.1 lifecycle facets are reported separately from base metadata.
inspect_variant_columnInspect Variant type and bounded shape evidence.Sample values and sensitive paths are excluded; advanced 4.1 facets are capability-gated.

doris_semantic — optional semantic consumers

ChildPurposeImportant behavior
list_semantic_modelsList bounded reviewed models from the configured provider.Domain is default-off and requires explicit provider enablement.
get_semantic_model_summaryReturn a bounded summary for one exact model_ref.No prompt-based model guessing.
get_semantic_contextBuild deterministic read-only grounding context.Requires exact model, route-aware mapping, and Doris visibility.
get_semantic_mapping_statusExplain private Doris binding readiness.Reports status/reasons without exposing the private binding manifest.
list_metricflow_modelsList configured MetricFlow model references.Provider is default-off; model selection never uses prompt guessing.
get_metricflow_statusReturn provider/model validation status.Requires one exact model_ref.
list_metricflow_metricsList bounded metrics and optional dimensions.Requires one exact model_ref; supports bounded filtering.
get_metricflow_group_bysReturn valid group-by dimensions for selected metrics.Provider validates the metric set against the exact model.
list_metricflow_saved_queriesList bounded saved-query metadata.Does not execute saved queries.
get_metricflow_dimension_valuesCompile and execute a bounded dimension-value query.Provider compiles Doris SQL; MCP SQL guard and Query runtime execute it.
compile_metricflow_queryCompile a structured MetricFlow request to Doris SQL.Compile-only; returns no query result and does not bypass the SQL guard.
execute_metricflow_queryCompile and execute a bounded MetricFlow request.Execution always returns to DorisQueryRuntime for routing, RBAC, limits, audit, and redaction.

Ossie owns semantic definitions. MetricFlow owns metric semantics and query compilation. The MCP Server is a governed consumer: it does not author either model, does not guess a model, and does not permit a provider to execute Doris SQL outside the MCP Query runtime. See MetricFlow integration.

Reserved and extension surfaces

  • doris_admin is intentionally not registered.
  • Custom providers are explicit extensions and not counted in 8/55.
  • MCP resources and prompts remain separate protocol surfaces; they are not hidden child tools.
  • Pre-1.0 tool names are not callable aliases.

See Capability availability for how each child becomes callable=true or callable=false.