Skip to main content
Glama
letoribo

mcp-graphql-enhanced

introspect-schema

Retrieve GraphQL schema details or system manifest. Provide specific type names to get full SDL definitions, or omit them for a high-level federated overview.

Instructions

Retrieve GraphQL schema details or system manifest. READ-ONLY: Non-destructive metadata discovery. Usage: 1. If 'typeNames' is provided: Returns the full SDL (Schema Definition Language) for the requested types, including fields and relations. 2. If 'typeNames' is omitted: Returns a Federated Manifest—a high-level summary of connected nodes, their capabilities, and available domain entities (not the full schema). Use this to navigate the federated graph topology before executing queries.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
headersNoJSON stringified object of extra HTTP headers for the introspection request (e.g. '{"Authorization": "Bearer token"}').
endpointNoOptional target GraphQL HTTP/HTTPS URL to dynamically switch endpoint before execution.
typeDepthNoDepth of nested fields to retrieve (default: 2)
typeNamesNoList of specific GraphQL type names to introspect. If provided, returns the detailed SDL definitions for these types. If omitted, returns a system-wide Federated Manifest overview.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv4.15.2
    • addedInput schema / properties / endpoint
      Added value: +{
      +  "description": "Optional target GraphQL HTTP/HTTPS URL to dynamically switch endpoint before execution.",
      +  "type": "string"
      +}
    • addedInput schema / properties / headers
      Added value: +{
      +  "description": "JSON stringified object of extra HTTP headers for the introspection request (e.g. '{\"Authorization\": \"Bearer token\"}').",
      +  "type": "string"
      +}
  2. Addedv4.13.1
  3. Removedv4.12.0
  4. Changed1 schema field changedv4.9.2
    • removedInput schema / properties / typeDepth / default
      Removed value: -2
  5. Changed2 schema fields changedv4.8.0
    • addedInput schema / properties / typeDepth
      Added value: +{
      +  "default": 2,
      +  "description": "Depth of nested fields to retrieve (default: 2)",
      +  "type": "number"
      +}
    • changedInput schema / properties / typeNames / description
      Previous value: -"List of specific GraphQL type names to introspect. If omitted, the full schema is returned (use with caution on large APIs)."New value: +"List of specific GraphQL type names to introspect. If provided, returns the detailed SDL definitions for these types. If omitted, returns a system-wide Federated Manifest overview."
  6. Changed1 schema field changedv4.2.0
    • changedInput schema / properties / typeNames / description
      Previous value: -"List of type names to introspect"New value: +"List of specific GraphQL type names to introspect. If omitted, the full schema is returned (use with caution on large APIs)."
  7. Addedv3.9.3
  8. Removedv2.0.7
  9. Changed3 schema fields changedv1.0.0
    • addedInput schema / $schema
      Added value: +"http://json-schema.org/draft-07/schema#"
    • addedInput schema / additionalProperties
      Added value: +false
    • changedInput schema / properties / typeNames / description
      Previous value: -"e.g., [\"Query\", \"User\"]"New value: +"A list of specific type names to filter the introspection."
  10. First observed

TDQS

A4.4/5.0
Behavior4/5

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

With no annotations provided, the description carries the full burden, and it explicitly declares 'READ-ONLY: Non-destructive metadata discovery.' It also discloses the two distinct behavioral outcomes based on typeNames and clarifies that the manifest is 'not the full schema,' which helps set expectations. It does not mention potential errors or how headers/endpoint affect behavior, but the core safety and conditional behavior are clearly communicated.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with a clear one-line summary, an explicit READ-ONLY safety cue, and a numbered list that front-loads the two usage modes. Every sentence contributes either to behavioral transparency or invocation guidance, with no wasted words.

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

Completeness4/5

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

For a moderate-complexity tool with zero required parameters and no output schema, the description is largely complete: it covers both invocation modes, the manifest vs. SDL distinction, and the read-only nature. It could be more complete by explicitly routing query execution to query-graphql, but this is a minor gap given the clear 'before executing queries' framing.

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, but the description adds meaningful behavior beyond the schema by explaining the conditional outcome for typeNames and clarifying that results include 'fields and relations.' This gives an agent a better mental model of what each parameter triggers, even though the schema already documents the parameters themselves.

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 clearly identifies the tool as retrieving GraphQL schema details or a system manifest, with a specific verb and resource. It distinguishes between two modes—full SDL for requested types versus a Federated Manifest overview—and positions it as metadata discovery before executing queries, differentiating it from the sibling query-graphql tool.

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

Usage Guidelines4/5

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

The description gives explicit conditional guidance: use typeNames to get full SDL definitions, omit it to get a manifest for navigating the federated graph. It also states to use the manifest 'before executing queries,' providing clear context. However, it does not explicitly name or exclude the sibling tool query-graphql as the alternative for actual query execution.

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