neondatabase/mcp-server-neon

MCP server for interacting with Neon Management API and databases

Neon MCP Server – 连接 Neon Postgres 的自然语言桥梁

它是什么

  • 一个开源的 MCP(模型上下文协议)服务器,位于大型语言模型(LLM)和 Neon serverless Postgres 平台之间。
  • 它接收来自支持 LLM 的客户端(Claude Code、Cursor、VS Code、Kiro 等)的 自然语言 请求,将其转换为 Neon API 调用,并返回结果。

为什么重要

  • 让非技术用户能够管理数据库——创建项目/分支、运行查询、应用迁移——而无需编写 SQL 或记住 Neon 的 REST 端点。
  • 展示了 模型上下文协议 的具体用例,该协议是在 LLM 和外部服务之间安全传递上下文(认证、意图、参数)的标准。

关键能力

能力 工作原理 示例命令
项目与分支生命周期 调用 Neon 管理 API(create_project、list_branches、delete_branch 等) “创建一个名为 my-database 的新 Postgres 数据库,并添加一个 users 表。”
模式检查与迁移 使用 Neon 模式工具(describe_table_schema、prepare_database_migration、complete_database_migration) “向 users 表添加一个 created_at 列。”
查询执行 针对分支的计算端点运行 run_sql(只读)或 run_sql_transaction(写入) “显示 users 表的前 10 行。”
可观测性与文档 暴露只读工具,如 list_slow_queries、inspect_database、search 用于文档/资源 “给我一个我所有 Neon 项目的摘要。”

如何使用

  1. 快速设置 – 运行 npx neon@latest init。该脚本会创建 API 密钥,将 MCP 服务器注册到你的编辑器中,并打开 OAuth 同意屏幕。
  2. 远程托管服务器 – 将公共 MCP 端点(https://mcp.neon.tech/mcp)添加到你的客户端的 mcp.json 中(或使用一键 Kiro 按钮)。认证可以是 OAuth(首选)或 API 密钥头。
  3. 细粒度访问 – 通过 URL 查询参数控制 LLM 可以执行的操作:
    • readonly=true – 仅暴露只读工具。
    • category=… – 限制为特定的工具组(例如,querying 和 schema)。
    • projectId=… – 将所有操作锁定到单个 Neon 项目。

安全说明

  • 服务器可以执行强大的操作(创建/删除项目、运行迁移)。在服务器执行之前,始终 审查 LLM 生成的计划。
  • 旨在用于 本地开发 / IDE 集成;文档建议不要在生产环境中使用。
  • 如果你的 Neon 账户使用 IP 允许列表,请添加静态 IP 34.192.103.46 和 23.22.233.166。

架构概览

  • 作为部署在 Vercel 上的 Next.js App Router 应用(mcp.neon.tech)。
  • 核心文件夹:
    • app/api/[transport]/route.ts – 处理两种传输模式(Streamable HTTP 默认 和已弃用的 SSE)。
    • app/api/authorize/* – OAuth 流程(发现、令牌、撤销)。
    • mcp/ – 所有“工具”的定义、请求处理器、分析、Sentry 集成。
    • lib/ – 用于 OAuth、配置、错误处理的辅助函数。

了解更多

结论 Neon MCP Server 是一个真实的、生产级的桥梁,它允许由 LLM 驱动的助手通过自然语言管理 serverless Postgres 数据库,同时通过模型上下文协议为开发人员提供对权限和范围的细粒度控制。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目