Enables natural language schema queries — explore tables, keys, procedures, and get SQL help fast
Connect Runs on your machine
claude mcp add schemacrawler-ai -e SCHCRWLR_MCP_SERVER_TRANSPORT=<SCHCRWLR_MCP_SERVER_TRANSPORT> -e SCHCRWLR_DATABASE_USER=<SCHCRWLR_DATABASE_USER> -e SCHCRWLR_DATABASE_PASSWORD=<SCHCRWLR_DATABASE_PASSWORD> -e SCHCRWLR_JDBC_URL=<SCHCRWLR_JDBC_URL> -e SCHCRWLR_SERVER=<SCHCRWLR_SERVER> -e SCHCRWLR_HOST=<SCHCRWLR_HOST> -e SCHCRWLR_PORT=<SCHCRWLR_PORT> -e SCHCRWLR_DATABASE=<SCHCRWLR_DATABASE> -e SCHCRWLR_DATABASE_ALIAS=<SCHCRWLR_DATABASE_ALIAS> -e SCHCRWLR_DATABASE_DESCRIPTION=<SCHCRWLR_DATABASE_DESCRIPTION> -e SCHCRWLR_INFO_LEVEL=<SCHCRWLR_INFO_LEVEL> -e SCHCRWLR_LOG_LEVEL=<SCHCRWLR_LOG_LEVEL> -e SCHCRWLR_EXCLUDE_TOOLS=<SCHCRWLR_EXCLUDE_TOOLS> -e SCHCRWLR_OFFLINE_DATABASE=<SCHCRWLR_OFFLINE_DATABASE> -e SCHCRWLR_ADDITIONAL_CONFIG=<SCHCRWLR_ADDITIONAL_CONFIG> -- docker run -i --rm schemacrawler/schemacrawler-ai:18.0.2-1
{
"mcpServers": {
"schemacrawler-ai": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"schemacrawler/schemacrawler-ai:18.0.2-1"
],
"env": {
"SCHCRWLR_MCP_SERVER_TRANSPORT": "<SCHCRWLR_MCP_SERVER_TRANSPORT>",
"SCHCRWLR_DATABASE_USER": "<SCHCRWLR_DATABASE_USER>",
"SCHCRWLR_DATABASE_PASSWORD": "<SCHCRWLR_DATABASE_PASSWORD>",
"SCHCRWLR_JDBC_URL": "<SCHCRWLR_JDBC_URL>",
"SCHCRWLR_SERVER": "<SCHCRWLR_SERVER>",
"SCHCRWLR_HOST": "<SCHCRWLR_HOST>",
"SCHCRWLR_PORT": "<SCHCRWLR_PORT>",
"SCHCRWLR_DATABASE": "<SCHCRWLR_DATABASE>",
"SCHCRWLR_DATABASE_ALIAS": "<SCHCRWLR_DATABASE_ALIAS>",
"SCHCRWLR_DATABASE_DESCRIPTION": "<SCHCRWLR_DATABASE_DESCRIPTION>",
"SCHCRWLR_INFO_LEVEL": "<SCHCRWLR_INFO_LEVEL>",
"SCHCRWLR_LOG_LEVEL": "<SCHCRWLR_LOG_LEVEL>",
"SCHCRWLR_EXCLUDE_TOOLS": "<SCHCRWLR_EXCLUDE_TOOLS>",
"SCHCRWLR_OFFLINE_DATABASE": "<SCHCRWLR_OFFLINE_DATABASE>",
"SCHCRWLR_ADDITIONAL_CONFIG": "<SCHCRWLR_ADDITIONAL_CONFIG>"
}
}
}
}
{
"mcpServers": {
"schemacrawler-ai": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"schemacrawler/schemacrawler-ai:18.0.2-1"
],
"env": {
"SCHCRWLR_MCP_SERVER_TRANSPORT": "<SCHCRWLR_MCP_SERVER_TRANSPORT>",
"SCHCRWLR_DATABASE_USER": "<SCHCRWLR_DATABASE_USER>",
"SCHCRWLR_DATABASE_PASSWORD": "<SCHCRWLR_DATABASE_PASSWORD>",
"SCHCRWLR_JDBC_URL": "<SCHCRWLR_JDBC_URL>",
"SCHCRWLR_SERVER": "<SCHCRWLR_SERVER>",
"SCHCRWLR_HOST": "<SCHCRWLR_HOST>",
"SCHCRWLR_PORT": "<SCHCRWLR_PORT>",
"SCHCRWLR_DATABASE": "<SCHCRWLR_DATABASE>",
"SCHCRWLR_DATABASE_ALIAS": "<SCHCRWLR_DATABASE_ALIAS>",
"SCHCRWLR_DATABASE_DESCRIPTION": "<SCHCRWLR_DATABASE_DESCRIPTION>",
"SCHCRWLR_INFO_LEVEL": "<SCHCRWLR_INFO_LEVEL>",
"SCHCRWLR_LOG_LEVEL": "<SCHCRWLR_LOG_LEVEL>",
"SCHCRWLR_EXCLUDE_TOOLS": "<SCHCRWLR_EXCLUDE_TOOLS>",
"SCHCRWLR_OFFLINE_DATABASE": "<SCHCRWLR_OFFLINE_DATABASE>",
"SCHCRWLR_ADDITIONAL_CONFIG": "<SCHCRWLR_ADDITIONAL_CONFIG>"
}
}
}
}
{
"servers": {
"schemacrawler-ai": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"schemacrawler/schemacrawler-ai:18.0.2-1"
],
"env": {
"SCHCRWLR_MCP_SERVER_TRANSPORT": "<SCHCRWLR_MCP_SERVER_TRANSPORT>",
"SCHCRWLR_DATABASE_USER": "<SCHCRWLR_DATABASE_USER>",
"SCHCRWLR_DATABASE_PASSWORD": "<SCHCRWLR_DATABASE_PASSWORD>",
"SCHCRWLR_JDBC_URL": "<SCHCRWLR_JDBC_URL>",
"SCHCRWLR_SERVER": "<SCHCRWLR_SERVER>",
"SCHCRWLR_HOST": "<SCHCRWLR_HOST>",
"SCHCRWLR_PORT": "<SCHCRWLR_PORT>",
"SCHCRWLR_DATABASE": "<SCHCRWLR_DATABASE>",
"SCHCRWLR_DATABASE_ALIAS": "<SCHCRWLR_DATABASE_ALIAS>",
"SCHCRWLR_DATABASE_DESCRIPTION": "<SCHCRWLR_DATABASE_DESCRIPTION>",
"SCHCRWLR_INFO_LEVEL": "<SCHCRWLR_INFO_LEVEL>",
"SCHCRWLR_LOG_LEVEL": "<SCHCRWLR_LOG_LEVEL>",
"SCHCRWLR_EXCLUDE_TOOLS": "<SCHCRWLR_EXCLUDE_TOOLS>",
"SCHCRWLR_OFFLINE_DATABASE": "<SCHCRWLR_OFFLINE_DATABASE>",
"SCHCRWLR_ADDITIONAL_CONFIG": "<SCHCRWLR_ADDITIONAL_CONFIG>"
}
}
}
}
Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.
Tools
This server runs locally, so its tools are listed by your MCP client once it starts.
Environment variables
| Name | Description |
|---|---|
SCHCRWLR_MCP_SERVER_TRANSPORTOptional | MCP Server transport type - valid values are 'http' or 'stdio', defaulting to 'stdio'. |
SCHCRWLR_DATABASE_USEROptional, secret | Database user name. Can be optional depending on the database connection type. |
SCHCRWLR_DATABASE_PASSWORDOptional, secret | Database user password. Can be optional depending on the database connection type. |
SCHCRWLR_JDBC_URLOptional, secret | Optional JDBC URL for database connection. If nonblank, server, host, port, and database are ignored. Credentials may still be supplied separately. |
SCHCRWLR_SERVEROptional | SchemaCrawler database connector identifier, for example, 'sqlserver' or 'sqlite'. Required if the JDBC URL is blank or unset. |
SCHCRWLR_HOSTOptional | Database host. Defaults to the connector's host default. Used only if the JDBC URL is blank or unset. |
SCHCRWLR_PORTOptional | Database port. Valid decimal values from 1024 through 65535 are used; otherwise the connector's default port is retained. Used only if the JDBC URL is blank or unset. |
SCHCRWLR_DATABASEOptional | Optional database name or connector-specific database value. Used only if the JDBC URL is blank or unset. |
SCHCRWLR_DATABASE_ALIASOptional | Optional stable alias used to identify this database server in MCP instructions and tool results. |
SCHCRWLR_DATABASE_DESCRIPTIONOptional | Optional description of this database server, included in MCP instructions and the about_database response. |
SCHCRWLR_INFO_LEVELOptional | How much database metadata to retrieve: 'minimum', 'standard', 'detailed', or 'maximum'. Defaults to 'standard'; unset or unrecognized values also use 'standard'. |
SCHCRWLR_LOG_LEVELOptional | Java logging level. Defaults to 'INFO'. Java logging names such as 'SEVERE', 'WARNING', 'INFO', 'CONFIG', 'FINE', 'FINER', 'FINEST', 'ALL', and 'OFF', and numeric levels are accepted. |
SCHCRWLR_EXCLUDE_TOOLSOptional | MCP Server tools to exclude, as a comma-separated list. |
SCHCRWLR_OFFLINE_DATABASEOptional | Optional path to a serialized offline catalog snapshot. When set, catalog loading uses this snapshot. |
SCHCRWLR_ADDITIONAL_CONFIGOptional, secret | Additional SchemaCrawler configuration encoded as a JSON object. Invalid JSON logs a warning and uses empty additional configuration; do not include secrets. |
Details
| Package | schemacrawler/schemacrawler-ai:18.0.2-1 (OCI, stdio) |
| First published | 10 Nov 2026 |
| Last updated | 10 Nov 2026 |
| Registry name | io.github.schemacrawler/schemacrawler-ai |
More databases servers See all
Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.
