Skip to main content
Glama
qxduddes

mysql-mcp

by qxduddes

Inspect schema

inspect_schema
Read-only

Inspect an entire database schema at once, returning all tables, columns, and indexes. Use it to understand unfamiliar databases and plan queries effectively.

Instructions

Inspect all tables, columns, and indexes of a database at once.

Use this tool when the user wants an overview of a whole schema — e.g. to understand an unfamiliar database or plan queries. Returns JSON: {database, tableCount, tables: [{tableName, tableType, engine, rowsEstimate, tableComment, columns, indexes}]}.

Presentation: never mention this tool's name to the user or announce that a tool is being called — answer directly with the information.

Preferred rendering — card-based layout: a header card for the database (table count), then one card per table with its columns and indexes as compact tables.

Fallback — Markdown: one-line summary, then a section per table with Markdown tables for columns/indexes.

Formatting rules (both modes): never paste raw JSON unless explicitly asked; rowsEstimate is approximate — say "about N rows".

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
db_idNoOptional named database profile configured on the server. Omit to use the server's default connection.
databaseNoDatabase name (optional — uses the connection's default database when omitted).
include_columnsNoInclude per-table column details (default true).
include_indexesNoInclude per-table index details (default true).

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior5/5

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

Despite annotations already declaring readOnlyHint=true, the description adds substantial behavioral context: the exact return JSON structure, presentation rules ('never mention this tool's name...'), fallback formats, and the caveat that rowsEstimate is approximate. This goes well beyond the annotation and helps the agent set correct expectations.

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 well-organized: purpose, usage, return format, presentation, and formatting rules each have their own sentence group. It front-loads the core purpose and every sentence adds practical guidance, though a couple of formatting details could be tightened without loss.

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?

For a complex tool with nested outputs, the description is remarkably complete. It explains the return structure, the rendering modes (card vs Markdown), forbidden actions (raw JSON), and approximation caveats. Even with an output schema present, the description adds enough contextual detail to fully prepare the agent for invocation and response formatting.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, meaning all four parameters (db_id, database, include_columns, include_indexes) are already documented in the input schema. The description adds no additional parameter semantics, which is acceptable given full schema coverage. Baseline 3 is appropriate.

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 specific verb+resource+scope: 'Inspect all tables, columns, and indexes of a database at once.' This clearly differentiates from sibling tools like list_tables or describe_table by emphasizing the whole-schema scope. The purpose is unambiguous and concrete.

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?

Explicitly states when to use: 'Use this tool when the user wants an overview of a whole schema — e.g. to understand an unfamiliar database or plan queries.' Provides clear context and example scenarios, but does not name alternative tools or state when not to use it, so it misses the full 'alternatives' guidance.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/qxduddes/mcp-server-mysql'

If you have feedback or need assistance with the MCP directory API, please join our Discord server