Skip to main content
Glama

Get schema

get_schema
Read-only

Read a saved schema with its properties, annotations and input_contract. Before enrichment, use version='published' for a database-linked schema; default 'working' is for editing. identifying_keys guide entity naming; preserve values belong to the caller and are required; each supplied array item must carry its array_item_keys. Never invent caller-owned values. The response includes version, publish_state and schema_url. A requested published contract that does not exist returns not_found. For a small edit prefer get_schema_part. No LLM call. Contract details: enricher://docs/schema-reference.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
versionNo'working' (default) — the editable copy updates/edits apply to; 'published' — the contract enrichment and database sync use (only meaningful for schemas linked to a database sync).working
schema_idYesUUID of the saved schema.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the read-only nature is covered. The description adds value by stating 'No LLM call', explaining the not_found behavior for a missing published contract, and describing response fields (version, publish_state, schema_url). It also discloses the semantics of identifying_keys and preserve values, which goes beyond the annotation baseline.

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?

The description is longer than average but every sentence carries substantive content: purpose, version selection, entity-naming guidance, error behavior, and a pointer to documentation. It is front-loaded with the core purpose and ends with a contract reference. Some redundancy with the schema exists, but it is not 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?

With an output schema present, the return format is already documented. The description covers version selection, error cases (not_found), the distinction from get_schema_part, and the special semantics of identifying_keys and preserve values. No critical information for a correct call is missing; the agent knows exactly when to call it and what to expect.

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 description coverage is 100%, so the baseline is 3. The description enhances parameter understanding by clarifying the version semantics (working vs published and their respective use cases) and notes that schema_id is a UUID. It adds practical guidance on how to choose the version, which the schema only partially covers.

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?

The description opens with a precise verb-resource pair: 'Read a saved schema' and enumerates exactly what is read (properties, annotations, input_contract). It also implicitly distinguishes itself from get_schema_part by saying 'For a small edit prefer get_schema_part' and from list_schemas by focusing on a single saved schema. This makes the tool's purpose unambiguous.

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?

Explicit usage guidance is given: use version='published' before enrichment for database-linked schemas, default 'working' for editing, and prefer get_schema_part for small edits. These conditions directly tell an agent when to choose this tool over alternatives, satisfying the 'when/when-not' requirement.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.