MCP Resources provide read-only access to database metadata and structure. These resources allow clients to explore database schemas, tables, indexes, and stored procedures.
Supported Resources
| Resource Name | URI Format | PostgreSQL | MySQL | MariaDB | SQL Server | SQLite |
| schemas | db://schemas | ✅ | ✅ | ✅ | ✅ | ✅ |
| tables_in_schema | db://schemas/{schemaName}/tables | ✅ | ✅ | ✅ | ✅ | ✅ |
| table_structure_in_schema | db://schemas/{schemaName}/tables/{tableName} | ✅ | ✅ | ✅ | ✅ | ✅ |
| indexes_in_table | db://schemas/{schemaName}/tables/{tableName}/indexes | ✅ | ✅ | ✅ | ✅ | ✅ |
| procedures_in_schema | db://schemas/{schemaName}/procedures | ✅ | ✅ | ✅ | ✅ | ❌ |
| procedure_details_in_schema | db://schemas/{schemaName}/procedures/{procedureName} | ✅ | ✅ | ✅ | ✅ | ❌ |
Usage
List Schemas
Get all schemas/databases in your database instance.
Example Response:
- public
- information_schema
- pg_catalog
List Tables in Schema
Get all tables within a specific schema.
db://schemas/public/tables
Example Response:
- users
- orders
- products
- categories
Get Table Structure
Get detailed structure information for a specific table, including columns, data types, and constraints.
db://schemas/public/tables/users
Example Response:
Table: users
Columns:
- id (integer, PRIMARY KEY, NOT NULL)
- name (varchar(255), NOT NULL)
- email (varchar(255), UNIQUE, NOT NULL)
- created_at (timestamp, DEFAULT CURRENT_TIMESTAMP)
- updated_at (timestamp)
Get Table Indexes
Get all indexes defined on a specific table.
db://schemas/public/tables/users/indexes
Example Response:
Indexes on table: users
- users_pkey (PRIMARY KEY): id
- users_email_idx (UNIQUE): email
- users_created_at_idx: created_at
List Stored Procedures
Get all stored procedures in a schema.
db://schemas/public/procedures
Example Response:
- update_user_timestamp
- calculate_order_total
- get_user_statistics
SQLite does not support stored procedures, so procedure-related resources are not available for SQLite databases.
Get Procedure Details
Get detailed information about a specific stored procedure, including parameters and definition.
db://schemas/public/procedures/update_user_timestamp
Example Response:
Procedure: update_user_timestamp
Parameters:
- user_id (integer, IN)
- new_timestamp (timestamp, IN)
Returns: void
Language: plpgsql
Definition:
BEGIN
UPDATE users SET updated_at = new_timestamp WHERE id = user_id;
END;
Multi-Database Usage
In multi-database configuration, resources use the default database (the first source defined in your TOML configuration).
To explore a different database, configure it as the first source or use the appropriate MCP client features to switch contexts.