Servidor MCP

governance-platform

ai.geodesiclabs/governance-platform
Infraestructura MCP y de agentes Seguridad Público y accesible MCP 2025-11-25

Qué hace este MCP

Evaluates AI agent actions before execution with deterministic pass, fail, or review verdicts and replayable evidence.

account_status
This account's plan, key usage, Blueprint counts, and the deployed platform build fingerprint (version, build, deployed).
Solo lectura Idempotente
Esquema de entrada
{'type': 'object', 'title': 'account_statusArguments', 'required': ['api_key'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}}}
analyze_anomaly
Explain whether a record fits the usual pattern for records like it, and which fields stand out. No Blueprint required.
Solo lectura Idempotente
Esquema de entrada
{'type': 'object', 'title': 'analyze_anomalyArguments', 'required': ['api_key', 'structured_data'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'blueprint': {'type': 'string', 'title': 'Blueprint', 'default': 'default', 'description': 'Discovery namespace used by discover_patterns'}, 'structured_data': {'type': 'object', 'title': 'Structured Data', 'description': "The document's extracted fields as key/value pairs. Keys are open by design - your Blueprint's rules define what is checked", 'additionalProperties': True}}}
approve_rule
Promote a rule discovered by discover_patterns into Blueprint-ready form.
Idempotente
Esquema de entrada
{'type': 'object', 'title': 'approve_ruleArguments', 'required': ['api_key', 'rule_id'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'rule_id': {'type': 'string', 'title': 'Rule Id', 'description': 'Discovered rule ID from discover_patterns'}, 'blueprint': {'type': 'string', 'title': 'Blueprint', 'default': 'default', 'description': 'Blueprint name (workflow_name) to use'}}}
authorize_execution
Go/no-go for a real-world action (payment, filing, API write): runs full validation, then the Blueprint's execution gate. authorized=true only on PASS; REVIEW means do not proceed automatically. Different from validate: validate asks is this data correct, authorize_execution asks should this action happen.
Idempotente
Esquema de entrada
{'type': 'object', 'title': 'authorize_executionArguments', 'required': ['api_key', 'structured_data', 'blueprint'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'blueprint': {'type': 'string', 'title': 'Blueprint', 'description': 'Blueprint name (workflow_name) to use'}, 'structured_data': {'type': 'object', 'title': 'Structured Data', 'description': "The document's extracted fields as key/value pairs. Keys are open by design - your Blueprint's rules define what is checked", 'additionalProperties': True}}}
check_blueprint_health
Static pre-deploy analysis of a Blueprint's rule set. Returns a health verdict - healthy, acceptable, fragile, rigid, split, brittle_islands, or unsatisfiable - with advice, including joint conflicts pairwise checks miss.
Solo lectura Idempotente
Esquema de entrada
{'type': 'object', 'title': 'check_blueprint_healthArguments', 'required': ['api_key'], 'properties': {'config': {'type': 'object', 'title': 'Config', 'default': None, 'description': "Raw blueprint config with derivation_rules and formal_constraints (used when 'blueprint' is not given)", 'additionalProperties': True}, 'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'blueprint': {'type': 'string', 'title': 'Blueprint', 'default': '', 'description': 'Blueprint name (workflow_name) to use'}}}
check_drift
Check whether recent submissions still match the established pattern for this Blueprint. Returns a stability verdict and observation count.
Esquema de entrada
{'type': 'object', 'title': 'check_driftArguments', 'required': ['api_key', 'structured_data'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'blueprint': {'type': 'string', 'title': 'Blueprint', 'default': 'default', 'description': 'Blueprint name (workflow_name) to use'}, 'structured_data': {'type': 'object', 'title': 'Structured Data', 'description': "The document's extracted fields as key/value pairs. Keys are open by design - your Blueprint's rules define what is checked", 'additionalProperties': True}}}
check_realization
Structural realization analysis of a payload against the Blueprint's reference configuration (requires a 'realization' block; otherwise status=skipped). Diagnostics-tier tool; prefer validate or analyze_anomaly for standard checks.
Esquema de entrada
{'type': 'object', 'title': 'check_realizationArguments', 'required': ['api_key', 'structured_data'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'blueprint': {'type': 'string', 'title': 'Blueprint', 'default': 'default', 'description': 'Blueprint name (workflow_name) to use'}, 'structured_data': {'type': 'object', 'title': 'Structured Data', 'description': "The document's extracted fields as key/value pairs. Keys are open by design - your Blueprint's rules define what is checked", 'additionalProperties': True}}}
compare_semantic_equivalence
Compare two payloads under the dual-hash design: content_hash is content_hash normalizes field order and numeric formatting. Semantic comparison preserves field roles; renaming requires an explicit bijection. With supplied rules, scalar types and whitespace remain significant. Structural similarity alone does not establish decision equivalence.
Solo lectura Idempotente
Esquema de entrada
{'type': 'object', 'title': 'compare_semantic_equivalenceArguments', 'required': ['api_key', 'payload_a', 'payload_b'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'rules_a': {'type': 'array', 'items': {}, 'title': 'Rules A', 'default': None, 'description': 'Derivation rules for A'}, 'rules_b': {'type': 'array', 'items': {}, 'title': 'Rules B', 'default': None, 'description': 'Derivation rules for B'}, 'payload_a': {'type': 'object', 'title': 'Payload A', 'description': 'First structured payload (arbitrary JSON object)', 'additionalProperties': True}, 'payload_b': {'type': 'object', 'title': 'Payload B', 'description': 'Second structured payload to compare against payload_a', 'additionalProperties': True}, 'constraints_a': {'type': 'array', 'items': {}, 'title': 'Constraints A', 'default': None, 'description': 'Formal constraints for A'}, 'constraints_b': {'type': 'array', 'items': {}, 'title': 'Constraints B', 'default': None, 'description': 'Formal constraints for B'}, 'field_mapping': {'type': 'object', 'title': 'Field Mapping', 'default': None, 'description': 'Explicit one-to-one field renaming from A to B', 'additionalProperties': True}}}
counterfactual
Run the same data under two rule sets and compare which future states remain valid - what-if analysis for rule changes.
Solo lectura Idempotente
Esquema de entrada
{'type': 'object', 'title': 'counterfactualArguments', 'required': ['api_key', 'structured_data'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'rules_b': {'type': 'array', 'items': {}, 'title': 'Rules B', 'default': None, 'description': 'Alternative derivation rules (rule set B)'}, 'blueprint': {'type': 'string', 'title': 'Blueprint', 'default': 'default', 'description': 'Blueprint name (workflow_name) to use'}, 'constraints_b': {'type': 'array', 'items': {}, 'title': 'Constraints B', 'default': None, 'description': 'Alternative constraints (rule set B)'}, 'structured_data': {'type': 'object', 'title': 'Structured Data', 'description': "The document's extracted fields as key/value pairs. Keys are open by design - your Blueprint's rules define what is checked", 'additionalProperties': True}}}
create_blueprint
Create a Blueprint - the governance contract validation runs against. A Blueprint defines what correct means for your data: fields, the math that must hold between them, and acceptable ranges. Start from load_rule_pack or discover_patterns if you have no rules yet; invoke the blueprint_guide prompt for the full rule/constraint reference. Returns the new Blueprint's API key.
Esquema de entrada
{'type': 'object', 'title': 'create_blueprintArguments', 'required': ['api_key', 'customer_name', 'workflow_name'], 'properties': {'mode': {'enum': ['observe', 'enforce'], 'type': 'string', 'title': 'Mode', 'default': 'observe', 'description': "observe: platform checks the agent's work; enforce: platform computes derived fields itself"}, 'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'require_math': {'type': 'boolean', 'title': 'Require Math', 'default': True, 'description': 'Validate mathematical relationships'}, 'customer_name': {'type': 'string', 'title': 'Customer Name', 'description': 'Organization or project name (also used for storage folder naming)'}, 'workflow_name': {'type': 'string', 'title': 'Workflow Name', 'description': "Unique Blueprint identifier; the value passed as 'blueprint' in validate"}, 'derived_fields': {'type': 'array', 'items': {}, 'title': 'Derived Fields', 'default': None, 'description': "Field names the platform computes from other fields, e.g. ['subtotal','total']"}, 'semantic_checks': {'type': 'array', 'items': {}, 'title': 'Semantic Checks', 'default': None, 'description': 'Domain-specific semantic check objects'}, 'derivation_rules': {'type': 'array', 'items': {}, 'title': 'Derivation Rules', 'default': None, 'description': "Math rules as objects. Types: add, subtract, multiply, divide, round, copy, sum (multi-operand), items_multiply, items_sum. Each needs 'type' plus its fields; see the blueprint_guide prompt"}, 'extracted_fields': {'type': 'array', 'items': {}, 'title': 'Extracted Fields', 'default': None, 'description': "Field names the agent extracts from source data, e.g. ['vendor','qty','unit_cost']"}, 'require_coherence': {'type': 'boolean', 'title': 'Require Coherence', 'default': True, 'description': 'Check cross-field plausibility'}, 'formal_constraints': {'type': 'array', 'items': {}, 'title': 'Formal Constraints', 'default': None, 'description': 'Constraint objects. Types incl. magnitude_anchor {field,min,max}, relative_anchor {field,reference_field,ratio_min,ratio_max}, max_action_threshold {field,threshold,on_violation}, required_fields {fields}, equals, range, in_set, regex_match, items_magnitude_anchor; see the blueprint_guide prompt'}, 'require_provenance': {'type': 'boolean', 'title': 'Require Provenance', 'default': False, 'description': 'Require extraction source locations for fields'}, 'require_consistency': {'type': 'boolean', 'title': 'Require Consistency', 'default': True, 'description': 'Check internal field consistency'}, 'enable_drift_tracking': {'type': 'boolean', 'title': 'Enable Drift Tracking', 'default': False, 'description': 'Track pattern stability across batches'}, 'require_high_assurance': {'type': 'boolean', 'title': 'Require High Assurance', 'default': False, 'description': 'Strictest mode: every check must pass'}, 'enable_anomaly_detection': {'type': 'boolean', 'title': 'Enable Anomaly Detection', 'default': False, 'description': 'Flag records that break no rules but do not fit the reference pattern'}}}
create_chain
Create a multi-agent sequential chain: stages validate in order against one Blueprint, repairs propagate forward, TTL bounds the run. Siblings: submit_chain_stage advances the chain; handoff_audit verifies a transition between stages. Returns chain_id.
Esquema de entrada
{'type': 'object', 'title': 'create_chainArguments', 'required': ['api_key', 'blueprint', 'stages'], 'properties': {'ttl': {'type': 'integer', 'title': 'Ttl', 'default': 3600, 'description': 'Chain timeout in seconds; stages cannot advance after expiry'}, 'stages': {'type': 'array', 'items': {}, 'title': 'Stages', 'description': "Stage definitions, e.g. [{'stage_name':'extract','agent_name':'PDF Agent'}]; minimum 2"}, 'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'blueprint': {'type': 'string', 'title': 'Blueprint', 'description': 'Blueprint governing all stages of the chain'}}}
decompose_failure
Split the error between original and corrected values into direct rule violations, boundary violations, and systemic structural error, with per-field contributions. Use with a known-correct version to diff against; use analyze_anomaly when you only have the suspicious payload. Diagnostics-tier tool.
Solo lectura Idempotente
Esquema de entrada
{'type': 'object', 'title': 'decompose_failureArguments', 'required': ['api_key', 'original_values', 'corrected_values'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'blueprint': {'type': 'string', 'title': 'Blueprint', 'default': None, 'description': 'Load rules from this Blueprint instead of passing them inline'}, 'original_values': {'type': 'object', 'title': 'Original Values', 'description': 'Original numeric field values as {field: number}', 'additionalProperties': True}, 'corrected_values': {'type': 'object', 'title': 'Corrected Values', 'description': 'Corrected/expected numeric field values as {field: number}', 'additionalProperties': True}, 'derivation_rules': {'type': 'array', 'items': {}, 'title': 'Derivation Rules', 'default': None, 'description': "Math rules as objects. Types: add, subtract, multiply, divide, round, copy, sum (multi-operand), items_multiply, items_sum. Each needs 'type' plus its fields; see the blueprint_guide prompt"}, 'formal_constraints': {'type': 'array', 'items': {}, 'title': 'Formal Constraints', 'default': None, 'description': 'Constraint objects. Types incl. magnitude_anchor {field,min,max}, relative_anchor {field,reference_field,ratio_min,ratio_max}, max_action_threshold {field,threshold,on_violation}, required_fields {fields}, equals, range, in_set, regex_match, items_magnitude_anchor; see the blueprint_guide prompt'}}}
delete_api_key
Permanently delete one of the caller's API keys. DESTRUCTIVE — agents using the deleted key will receive auth errors immediately. The Blueprint a key was tied to (if any) is NOT affected; only the credential is revoked. To delete a Blueprint and all its keys, use delete_blueprint. The target key can be specified two ways: - As the full key string (gai_...). - As a key_id (SHA-256 hash from list_api_keys).
Destructivo Idempotente
Esquema de entrada
{'type': 'object', 'title': 'delete_api_keyArguments', 'required': ['api_key', 'key_to_delete'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'confirm': {'type': 'boolean', 'title': 'Confirm', 'default': False, 'description': 'Must be true to confirm this irreversible action'}, 'key_to_delete': {'type': 'string', 'title': 'Key To Delete', 'description': 'The gai_ key to delete'}}}
delete_blueprint
Permanently delete a Blueprint and revoke its API keys. Irreversible; requires confirm=true. Account-level keys are unaffected.
Destructivo Idempotente
Esquema de entrada
{'type': 'object', 'title': 'delete_blueprintArguments', 'required': ['api_key', 'workflow_name'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'confirm': {'type': 'boolean', 'title': 'Confirm', 'default': False, 'description': 'Must be true to confirm this irreversible action'}, 'workflow_name': {'type': 'string', 'title': 'Workflow Name', 'description': 'Blueprint to delete; its API keys are revoked'}}}
discover_patterns
Learn candidate validation rules and structural document types from a batch of your records, deterministically - no Blueprint required. Promote results with approve_rule. Source data is not stored.
Esquema de entrada
{'type': 'object', 'title': 'discover_patternsArguments', 'required': ['api_key', 'documents'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'blueprint': {'type': 'string', 'title': 'Blueprint', 'default': 'default', 'description': 'Blueprint name (workflow_name) to use'}, 'documents': {'type': 'array', 'items': {}, 'title': 'Documents', 'description': 'List of structured records (objects) to analyze'}}}
forecast
Deterministic forward reasoning: from the current data state, generate and rank the valid next states reachable under the Blueprint's rules.
Solo lectura Idempotente
Esquema de entrada
{'type': 'object', 'title': 'forecastArguments', 'required': ['api_key', 'structured_data'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'rank_by': {'enum': ['drift', 'confidence', 'shortest', 'risk'], 'type': 'string', 'title': 'Rank By', 'default': 'drift', 'description': 'Ranking criterion for returned paths'}, 'blueprint': {'type': 'string', 'title': 'Blueprint', 'default': 'default', 'description': 'Blueprint name (workflow_name) to use'}, 'max_depth': {'type': 'integer', 'title': 'Max Depth', 'default': 3, 'description': 'Search depth, 1-10'}, 'max_branches': {'type': 'integer', 'title': 'Max Branches', 'default': 5, 'description': 'Branches per step, 1-10'}, 'structured_data': {'type': 'object', 'title': 'Structured Data', 'description': "The document's extracted fields as key/value pairs. Keys are open by design - your Blueprint's rules define what is checked", 'additionalProperties': True}}}
geometric_confidence
Summarize an already-computed state_vector into a confidence level (high/medium/low) with a recommendation. Post-hoc digest - use analyze_anomaly or check_drift for fresh analysis of raw data.
Solo lectura Idempotente
Esquema de entrada
{'type': 'object', 'title': 'geometric_confidenceArguments', 'required': ['api_key', 'state_vector'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'state_vector': {'type': 'object', 'title': 'State Vector', 'description': 'state_vector object from a prior validate or get_execution_trace result', 'additionalProperties': True}}}
get_execution_trace
Run validation and return the per-node execution trace (node names, deterministic flags, timing) plus the verdict and determinism hash. Use validate for normal operation; this is for debugging and audit preparation.
Idempotente
Esquema de entrada
{'type': 'object', 'title': 'get_execution_traceArguments', 'required': ['api_key', 'structured_data'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'blueprint': {'type': 'string', 'title': 'Blueprint', 'default': 'default', 'description': 'Blueprint name (workflow_name) to use'}, 'structured_data': {'type': 'object', 'title': 'Structured Data', 'description': "The document's extracted fields as key/value pairs. Keys are open by design - your Blueprint's rules define what is checked", 'additionalProperties': True}}}
get_inference_trace
Retrieve the durable audit trail for a governed generation: every recorded decision and its reasons.
Solo lectura Idempotente
Esquema de entrada
{'type': 'object', 'title': 'get_inference_traceArguments', 'required': ['api_key', 'inference_id'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'blueprint': {'type': 'string', 'title': 'Blueprint', 'default': 'default', 'description': 'Blueprint namespace used when recording the trace'}, 'inference_id': {'type': 'string', 'title': 'Inference Id', 'description': 'Caller-chosen ID grouping the steps of one generation'}, 'blueprint_version': {'type': 'string', 'title': 'Blueprint Version', 'default': '', 'description': 'Optional historical blueprint_version hash returned by govern_inference'}}}
govern_inference
Quality-govern an in-progress AI generation step BEFORE its output is used (complements validate, which checks finished documents). Returns an action - STOP, CONTINUE, REPAIR_REGION, REUSE_MOTIF, REVIEW, ESCALATE - with a plain-language explanation. Structural scores do not establish task correctness. Check safe_to_finalize and acceptance coverage. Persistence success is reported; read traces in the same Blueprint namespace.
Esquema de entrada
{'type': 'object', 'title': 'govern_inferenceArguments', 'required': ['api_key', 'task_type', 'payload', 'inference_id'], 'properties': {'source': {'type': 'string', 'title': 'Source', 'default': 'mcp', 'description': 'Free-form caller label recorded for audit'}, 'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'payload': {'type': 'object', 'title': 'Payload', 'description': 'Task-type payload: generative_text {text,...}; retrieval {query,candidates}; generic {features}', 'additionalProperties': True}, 'blueprint': {'type': 'string', 'title': 'Blueprint', 'default': 'default', 'description': 'Owned Blueprint namespace for the trace'}, 'task_type': {'enum': ['generative_text', 'retrieval', 'generic'], 'type': 'string', 'title': 'Task Type', 'description': 'Kind of generation step being governed'}, 'step_index': {'type': 'integer', 'title': 'Step Index', 'default': 0, 'description': 'Step number within this generation (0-based)'}, 'constraints': {'type': 'object', 'title': 'Constraints', 'default': None, 'description': 'Optional governance constraint config object', 'additionalProperties': True}, 'inference_id': {'type': 'string', 'title': 'Inference Id', 'description': 'Caller-chosen ID grouping the steps of one generation'}}}
handoff_audit
Audit a handoff between two chain stages: a context capsule of verified facts from the prior stage, and (if proposed_data is given) a compatibility verdict that catches fields mutated in transit. Siblings: create_chain, submit_chain_stage.
Solo lectura Idempotente
Esquema de entrada
{'type': 'object', 'title': 'handoff_auditArguments', 'required': ['api_key', 'chain_id', 'from_stage', 'to_stage'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'chain_id': {'type': 'string', 'title': 'Chain Id', 'description': 'Chain identifier returned by create_chain'}, 'to_stage': {'type': 'string', 'title': 'To Stage', 'description': 'Stage about to start (agent B)'}, 'from_stage': {'type': 'string', 'title': 'From Stage', 'description': 'Completed stage name (agent A)'}, 'proposed_data': {'type': 'object', 'title': 'Proposed Data', 'default': None, 'description': "Data agent B intends to submit; checked for mutation against agent A's verified fields", 'additionalProperties': True}}}
list_api_keys
List this account's API keys (masked) with their Blueprint bindings.
Solo lectura Idempotente
Esquema de entrada
{'type': 'object', 'title': 'list_api_keysArguments', 'required': ['api_key'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}}}
list_blueprints
List the Blueprints on this account with field/rule/constraint counts and mode. Use the returned workflow_name as 'blueprint' in validate.
Solo lectura Idempotente
Esquema de entrada
{'type': 'object', 'title': 'list_blueprintsArguments', 'required': ['api_key'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}}}
load_rule_pack
Load a prebuilt Blueprint template (invoices, timecards, legal, POs, claims). Call without pack_id to list packs; then create_blueprint to save a customized copy.
Solo lectura Idempotente
Esquema de entrada
{'type': 'object', 'title': 'load_rule_packArguments', 'required': ['api_key'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'pack_id': {'type': 'string', 'title': 'Pack Id', 'default': None, 'description': 'Rule pack ID; omit to list available packs'}}}
profile_blueprint_robustness
Sweep the Blueprint's numeric constraint bounds and report verdict stability: the stable band, the scales where the verdict first flips, and advice. Use before deploying bound changes.
Solo lectura Idempotente
Esquema de entrada
{'type': 'object', 'title': 'profile_blueprint_robustnessArguments', 'required': ['api_key'], 'properties': {'config': {'type': 'object', 'title': 'Config', 'default': None, 'description': "Raw blueprint config to profile (used when 'blueprint' is not given)", 'additionalProperties': True}, 'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'blueprint': {'type': 'string', 'title': 'Blueprint', 'default': '', 'description': 'Blueprint name (workflow_name) to use'}}}
recent_inference_decisions
Recent generation-governance decisions in this owner's Blueprint version.
Solo lectura Idempotente
Esquema de entrada
{'type': 'object', 'title': 'recent_inference_decisionsArguments', 'required': ['api_key'], 'properties': {'limit': {'type': 'integer', 'title': 'Limit', 'default': 25, 'description': 'Maximum rows to return'}, 'action': {'type': 'string', 'title': 'Action', 'default': '', 'description': 'Optional action filter (STOP, CONTINUE, REVIEW, ...)'}, 'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'blueprint': {'type': 'string', 'title': 'Blueprint', 'default': 'default', 'description': 'Blueprint namespace used when recording the trace'}, 'blueprint_version': {'type': 'string', 'title': 'Blueprint Version', 'default': '', 'description': 'Optional historical blueprint_version hash returned by govern_inference'}}}
reject_rule
Reject a discovered candidate rule so it will not be promoted into a Blueprint. Pair with approve_rule after discover_patterns.
Idempotente
Esquema de entrada
{'type': 'object', 'title': 'reject_ruleArguments', 'required': ['api_key', 'rule_id'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'rule_id': {'type': 'string', 'title': 'Rule Id', 'description': 'Discovered rule ID from discover_patterns'}, 'blueprint': {'type': 'string', 'title': 'Blueprint', 'default': 'default', 'description': 'Blueprint name (workflow_name) to use'}}}
repair
One-shot repair: return corrected values that would make failing data valid under the Blueprint. Use repair_path to see the steps instead.
Solo lectura Idempotente
Esquema de entrada
{'type': 'object', 'title': 'repairArguments', 'required': ['api_key', 'structured_data'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'blueprint': {'type': 'string', 'title': 'Blueprint', 'default': None, 'description': 'Blueprint name (workflow_name) to use'}, 'structured_data': {'type': 'object', 'title': 'Structured Data', 'description': "The document's extracted fields as key/value pairs. Keys are open by design - your Blueprint's rules define what is checked", 'additionalProperties': True}, 'derivation_rules': {'type': 'array', 'items': {}, 'title': 'Derivation Rules', 'default': None, 'description': "Math rules as objects. Types: add, subtract, multiply, divide, round, copy, sum (multi-operand), items_multiply, items_sum. Each needs 'type' plus its fields; see the blueprint_guide prompt"}, 'formal_constraints': {'type': 'array', 'items': {}, 'title': 'Formal Constraints', 'default': None, 'description': 'Constraint objects. Types incl. magnitude_anchor {field,min,max}, relative_anchor {field,reference_field,ratio_min,ratio_max}, max_action_threshold {field,threshold,on_violation}, required_fields {fields}, equals, range, in_set, regex_match, items_magnitude_anchor; see the blueprint_guide prompt'}}}
repair_path
Find the shortest sequence of field changes taking invalid data to a valid state, as an ordered path of intermediate states. Different from repair (one-shot nearest fix): use repair_path to explain or audit the fix, or compare alternative repairs.
Solo lectura Idempotente
Esquema de entrada
{'type': 'object', 'title': 'repair_pathArguments', 'required': ['api_key', 'structured_data'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'rank_by': {'enum': ['shortest', 'drift', 'confidence', 'risk'], 'type': 'string', 'title': 'Rank By', 'default': 'shortest', 'description': 'Ranking criterion for returned paths'}, 'blueprint': {'type': 'string', 'title': 'Blueprint', 'default': 'default', 'description': 'Blueprint name (workflow_name) to use'}, 'max_depth': {'type': 'integer', 'title': 'Max Depth', 'default': 4, 'description': 'Search depth, 1-10'}, 'structured_data': {'type': 'object', 'title': 'Structured Data', 'description': "The document's extracted fields as key/value pairs. Keys are open by design - your Blueprint's rules define what is checked", 'additionalProperties': True}}}
rotate_api_key
Replace an API key with a fresh one. The old key stops working immediately; the new key inherits its bindings.
Destructivo
Esquema de entrada
{'type': 'object', 'title': 'rotate_api_keyArguments', 'required': ['api_key', 'key_to_rotate'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'key_to_rotate': {'type': 'string', 'title': 'Key To Rotate', 'description': 'The gai_ key to rotate; it stops working immediately'}}}
structural_types
Retrieve the document categories a discover_patterns session identified (counts, distinguishing fields, domain hints). Read-only; returns status=no_session if discovery has not run for this namespace.
Solo lectura Idempotente
Esquema de entrada
{'type': 'object', 'title': 'structural_typesArguments', 'required': ['api_key'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'blueprint': {'type': 'string', 'title': 'Blueprint', 'default': 'default', 'description': 'Blueprint name (workflow_name) to use'}}}
submit_chain_stage
Submit data for the chain's current stage; the platform validates it and advances the chain if it passes. Response includes next-stage info and accumulated repairs.
Esquema de entrada
{'type': 'object', 'title': 'submit_chain_stageArguments', 'required': ['api_key', 'chain_id', 'stage', 'structured_data'], 'properties': {'stage': {'type': 'string', 'title': 'Stage', 'description': "Stage name to submit for (must be the chain's current stage)"}, 'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'chain_id': {'type': 'string', 'title': 'Chain Id', 'description': 'Chain identifier returned by create_chain'}, 'structured_data': {'type': 'object', 'title': 'Structured Data', 'description': "The document's extracted fields as key/value pairs. Keys are open by design - your Blueprint's rules define what is checked", 'additionalProperties': True}}}
update_blueprint
Update an existing Blueprint in place. Only passed fields change; pass [] to clear a list. workflow_name cannot be renamed and existing API keys keep working. Different from create_blueprint: modifies an existing Blueprint, mints no new key.
Idempotente
Esquema de entrada
{'type': 'object', 'title': 'update_blueprintArguments', 'required': ['api_key', 'workflow_name'], 'properties': {'mode': {'type': 'string', 'title': 'Mode', 'default': None, 'description': 'New mode: observe or enforce; omit to keep current'}, 'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'require_math': {'type': 'boolean', 'title': 'Require Math', 'default': None, 'description': 'Validate mathematical relationships'}, 'customer_name': {'type': 'string', 'title': 'Customer Name', 'default': None, 'description': 'Organization or project name (also used for storage folder naming)'}, 'workflow_name': {'type': 'string', 'title': 'Workflow Name', 'description': "Unique Blueprint identifier; the value passed as 'blueprint' in validate"}, 'derived_fields': {'type': 'array', 'items': {}, 'title': 'Derived Fields', 'default': None, 'description': "Field names the platform computes from other fields, e.g. ['subtotal','total']"}, 'semantic_checks': {'type': 'array', 'items': {}, 'title': 'Semantic Checks', 'default': None, 'description': 'Domain-specific semantic check objects'}, 'derivation_rules': {'type': 'array', 'items': {}, 'title': 'Derivation Rules', 'default': None, 'description': "Math rules as objects. Types: add, subtract, multiply, divide, round, copy, sum (multi-operand), items_multiply, items_sum. Each needs 'type' plus its fields; see the blueprint_guide prompt"}, 'extracted_fields': {'type': 'array', 'items': {}, 'title': 'Extracted Fields', 'default': None, 'description': "Field names the agent extracts from source data, e.g. ['vendor','qty','unit_cost']"}, 'require_coherence': {'type': 'boolean', 'title': 'Require Coherence', 'default': None, 'description': 'Check cross-field plausibility'}, 'formal_constraints': {'type': 'array', 'items': {}, 'title': 'Formal Constraints', 'default': None, 'description': 'Constraint objects. Types incl. magnitude_anchor {field,min,max}, relative_anchor {field,reference_field,ratio_min,ratio_max}, max_action_threshold {field,threshold,on_violation}, required_fields {fields}, equals, range, in_set, regex_match, items_magnitude_anchor; see the blueprint_guide prompt'}, 'require_provenance': {'type': 'boolean', 'title': 'Require Provenance', 'default': None, 'description': 'Require extraction source locations for fields'}, 'require_consistency': {'type': 'boolean', 'title': 'Require Consistency', 'default': None, 'description': 'Check internal field consistency'}, 'enable_drift_tracking': {'type': 'boolean', 'title': 'Enable Drift Tracking', 'default': None, 'description': 'Track pattern stability across batches'}, 'require_high_assurance': {'type': 'boolean', 'title': 'Require High Assurance', 'default': None, 'description': 'Strictest mode: every check must pass'}, 'enable_anomaly_detection': {'type': 'boolean', 'title': 'Enable Anomaly Detection', 'default': None, 'description': 'Flag records that break no rules but do not fit the reference pattern'}}}
validate
Validate structured data against a Blueprint's rules BEFORE the result is used. Returns PASS, FAIL, or REVIEW with plain-language findings, repair suggestions, a determinism hash, and a re-verifiable certificate. Same input + same rules = same verdict, every time.
Esquema de entrada
{'type': 'object', 'title': 'validateArguments', 'required': ['api_key', 'structured_data'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'blueprint': {'type': 'string', 'title': 'Blueprint', 'default': 'default', 'description': 'Blueprint name (workflow_name) to use'}, 'structured_data': {'type': 'object', 'title': 'Structured Data', 'description': "The document's extracted fields as key/value pairs. Keys are open by design - your Blueprint's rules define what is checked", 'additionalProperties': True}}}
validate_repair
Validate structured data against a Blueprint and, when it fails, include repair suggestions (corrected values with the rule each fix is based on) in the same call. Same verdicts as validate: PASS, FAIL, or REVIEW, with reasons and proof.
Esquema de entrada
{'type': 'object', 'title': 'validate_repairArguments', 'required': ['api_key', 'structured_data'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'blueprint': {'type': 'string', 'title': 'Blueprint', 'default': 'default', 'description': 'Blueprint name (workflow_name) to use'}, 'structured_data': {'type': 'object', 'title': 'Structured Data', 'description': "The document's extracted fields as key/value pairs. Keys are open by design - your Blueprint's rules define what is checked", 'additionalProperties': True}}}
verify_certificate
Independently re-verify a validation certificate. Integrity mode checks the hash chain; full mode (certificate + original data) recomputes every attested rule from scratch - trust nothing, recheck everything.
Solo lectura Idempotente
Esquema de entrada
{'type': 'object', 'title': 'verify_certificateArguments', 'required': ['api_key', 'certificate'], 'properties': {'data': {'type': 'object', 'title': 'Data', 'default': None, 'description': 'Original payload for full re-verification; omit for integrity-only mode', 'additionalProperties': True}, 'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'certificate': {'type': 'object', 'title': 'Certificate', 'description': 'The certificate object from a prior validation response', 'additionalProperties': True}, 'derivation_rules': {'type': 'array', 'items': {}, 'title': 'Derivation Rules', 'default': None, 'description': 'Rule list for independent attestation recomputation (optional)'}, 'formal_constraints': {'type': 'array', 'items': {}, 'title': 'Formal Constraints', 'default': None, 'description': 'Optional constraints to match against the committed bundle'}}}
verify_replay
Check replay commitment integrity and compare recorded execution components. Version 4 includes reference context and the final result/status. A match compares commitments; this tool does not rerun the workflow or reconstruct historical reference populations, and does not prove factual correctness.
Solo lectura Idempotente
Esquema de entrada
{'type': 'object', 'title': 'verify_replayArguments', 'required': ['api_key', 'contract_a', 'contract_b'], 'properties': {'api_key': {'type': 'string', 'title': 'Api Key', 'description': 'GeodesicAI API key (gai_...)'}, 'contract_a': {'type': 'object', 'title': 'Contract A', 'description': 'replay_contract object from one execution', 'additionalProperties': True}, 'contract_b': {'type': 'object', 'title': 'Contract B', 'description': 'replay_contract object to compare against contract_a', 'additionalProperties': True}}}
Añadido
delete_api_key
17 de September de 2026 a las 07:56
Añadido
rotate_api_key
17 de September de 2026 a las 07:56
Añadido
list_api_keys
17 de September de 2026 a las 07:56
Añadido
update_blueprint
17 de September de 2026 a las 07:56
Añadido
delete_blueprint
17 de September de 2026 a las 07:56
Añadido
account_status
17 de September de 2026 a las 07:56
Añadido
verify_replay
17 de September de 2026 a las 07:56
Añadido
get_execution_trace
17 de September de 2026 a las 07:56
Añadido
load_rule_pack
17 de September de 2026 a las 07:56
Añadido
authorize_execution
17 de September de 2026 a las 07:56
Añadido
check_drift
17 de September de 2026 a las 07:56
Añadido
check_realization
17 de September de 2026 a las 07:56
Añadido
geometric_confidence
17 de September de 2026 a las 07:56
Añadido
decompose_failure
17 de September de 2026 a las 07:56
Añadido
structural_types
17 de September de 2026 a las 07:56
Añadido
reject_rule
17 de September de 2026 a las 07:56
Añadido
approve_rule
17 de September de 2026 a las 07:56
Añadido
handoff_audit
17 de September de 2026 a las 07:56
Añadido
submit_chain_stage
17 de September de 2026 a las 07:56
Añadido
create_chain
17 de September de 2026 a las 07:56
Añadido
analyze_anomaly
17 de September de 2026 a las 07:56
Añadido
counterfactual
17 de September de 2026 a las 07:56
Añadido
repair_path
17 de September de 2026 a las 07:56
Añadido
discover_patterns
17 de September de 2026 a las 07:56
Añadido
forecast
17 de September de 2026 a las 07:56
Añadido
profile_blueprint_robustness
17 de September de 2026 a las 07:56
Añadido
verify_certificate
17 de September de 2026 a las 07:56
Añadido
recent_inference_decisions
17 de September de 2026 a las 07:56
Añadido
get_inference_trace
17 de September de 2026 a las 07:56
Añadido
govern_inference
17 de September de 2026 a las 07:56