Azure Database for PostgreSQL MCP Server (Preview)

Azure Database for PostgreSQL MCP Server (Preview)

Azure Database for PostgreSQL 托管控制平面服务器 (Azure Database for PostgreSQL Tuōguǎn Kòngzhì Píngmiàn Fúwùqì)

Azure-Samples

研究与数据
访问服务器

README

Azure Database for PostgreSQL MCP 服务器 (预览版)

一个 模型上下文协议 (MCP) 服务器,让你的 AI 应用程序和模型能够根据 MCP 标准与 Azure Database for PostgreSQL 中托管的数据进行通信!

此服务器公开以下功能(预览版),这些功能可以由 AI 代理、AI 应用程序或 Claude Desktop 或 Visual Studio Code 等工具中的 MCP 客户端调用或请求:

  • 工具:
    • query_data: 执行读取查询以从 Azure Database for PostgreSQL 数据库中检索数据。
    • update_values: 在数据库中插入或更新记录。
    • create_table: 在数据库中创建一个新表。
    • drop_table: 删除数据库中的一个表。
  • 资源:
    • Tables: 提供数据库中每个表的架构信息和元数据,包括列名和数据类型。

通过与此 MCP 服务器集成,你可以轻松地将任何支持 MCP 的 AI 应用程序连接到 Azure Database for PostgreSQL 中的业务数据,以标准化、可扩展和安全的方式提供有意义的上下文。

入门

前提条件

  • Python 3.10 或更高版本
  • 具有包含业务数据的数据库的 Azure Database for PostgreSQL 灵活服务器实例。 有关创建灵活实例、设置数据库以及连接到数据库的说明,请参阅此快速入门指南
  • MCP 客户端应用程序或工具,例如 Claude DesktopVisual Studio Code

安装

  1. 克隆 azure-postgresql-mcp 存储库:

    git clone https://github.com/Azure-Samples/azure-postgresql-mcp.git
    cd azure-postgresql-mcp
    

    或者,你可以只将 azure_postgresql_mcp.py 文件下载到你的工作文件夹。

  2. 创建一个虚拟环境:

    Windows cmd.exe:

    python -m venv azure-postgresql-mcp-venv
    .\azure-postgresql-mcp-venv\Scripts\activate.bat
    

    Windows Powershell:

    python -m venv azure-postgresql-mcp-venv
    .\azure-postgresql-mcp-venv\Scripts\Activate.ps1
    

    Linux 和 MacOS:

    python -m venv azure-postgresql-mcp-venv
    source ./azure-postgresql-mcp-venv/bin/activate
    
  3. 安装依赖项:

    pip install mcp[cli]
    pip install psycopg[binary]
    

将 MCP 服务器与 Claude Desktop 结合使用

观看以下演示视频或继续阅读以获取详细说明。

https://github.com/user-attachments/assets/327157ef-9c75-414f-8e08-8bbb2b83208c

  1. 在 Claude Desktop 应用程序中,导航到“设置”窗格,选择“开发者”选项卡,然后单击“编辑配置”。

  2. 打开 claude_desktop_config.json 文件,并将以下配置添加到 "mcpServers" 部分以配置 Azure Database for PostgreSQL MCP 服务器:

    {
        "mcpServers": {
            "azure-postgresql-mcp": {
                "command": "<虚拟环境的路径>\\azure-postgresql-mcp-venv\\Scripts\\python",
                "args": [
                    "<azure_postgresql_mcp.py 文件的路径>\\ azure_postgresql_mcp.py"
                ],
                "env": {
                    "PGHOST": "<Azure Database for PostgreSQL 实例的完全限定名称>",
                    "PGUSER": "<你的 Azure Database for PostgreSQL 用户名>",
                    "PGPASSWORD": "<你的密码>",
                    "PGDATABASE": "<你的数据库名称>"
                }
            }
        }
    }
    
  3. 重新启动 Claude Desktop 应用程序。

  4. 重新启动后,你应该在输入框底部看到一个锤子图标和一个附加图标。 选择这些图标将显示 MCP 服务器提供的工具和资源。

现在,你已准备好开始使用自然语言查询与你的数据进行交互!

将 MCP 服务器与 Visual Studio Code 结合使用

观看以下演示视频或继续阅读以获取详细说明。

