mcp/schemacrawler-aiSchemaCrawler AI MCP Server通过MCP(Model Context Protocol)客户端的“Agent”模式实现与数据库模式的自然语言交互。用户可通过提问(如“解释利息计算存储过程的代码”)探索数据库表、列、外键、触发器、存储过程等对象,还能辅助SQL编写。该镜像专为需要简化数据库模式理解和查询开发流程的开发者、数据库管理员(DBA)及数据分析师设计,无需依赖繁琐的文档即可高效工作。
| 属性 | 详情 |
|---|---|
| Docker镜像 | mcp/schemacrawler-ai |
| 作者 | schemacrawler |
| 仓库 | [***] |
| 属性 | 详情 |
|---|---|
| Dockerfile | [***] |
| Docker镜像构建者 | Docker Inc. |
| Docker Scout健康评分 | !Docker Scout Health Score |
| 验证签名 | COSIGN_REPOSITORY=mcp/signatures cosign verify mcp/schemacrawler-ai --key [***] |
| 许可证 | Other |
| 服务器提供的工具 | 简短描述 |
|---|---|
describe-routines | 获取数据库例程(存储过程或函数)的详细信息和描述,包括参数和返回类型。 |
describe-tables | 获取数据库表或视图的详细信息和描述,包括列、主键、外键、索引和触发器。 |
get-schemacrawler-version | 获取SchemaCrawler的版本。 |
lint | 检查数据库模式设计问题,如特定表或整个数据库的外键无索引等。 |
list | 列出数据库对象名称,如表、例程(函数和存储过程)、序列或同义词。 |
list-across-tables | 列出整个数据库中表的依赖对象名称,如列、索引、触发器和外键,可后续通过描述表获取详情。 |
server-information | 提供数据库服务器的详细信息,如产品版本、排序规则等,具体内容因服务器类型而异。 |
table-sample | 从表中获取随机样本行数据,用于推断表内容,不可替代表查询。 |
describe-routines获取数据库例程(存储过程或函数)的详细信息和描述,包括参数和返回类型。若不通过参数限制特定例程,可能返回大量信息。返回JSON格式数据。
| 参数 | 类型 | 描述 |
|---|---|---|
description-scope | array 可选 | 指定返回的数据库例程详情范围,包括参数(含返回类型)、属性和例程定义。参数、返回类型及备注始终返回。 |
routine-name | string 可选 | 要描述的数据库例程名称,可指定为匹配全限定名(含模式)的正则表达式。空字符串表示所有例程,未指定则返回所有例程(可能结果量大)。 |
describe-tables获取数据库表或视图的详细信息和描述,包括列、主键、外键、索引和触发器。若不通过参数限制特定表,可能返回大量信息。返回JSON格式数据。
| 参数 | 类型 | 描述 |
|---|---|---|
description-scope | array 可选 | 指定返回的数据库表/视图详情范围,包括列、主键、外键、索引、触发器、属性和表定义。默认始终返回列、外键引用及备注,其他详情需显式请求(可能结果量大)。 |
table-name | string 可选 | 要描述的表/视图名称,可指定为匹配全限定名(含模式)的正则表达式。空字符串表示所有表/视图,未指定则返回所有表/视图(可能结果量大)。 |
get-schemacrawler-version获取SchemaCrawler的版本。
| 参数 | 类型 | 描述 |
|---|---|---|
arg0 | string 可选 | MCP客户端标识(若可用)。 |
arg1 | string 可选 | 事件ID(若可用)。 |
lint检查数据库模式设计问题,可针对特定表或整个数据库,如外键无索引等。
| 参数 | 类型 | 描述 |
|---|---|---|
table-name | string 可选 | 要检查的表名称,可指定为匹配全限定名(含模式)的正则表达式。空字符串表示所有表,未指定则处理所有表(可能结果量大且执行时间长)。 |
list列出数据库对象名称,如表、例程(函数和存储过程)、序列或同义词。返回JSON格式数据。
| 参数 | 类型 | 描述 |
|---|---|---|
database-object-name | string 可选 | 要列出的数据库对象名称,可指定为匹配全限定名(含模式)的正则表达式,可匹配多个对象。空字符串表示所有对象。 |
database-object-type | string 可选 | 要列出的数据库对象类型,如表(含视图)、例程(存储过程和函数)、模式(目录)、序列或同义词。未指定则列出所有对象。 |
list-across-tables列出整个数据库中表的依赖对象名称,如列、索引、触发器和外键,可后续通过描述表获取详情。返回JSON格式数据。
| 参数 | 类型 | 描述 |
|---|---|---|
dependant-object-type | string | 表依赖对象类型,如列、索引、外键或触发器。 |
dependant-object-name | string 可选 | 表依赖对象名称,可指定为匹配全限定名(含模式和表)的正则表达式,可匹配多个对象。空字符串表示所有依赖对象,未指定则返回所有依赖对象(可能结果量大)。 |
table-name | string 可选 | 要描述依赖对象的表名称,可指定为匹配全限定名(含模式)的正则表达式,可返回多个表。空字符串表示所有表,未指定则返回所有表(可能结果量大)。 |
server-information提供数据库服务器的详细信息,如产品版本、排序规则等,具体内容因服务器类型(如Oracle、SQL Server、PostgreSQL、MySQL等)而异。返回JSON格式数据。
table-sample从表中获取随机样本行数据,每次请求可能返回不同行。用于推断表内容,不可替代表查询。
| 参数 | 类型 | 描述 |
|---|---|---|
table-name | string 可选 | 要获取样本的表名称,可指定为匹配全限定名(含模式)的正则表达式。空字符串表示所有表,未指定则处理所有表(可能结果量大且执行时间长)。 |
json{ "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" } } } }
有关为何使用Docker运行MCP服务器更安全的信息,参见Docker博客文章。




manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务