原型 · 预览版:收录官方注册中心里的全部服务器,每 30 分钟同步一次。评价和账户功能将在后续阶段推出。
PopNx MCP为使用 AI 的人准备的 MCP 服务器 · 用大白话讲清楚

Db Metadata Extractor MCP

作者:Optisol-Business版本 0.1.6i★ –i在你的电脑上运行
注册名称io.github.Optisol-Business/db-metadata-extractor-mcp

安装

概览

作者提供的说明(英文原文)

Extract database metadata from PostgreSQL, Snowflake, SQL Server, BigQuery, and Oracle.

PopNx MCP 的三大支柱

这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。

它能帮你做什么

我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。

  • 连接方式: 在你的电脑上运行
  • 传输方式: stdio
  • 分类: 数据库与数据集

安装

选择你使用的 AI 应用,然后复制设置。

安装之前

  • 基础检查:1 项中通过 1 项
  • 在你的电脑上运行,拥有你的用户账户的权限(文件、网络、应用)。
  • 注册中心没有列出需要填写的密钥。

你需要

  • PyPI已安装 Python 的 uv(用于 uvx 命令)

你用的是哪个应用?

在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。

打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json

{
  "mcpServers": {
    "db-metadata-extractor": {
      "command": "uvx",
      "args": [
        "db-metadata-extractor-mcp"
      ]
    }
  }
}

在终端中运行这条命令

claude mcp add db-metadata-extractor -- uvx db-metadata-extractor-mcp

在 Cursor 中打开

或者自己复制设置

粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json

{
  "mcpServers": {
    "db-metadata-extractor": {
      "command": "uvx",
      "args": [
        "db-metadata-extractor-mcp"
      ]
    }
  }
}

浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。

在 VS Code 中打开

或者自己复制设置

粘贴到项目中的 .vscode/mcp.json

{
  "servers": {
    "db-metadata-extractor": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "db-metadata-extractor-mcp"
      ]
    }
  }
}

浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。

这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。

你的选择通过 Cookie 保存在这台设备上,无需账户。

这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。

它能做什么

它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。

基础检查i

我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月8日

  • ✓ 通过

    作者与仓库一致

    注册名称已通过 GitHub 账户 Optisol-Business 验证,该账户拥有此仓库

  • … 尚未检查

    仍在维护

    我们还没有从 GitHub 读取这个仓库

  • … 尚未检查

    有许可证

    我们还没有从 GitHub 读取这个仓库

  • – 不适用

    端点有响应

    它在你的电脑上运行,没有互联网端点

  • – 不适用

    使用 OAuth 登录

    在你的电脑上运行,改用本地设置

  • … 尚未检查

    工具描述中没有隐藏指令

    它在你的电脑上运行;我们只能读取互联网端点的工具列表

与“数据库与数据集”中的其他服务器比较i

  • 星标数多于此分类中其他 1147 个服务器的 0%
  • 发布到注册中心的时间比此分类中其他 1147 个服务器的 9% 更新
  • 基础检查结果等于或优于此分类中其他 1147 个服务器的 100%

与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。

常见问题

Db Metadata Extractor MCP 安全吗?

它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。

它需要哪些密钥或代码?

注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。

它在我的电脑上运行还是在云端?

它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。

它还在维护吗?

GitHub 仓库最后更新于–,最新版本(0.1.6)于7个月前进入注册中心。

哪些应用可以使用它?

支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Python (uv), Docker。

有什么可以替代它?

同一分类中有:Supabase, MongoDB MCP Server, Elasticsearch MCP Server

替代选择

同一分类中其他作者的服务器,按星标数排序。

如何看卡片:↓ 每周下载量i★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i

Supabase

MCP server for interacting with the Supabase platform

作者:supabase广泛使用↓ 23.5万/周★ 2993前天更新

电脑或云端✓ supabase.com

MongoDB MCP Server

MongoDB Model Context Protocol Server

作者:mongodb-js广泛使用↓ 15.7万/周★ 11574天前更新

在你的电脑上运行

Elasticsearch MCP Server

MCP server for interacting with Elasticsearch

作者:cr7258正在增长↓ 2711/周★ 31514个月前更新

在你的电脑上运行

作者的 README

打开 README

按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。

mcp-name: io.github.Optisol-Business/db-metadata-extractor-mcp

Database Metadata Extractor MCP Server

A Model Context Protocol (MCP) server that extracts and queries database schema metadata from PostgreSQL, Snowflake, SQL Server, BigQuery, and Oracle databases.

Features

  • ✅ Multi-database support: PostgreSQL, Snowflake, SQL Server (MSSQL), BigQuery, Oracle
  • ✅ Complete schema extraction: Tables, columns, primary keys, indexes, constraints
  • ✅ Local JSON output: Saves metadata directly to local folder (no cloud required)
  • ✅ Query interface: Search and filter metadata by table/column names
  • ✅ Pagination support: Browse large schemas efficiently
  • ✅ VS Code integration: Works with VS Code Agent Mode
  • ✅ CLI customizable: Transport options (stdio, HTTP)

Installation

