The SchemaCrawler AI MCP Server enables natural language interaction with your database schema us...
4.6K
The SchemaCrawler AI MCP Server enables natural language interaction with your database schema using an MCP client in "Agent" mode. It allows users to explore tables, columns, foreign keys, triggers, stored procedures and more simply by asking questions like "Explain the code for the interest calculation stored procedure". You can also ask it to help with SQL, since it knows your schema. This is ideal for developers, DBAs, and data analysts who want to streamline schema comprehension and query development without diving into dense documentation.
| Attribute | Details |
|---|---|
| Docker Image | mcp/schemacrawler-ai |
| Author | schemacrawler |
| Repository | https://github.com/schemacrawler/SchemaCrawler-AI |
| Attribute | Details |
|---|---|
| Dockerfile | https://github.com/schemacrawler/SchemaCrawler-AI/blob/bf7339e44f931fd144de3a4b7dddcc1af2d337fa/Dockerfile |
| Commit | bf7339e44f931fd144de3a4b7dddcc1af2d337fa |
| Docker Image built by | Docker Inc. |
| Docker Scout Health Score | |
| Verify Signature | COSIGN_REPOSITORY=mcp/signatures cosign verify mcp/schemacrawler-ai --key https://raw.githubusercontent.com/docker/keyring/refs/heads/main/public/mcp/latest.pub |
| Licence | Other |
| Tools provided by this Server | Short Description |
|---|---|
describe_entities | Generates detailed documentation for entities in the ER model, including entity type such as strong, weak and subtype entities, and attributes. |
describe_relationships | Generates detailed documentation for relationships in the ER model, including 1..1, 1..M, M..N and optional relationships. |
describe_routines | Generates detailed documentation for database routines (stored procedures and functions), including parameter metadata (input/ output parameters, data types, default values), return types, dependencies (on tables, views, or other routines), and full DDL definitions. |
describe_tables | Generates detailed documentation for database tables and views, including column definitions (names, data types, constraints, nullability), primary and foreign key relationships, index and trigger information, table attributes, and complete DDL definitions. |
list | Makes an inventory of database schema objects such as tables, views, stored procedures, functions, sequences, synonyms, and more. |
list_across_tables | Makes an inventory of table-dependent objects across the database schema, including columns, indexes, foreign keys, triggers, and constraints. |
mcp-server-health | Gets the SchemaCrawler AI MCP Server version and uptime status. |
server_information | Provides database environment and server configuration metadata, including engine type and version, collation, encoding, parameters, capabilities, and platform details. |
describe_entitiesGenerates detailed documentation for entities in the ER model, including entity type such as strong, weak and subtype entities, and attributes. Supports regex-based entity name filtering to optimize tool performance. Returns data as a JSON object.
| Parameters | Type | Description |
|---|---|---|
entity_kind | string optional | Indicates the types of entities to return - for example, strong, weak |
| or subtype entities. It can also return associations (or bridge or join tables). |
entity_name|string optional|Name of entity to describe, from the ER model.
May be specified as a regular expression, matching the fully qualified
entity name (including the schema).
Try not to match all entities, but instead use a regular expression
to match a subset or match a single entity, since otherwise results may
be large.
describe_relationshipsGenerates detailed documentation for relationships in the ER model, including 1..1, 1..M, M..N and optional relationships. Supports regex-based relationship name filtering to optimize tool performance. Returns data as a JSON object.
| Parameters | Type | Description |
|---|---|---|
cardinality | string optional | Indicates the types of relationships to return - for example, 1..1, 1..M, M..N |
| and optional relationships. |
relationship_name|string optional|Name of relationships to describe, from the ER model.
May be specified as a regular expression, matching the fully qualified
relationship name (including the schema).
Try not to match all relationships, but instead use a regular expression
to match a subset or match a single relationships, since otherwise results may
be large.
describe_routinesGenerates detailed documentation for database routines (stored procedures and functions), including parameter metadata (input/ output parameters, data types, default values), return types, dependencies (on tables, views, or other routines), and full DDL definitions. Supports regex-based routine name filtering and configurable detail levels to optimize tool performance. Returns data as a JSON object.
| Parameters | Type | Description |
|---|---|---|
description_scope | array optional | Indicates what details of the database stored procedure or function |
| to return - parameters (including return types), attributes, | ||
| and routine definition. | ||
| Parameters, return types, and remarks or comments are always returned. |
routine_name|string optional|Name of database routine (stored procedure or function) to describe.
May be specified as a regular expression matching the fully qualified
stored procedure or function names (including the schema).
Try not to match all routines, but instead use a regular expression
to match a subset, since otherwise results may be large.
describe_tablesGenerates detailed documentation for database tables and views, including column definitions (names, data types, constraints, nullability), primary and foreign key relationships, index and trigger information, table attributes, and complete DDL definitions. Supports regex-based table name filtering and configurable detail levels to optimize tool performance. Returns data as a JSON object.
| Parameters | Type | Description |
|---|---|---|
description_scope | array optional | Indicates what details of the database table or view to return - |
| columns, primary key, foreign keys, indexes, triggers, attributes, | ||
| and table definition. Also returns which objects reference a given table | ||
| as "used by objects". | ||
| Columns, foreign key references to other tables, and remarks or comments | ||
| are always returned by default. The other details can be requested. | ||
| The results could be large. |
table_name|string optional|Name of database table or view to describe.
May be specified as a regular expression, matching the fully qualified
table name (including the schema).
Try not to match all tables, but instead use a regular expression
to match a subset or match a single table, since otherwise results may
be large.
listMakes an inventory of database schema objects such as tables, views, stored procedures, functions, sequences, synonyms, and more. This is an essential starting point for database exploration, database asset management, and schema analysis. The tool supports object type filtering and pattern-based searching. Returns JSON data.
| Parameters | Type | Description |
|---|---|---|
database_object_name | string optional | Name of database object to list. |
| Is a regular expression, matching the fully qualified | ||
| database object name (including the schema). May match | ||
| more than one database object. | ||
| Use an empty string if all database objects are requested. |
database_object_type|string optional|Type of database object to list, like tables (including views),
routines (that is, stored procedures and functions),
schemas (that is, catalogs), sequences, or synonyms.
If the parameter is not provided, all database objects are listed.
list_across_tablesMakes an inventory of table-dependent objects across the database schema, including columns, indexes, foreign keys, triggers, and constraints. Enables impact analysis, dependency tracking, performance tuning, and refactoring without inspecting individual tables. The corresponding tables are identified, and their details can be obtained later by describing those tables. Supports regex-based table name filtering and configurable detail levels to optimize tool performance. Returns JSON data.
| Parameters | Type | Description |
|---|---|---|
dependant_object_type | string | Type of database table dependant objects, like columns, indexes, |
| foreign keys or triggers. |
dependant_object_name|string optional|Name of table dependant object.
May be a regular expression, matching the fully qualified
dependant object name (including the schema and table). May match
more than one dependant object.
Use an empty string if all dependant objects are requested.
If not specified, all table dependant objects will be returned,
but the results could be large.
table_name|string optional|Name of database table for which dependant objects are described.
May be a regular expression, matching the fully qualified
table name (including the schema), in which case, multiple tables
may be returned.
Use an empty string if all tables are requested.
If not specified, all tables will be returned, but the results
could be large.
mcp-server-healthGets the SchemaCrawler AI MCP Server version and uptime status.
| Parameters | Type | Description |
|---|---|---|
clientId | string | |
eventId | string |
This tool may perform destructive updates.
This tool interacts with external entities.
server_informationProvides database environment and server configuration metadata, including engine type and version, collation, encoding, parameters, capabilities, and platform details. Adapts output to the specific database (such as Oracle, SQL Server, PostgreSQL and so on) to support platform-aware SQL generation and schema analysis.
{
"mcpServers": {
"schemacrawler-ai": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"SCHCRWLR_JDBC_URL",
"-e",
"SCHCRWLR_SERVER",
"-e",
"SCHCRWLR_HOST",
"-e",
"SCHCRWLR_PORT",
"-e",
"SCHCRWLR_DATABASE",
"-e",
"SCHCRWLR_INFO_LEVEL",
"-e",
"SCHCRWLR_LOG_LEVEL",
"-e",
"SCHCRWLR_DATABASE_USER",
"-e",
"SCHCRWLR_DATABASE_PASSWORD",
"-v",
"/local-directory:/local-directory",
"mcp/schemacrawler-ai"
],
"env": {
"SCHCRWLR_JDBC_URL": "12.12.12.12",
"SCHCRWLR_SERVER": "12.12.12.12",
"SCHCRWLR_HOST": "12.12.12.12",
"SCHCRWLR_PORT": "9999",
"SCHCRWLR_DATABASE": "public",
"SCHCRWLR_INFO_LEVEL": "standard",
"SCHCRWLR_LOG_LEVEL": "ALL",
"SCHCRWLR_DATABASE_USER": "SA",
"SCHCRWLR_DATABASE_PASSWORD": "super_S3cret"
}
}
}
}
Content type
Image
Digest
sha256:e72157603…
Size
494.8 MB
Last updated
4 days ago
Requires Docker Desktop 4.37.1 or later.
Pulls:
199
Last week