为Claude Desktop构建.NET PostgreSQL MCP服务器

为Claude Desktop构建.NET PostgreSQL MCP服务器

💡 原文英文,约2700词,阅读约需10分钟。
📝

内容提要

使用C#构建MCP服务器,连接Claude Desktop与PostgreSQL数据库,实现实时查询和模式检查。通过dotConnect提供快速、可靠的连接,支持Markdown格式结果,创建控制台应用以实现Claude与PostgreSQL的交互。

🎯

关键要点

  • 使用C#构建MCP服务器,连接Claude Desktop与PostgreSQL数据库,实现实时查询和模式检查。
  • MCP作为Claude与PostgreSQL之间的桥梁,支持Markdown格式结果。
  • dotConnect for PostgreSQL提供快速、可靠的连接,支持ADO.NET标准。
  • 创建控制台应用程序,配置数据库连接,添加MCP工具以实现查询和模式检查。
  • 在项目中安装必要的NuGet包以支持MCP功能和网络连接。
  • 创建appsettings.json文件以动态加载数据库连接设置。
  • 实现DbConnectionExtensions类以简化SELECT查询的执行和结果返回。
  • 创建DataTableExtensions类将DataTable转换为Markdown格式的表格。
  • 实现DbDataReaderExtensions类以从DbDataReader读取查询结果并格式化为Markdown表格。
  • 创建IConfigurationExtensions类以简化从appsettings.json文件中检索连接字符串。
  • 实现PostgreSqlTools类以提供数据库模式检索和SELECT查询执行的功能。
  • 在Program.cs中初始化MCP服务器配置并启动服务器。
  • 构建并测试MCP服务器,确保其正常工作。
  • 配置Claude Desktop以连接到MCP服务器,确保正确的配置文件设置。
  • 扩展MCP服务器功能以满足更复杂的需求,如查询接口、安全控制和数据转换。
  • 排查常见问题,如MCP服务器未找到或数据库连接失败,确保配置正确。
  • 在生产环境中应用安全最佳实践,如使用环境变量存储敏感数据。
  • 成功构建MCP服务器,使Claude Desktop能够实时与PostgreSQL数据库交互。

延伸问答

如何使用C#构建MCP服务器以连接Claude Desktop和PostgreSQL数据库?

可以通过创建一个.NET控制台应用程序,配置数据库连接,添加必要的扩展和MCP工具来实现。

dotConnect for PostgreSQL的优势是什么?

dotConnect for PostgreSQL提供快速、可靠的连接,支持ADO.NET标准,并具备安全性和性能测试,适合用于MCP服务器。

如何配置Claude Desktop以连接到MCP服务器?

需要创建或编辑claude_desktop_config.json文件,添加MCP服务器的配置,并重启Claude Desktop以使其生效。

MCP服务器如何处理查询和模式检查?

MCP服务器通过实现DbConnectionExtensions和PostgreSqlTools类来执行SELECT查询和检索数据库模式信息,并以Markdown格式返回结果。

在构建MCP服务器时需要安装哪些NuGet包?

需要安装McpDotNet、Devart.Data.PostgreSQL和Microsoft.Extensions.Hosting等NuGet包。

如何排查MCP服务器未找到或数据库连接失败的问题?

可以检查配置路径和权限,确保可执行文件路径正确,PostgreSQL服务器正在运行,并验证连接字符串的正确性。

➡️

继续阅读