https://github.com/user-attachments/assets/ed02b4ea-3b76-429a-9558-aef32f1dee68

  1. 在 Visual Studio Code 中,导航到“文件”,选择“首选项”,然后选择“设置”。

  2. 搜索“MCP”并选择“在 settings.json 中编辑”。

  3. 将以下配置添加到 settings.json 文件的“mcp”部分:

    {
        "mcp": {
            "inputs": [],
            "servers": {
                "azure-postgresql-mcp": {
                    "command": "<虚拟环境的路径>\\azure-postgresql-mcp-venv\\Scripts\\python",
                    "args": [
                        "<azure_postgresql_mcp.py 文件的路径>\\ azure_postgresql_mcp.py"
                    ],
                    "env": {
                        "PGHOST": "<Azure Database for PostgreSQL 实例的完全限定名称>",
                        "PGUSER": "<你的 Azure Database for PostgreSQL 用户名>",
                        "PGPASSWORD": "<你的密码>",
                        "PGDATABASE": "<你的数据库名称>"
                    }
                }
            }
        }
    }
    
  4. 选择右上角的“Copilot”状态图标以打开 GitHub Copilot Chat 窗口。

  5. 从聊天输入框底部的下拉列表中选择“代理模式”。

  6. 单击“选择工具”(锤子图标)以查看 MCP 服务器公开的工具。

现在,你已准备好开始使用自然语言查询与你的数据进行交互!

贡献

Azure Database for PostgreSQL MCP 服务器目前处于预览阶段。 随着我们不断开发和增强其功能,我们欢迎所有贡献! 有关更多详细信息,请参阅 CONTRIBUTING.md 文件。

许可证

本项目已获得 MIT 许可证的许可。 有关更多详细信息,请参阅 LICENSE 文件。

推荐服务器

Crypto Price & Market Analysis MCP Server

Crypto Price & Market Analysis MCP Server

一个模型上下文协议 (MCP) 服务器,它使用 CoinCap API 提供全面的加密货币分析。该服务器通过一个易于使用的界面提供实时价格数据、市场分析和历史趋势。 (Alternative, slightly more formal and technical translation): 一个模型上下文协议 (MCP) 服务器,利用 CoinCap API 提供全面的加密货币分析服务。该服务器通过用户友好的界面,提供实时价格数据、市场分析以及历史趋势数据。

精选
TypeScript
MCP PubMed Search

MCP PubMed Search

用于搜索 PubMed 的服务器(PubMed 是一个免费的在线数据库,用户可以在其中搜索生物医学和生命科学文献)。 我是在 MCP 发布当天创建的,但当时正在度假。 我看到有人在您的数据库中发布了类似的服务器,但还是决定发布我的服务器。

精选
Python
mixpanel

mixpanel

连接到您的 Mixpanel 数据。 从 Mixpanel 分析查询事件、留存和漏斗数据。

精选
TypeScript
Sequential Thinking MCP Server

Sequential Thinking MCP Server

这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。

精选
Python
Nefino MCP Server

Nefino MCP Server

为大型语言模型提供访问德国可再生能源项目新闻和信息的能力,允许按地点、主题(太阳能、风能、氢能)和日期范围进行筛选。

官方
Python
Vectorize

Vectorize

将 MCP 服务器向量化以实现高级检索、私有深度研究、Anything-to-Markdown 文件提取和文本分块。

官方
JavaScript
Mathematica Documentation MCP server

Mathematica Documentation MCP server

一个服务器,通过 FastMCP 提供对 Mathematica 文档的访问,使用户能够从 Wolfram Mathematica 检索函数文档和列出软件包符号。

本地
Python
kb-mcp-server

kb-mcp-server

一个 MCP 服务器,旨在实现便携性、本地化、简易性和便利性,以支持对 txtai “all in one” 嵌入数据库进行基于语义/图的检索。任何 tar.gz 格式的 txtai 嵌入数据库都可以被加载。

本地
Python
Research MCP Server

Research MCP Server

这个服务器用作 MCP 服务器,与 Notion 交互以检索和创建调查数据,并与 Claude Desktop Client 集成以进行和审查调查。

本地
Python
Cryo MCP Server

Cryo MCP Server

一个API服务器,实现了模型补全协议(MCP),用于Cryo区块链数据提取,允许用户通过任何兼容MCP的客户端查询以太坊区块链数据。

本地
Python