Skip to content

API Reference

datameshops_core.mcp_client.MCPClientManager

MCPClientManager(
    gms_url: str = None,        # Defaults to DATAHUB_GMS_URL env var
    gms_token: str = None,      # Defaults to DATAHUB_GMS_TOKEN env var
    max_retries: int = 3,
    backoff_factor: float = 1.5,
)

Methods

Method Returns Description
execute_graphql(query, variables) Dict Executes GraphQL against GMS with backoff
call_mcp_tool(tool_name, arguments) Dict Routes to appropriate DataHub MCP handler

Supported MCP Tools

search, get_entities, get_lineage, list_schema_fields, get_dataset_queries, add_tags, add_structured_properties, update_description


datameshops_core.graph_traverser.GraphTraverser

GraphTraverser(mcp_client: MCPClientManager)
Method Returns Description
trace_upstream_lineage(urn, max_hops=3) Dict Multi-hop BFS lineage traversal
inspect_schema_fields(urn) List[Dict] Returns all schema fields for entity
get_historical_queries(urn) List[Dict] Returns historic SQL queries
search_catalog(query) List[Dict] Full-text catalog search

datameshops_core.mutation_engine.MutationEngine

MutationEngine(mcp_client: MCPClientManager)
Method Returns Description
apply_remediation_mutations(urn, agent_id, root_cause, sql_fix) Dict Healer atomic mutation sequence
apply_quarantine_mutations(model_urn, agent_id, health_score, leakage_field, drift_detail) Dict Guard quarantine mutation sequence

datameshops_core.batch_mutator.DataHubBatchMutatorSkill

Open-source skill contribution for datahub-project/datahub-skills.

DataHubBatchMutatorSkill(client: DataHubClient)
Method Returns Description
execute_batch_mutation(mutations: List[MutationPayload]) Dict Batch mutation with per-payload error isolation

MutationPayload

@dataclass
class MutationPayload:
    urn: str
    tags_to_add: Optional[List[str]] = None
    tags_to_remove: Optional[List[str]] = None
    structured_properties: Optional[Dict[str, Any]] = None
    markdown_description: Optional[str] = None

datameshops_core.llm_adapter.LLMAdapter

LLMAdapter(
    provider: str = None,   # "openai" | "gemini" | "anthropic" (env: LLM_PROVIDER)
    model: str = None,      # env: LLM_MODEL
)
Method Returns Description
generate_remediation_sql(dataset_urn, schema_fields, historical_queries, error_context) str SQL remediation patch
generate_leakage_audit(model_urn, feature_schemas, upstream_lineage) Dict Leakage & drift audit report