From PyPI
pip install db-metadata-extractor-mcp
From Source
git clone https://github.com/Optisol-Business/db-metadata-extractor-mcp.git

cd db-metadata-extractor-mcp pip install -e .

Quick Start

1. Start the MCP Server
db-metadata-extractor-mcp

The server starts in stdio mode by default and listens for MCP client connections.

2. Configure in Claude Desktop

Add to ~/.config/Claude/claude_desktop_config.json (macOS/Linux) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{

"mcpServers": { "db-metadata-extractor": { "command": "db-metadata-extractor-mcp", "args": [], "env": {} } } }

Restart Claude Desktop.

3. Use in Claude

Tell Claude:

Extract metadata from my PostgreSQL database and save it to /tmp/output

Claude will use the server's tools to extract and query your database schema.

Tools

extract_metadata

Extracts complete schema metadata from a database.

Parameters:

  • db_type (required): postgresql, snowflake, sqlserver, bigquery, oracle
  • output_path (required): Local directory for JSON output
  • database_name: Database/schema name
  • host: Database host (not needed for BigQuery/Snowflake)
  • port: Database port
  • username: Database user
  • password: Database password
  • schema_name: Specific schema (optional)
  • tables: Array of table names to extract (optional)
  • account: Snowflake account ID
  • warehouse: Snowflake warehouse
  • role_name: Snowflake role
  • project_id: BigQuery project ID
  • service_account_key: BigQuery service account JSON (base64 encoded)

Returns:

  • File path where metadata was saved
  • Summary statistics (table count, column count, etc.)
query_metadata

Query previously extracted metadata.

Parameters:

  • filepath (required): Path to metadata JSON file
  • table_name: Filter by table name (substring match)
  • field_name: Filter by column name (substring match)
  • page: Page number (default: 1)
  • page_size: Results per page (default: 20)

Returns:

  • Paginated table results matching filters

Examples

PostgreSQL
# Via Claude

"Extract all tables from my dev PostgreSQL database at localhost:5432"

Parameters Claude will use:

{

"db_type": "postgresql", "host": "localhost", "port": 5432, "database_name": "dev_db", "username": "postgres", "password": "your_password", "output_path": "/tmp/db_metadata" }

Snowflake
"Extract schema from Snowflake account XYZ123"

Parameters:

{

"db_type": "snowflake", "account": "XYZ123", "username": "your_user", "password": "your_password", "warehouse": "COMPUTE_WH", "role_name": "ANALYST", "database_name": "PRODUCTION", "output_path": "C:/metadata" }

BigQuery
"Extract metadata from BigQuery project my-project-123"

Parameters:

{

"db_type": "bigquery", "project_id": "my-project-123", "service_account_key": "base64_encoded_json_key", "output_path": "/tmp/bq_metadata" }

Advanced Usage

Custom Transport

Start with HTTP transport:

db-metadata-extractor-mcp --transport streamable-http --port 3000
Environment Variables
# Set database credentials via env

export DB_HOST=localhost export DB_USER=postgres export DB_PASSWORD=secret

db-metadata-extractor-mcp

Output Format

The extracted metadata is saved as a JSON file with structure:

{

"source": { "db_type": "postgresql", "extracted_at": "2026-04-09T14:30:00", "host": "localhost" }, "schemas": [ { "schema_name": "public", "tables": [ { "table_name": "users", "columns": [ { "column_name": "id", "data_type": "int", "is_nullable": false, "is_primary_key": true }, { "column_name": "email", "data_type": "varchar", "is_nullable": false } ], "indexes": [ { "index_name": "users_email_idx", "columns": ["email"] } ] } ] } ] }

Requirements

  • Python 3.8+
  • For PostgreSQL: psycopg2-binary
  • For Snowflake: snowflake-connector-python
  • For SQL Server: pyodbc, pymssql
  • For BigQuery: google-cloud-bigquery
  • For Oracle: oracledb

Troubleshooting

Connection Errors

Problem: "Unable to connect to database"

Solution: Verify credentials and network access:

# Test PostgreSQL connection

psql -h localhost -U postgres -c "SELECT 1"

Test Snowflake

snowsql -a XYZ123 -u your_user

Permission Errors

Problem: "Access denied" or "insufficient permissions"

Solution: Ensure database user has:

  • SELECT on tables
  • USAGE on schemas
  • CONNECT on databases
Large Schema Timeouts

Problem: Extraction times out on large databases

Solution: Extract specific schema/tables:

{

"schema_name": "public", "tables": ["users", "orders"] // Specify subset }

License

MIT License - See LICENSE file

Contributing

Contributions welcome! Please:

  1. Fork the repository
  2. Create feature branch
  3. Submit pull request

Support

  • GitHub Issues: https://github.com/Optisol-Business/db-metadata-extractor-mcp/issues
  • Documentation: See MCP_REGISTRY_GUIDE.md

Links

  • PyPI: https://pypi.org/project/db-metadata-extractor-mcp/
  • GitHub: https://github.com/Optisol-Business/db-metadata-extractor-mcp
  • MCP Spec: https://modelcontextprotocol.io/
问 PopNx