Neon MCP 服务器
Neon MCP Server是一个开源工具,可让您使用自然语言与 Neon Postgres 数据库进行交互。
模型上下文协议 (MCP) 是一种全新的标准化协议,旨在管理大型语言模型 (LLM) 与外部系统之间的上下文。本仓库提供了Neon的安装程序和 MCP 服务器。
Neon 的 MCP 服务器充当自然语言请求和Neon API之间的桥梁。它基于 MCP 构建,将您的请求转换为必要的 API 调用,使您能够无缝地管理创建项目和分支、运行查询以及执行数据库迁移等任务。
Neon MCP 服务器的一些主要功能包括:
- **自然语言交互:**使用直观的对话命令管理 Neon 数据库。
- **简化的数据库管理:**无需编写 SQL 或直接使用 Neon API 即可执行复杂的操作。
- **非开发人员的可访问性:**使具有不同技术背景的用户能够与 Neon 数据库进行交互。
- **数据库迁移支持:**利用 Neon 的分支功能通过自然语言发起数据库模式更改。
例如,在 Claude Desktop 或任何 MCP 客户端中,您可以使用自然语言通过 Neon 完成以下操作:
Let's create a new Postgres database, and call it "my-database". Let's then create a table called users with the following columns: id, name, email, and password.
I want to run a migration on my project called "my-project" that alters the users table to add a new column called "created_at".
Can you give me a summary of all of my Neon projects and what data is in each one?
[!笔记]
Neon MCP 服务器通过自然语言请求提供强大的数据库管理功能。请务必在执行 LLM 请求的操作之前对其进行审核和授权。确保只有授权用户和应用程序才能访问 Neon MCP 服务器和 Neon API 密钥。
设置 Neon MCP 服务器
您可以通过两种方式将 MCP 客户端连接到 Neon:
- **远程 MCP 服务器(预览版):**使用 OAuth 身份验证连接到 Neon 托管的 MCP 服务器。此方法更加便捷,无需管理 API 密钥。此外,您将自动收到最新功能和改进,并立即获得更新。
- **本地 MCP 服务器:**在您的机器上本地运行 Neon MCP 服务器,并使用 Neon API 密钥进行身份验证。
先决条件
- MCP 客户端应用程序。
- 一个Neon 帐户。
- **Node.js(>= v18.0.0)和 npm:**从nodejs.org下载。
要设置本地 MCP 服务器,您还需要一个 Neon API 密钥。请参阅Neon API 密钥文档,了解如何生成密钥。
选项 1. 远程托管 MCP 服务器(预览版)
使用 OAuth 连接到 Neon 托管的 MCP 服务器进行身份验证。这是最简单的设置,无需在本地安装此服务器,也不需要在客户端配置 Neon API 密钥。
- 将以下“Neon”条目添加到客户端的 MCP 服务器配置文件(例如
mcp.json
、mcp_config.json
):Copy - 保存配置文件。
- 重新启动或刷新您的 MCP 客户端。
- 您的浏览器中将打开一个 OAuth 窗口。按照提示授权您的 MCP 客户端访问您的 Neon 帐户。
选项 2. 本地 MCP 服务器
在本地机器上运行 Neon MCP 服务器。
通过 Smithery 设置:
系统将提示您输入 Neon API 密钥。请输入您在先决条件部分获取的 API 密钥。将<client_name>
替换为您的 MCP 客户端应用程序名称。支持的客户端名称包括:
- 克劳德桌面
claude
- Cursor的
cursor
(通过smithery
安装使 MCP 服务器成为 Cursor 中的全局 MCP 服务器) windsurf
适用于风帆冲浪编辑器roo-cline
用于Roo Cline VS Code 扩展- 机智换
witsy
enconvo
用于Enconvo- Visual Studio Code的
vscode
(预览版)
安装后重新启动 MCP 客户端。
通过 npm 设置
如果您的 MCP 客户端未在此处列出,您可以手动将 Neon MCP 服务器详细信息添加到客户端的mcp_config
文件中。
在客户端的mcp_config
文件的mcpServers
部分中添加以下 JSON 配置,将<YOUR_NEON_API_KEY>
替换为您的实际 Neon API 密钥:
故障排除
如果您的客户端不使用JSON
来配置 MCP 服务器(例如旧版本的 Cursor),您可以在出现提示时使用以下命令:
Windows 上的故障排除
如果您使用的是 Windows,并且在添加 MCP 服务器时遇到问题,则可能需要使用命令提示符 ( cmd
) 或适用于 Linux 的 Windows 子系统 ( wsl
) 来运行必要的命令。您的配置设置可能类似于以下内容:
指南
- Neon MCP 服务器指南
- 将 MCP 客户端连接到 Neon
- 带有 Neon MCP 服务器的 Cursor
- 带有 Neon MCP 服务器的 Claude 桌面
- Cline 与 Neon MCP 服务器
- 使用 Neon MCP 服务器进行风帆冲浪
- Zed 与 Neon MCP 服务器
特征
支持的工具
Neon MCP 服务器提供以下操作,这些操作作为“工具”提供给 MCP 客户端。您可以使用这些工具通过自然语言命令与您的 Neon 项目和数据库进行交互。
项目管理:
list_projects
:检索您的 Neon 项目列表,提供与您的 Neon 帐户关联的每个项目的摘要。describe_project
:获取有关特定 Neon 项目的详细信息,包括其 ID、名称以及相关分支和数据库。create_project
:在您的 Neon 帐户中创建一个新的 Neon 项目。项目充当分支、数据库、角色和计算资源的容器。delete_project
:删除现有的 Neon 项目及其所有相关资源。
分行管理:
create_branch
:在指定的 Neon 项目中创建一个新的分支。利用Neon 的分支功能进行开发、测试或迁移。delete_branch
:从 Neon 项目中删除现有分支。describe_branch
:检索有关特定分支的详细信息,例如其名称、ID 和父分支。
SQL查询执行:
get_connection_string
:返回数据库连接字符串。run_sql
:针对指定的 Neon 数据库执行单个 SQL 查询。支持读写操作。run_sql_transaction
:针对 Neon 数据库在单个事务中执行一系列 SQL 查询。get_database_tables
:列出指定 Neon 数据库中的所有表。describe_table_schema
:检索特定表的模式定义,详细说明列、数据类型和约束。
数据库迁移(架构更改):
prepare_database_migration
:启动数据库迁移过程。关键的是,它会创建一个临时分支,以便在迁移影响主分支之前安全地应用和测试迁移。complete_database_migration
:完成并应用已准备好的数据库迁移到主分支。此操作会合并临时迁移分支中的更改并清理临时资源。
Neon Auth:
provision_neon_auth
:为 Neon 项目配置 Neon Auth 的操作。它允许开发者通过与 Stack Auth (@stackframe/stack
) 集成,轻松设置身份验证基础架构。
迁移
迁移是一种管理数据库架构随时间变化的方法。借助 Neon MCP 服务器,LLM 可以使用单独的“启动”( prepare_database_migration
) 和“提交”( complete_database_migration
) 命令安全地执行迁移。
“Start”命令接受迁移并在新的临时分支中运行它。返回后,此命令会提示LLM应该在此分支上测试迁移。然后,LLM可以运行“Commit”命令将迁移应用到原始分支。
发展
使用 MCP CLI 客户端进行开发
在 MCP Server 上进行迭代最简单的方法是使用mcp-client/
。了解更多信息,请参阅mcp-client/README.md
。
使用 Claude Desktop(本地 MCP 服务器)进行开发
然后,每次想要测试更改时重新启动 Claude 。
测试
要运行测试,您需要根据.env.example
文件设置.env
文件。
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
让您可以使用 Claude Desktop 或任何 MCP 客户端,通过自然语言使用Neon完成任务。