自然语言数据库查询与MCP
生成式AI已经改变了几乎所有行业。本文通过一个具体用例,展示了专用的MCP服务器如何使LLM能够检查数据库,并为用户提供有用的信息。用户现在只需使用自然语言,就能自动从现有数据中直接推断出实际的业务洞察。
MCP服务器设置
MCP服务器通常暴露三个原语:工具、资源和提示模板。本实验使用了第一个原语。
涉及的"参与者"包括:
- Claude Desktop作为AI助手
- Claude Sonnet 4.0作为大型语言模型
- 用户作为希望与数据库"对话"的人
- PostgreSQL Server作为保存业务数据的数据库服务器
- PostgreSQL MCP Server作为暴露MCP工具的主要参与者
数据库设置
实验使用了一个简单的模式mcpdata,包含以下实体:
- Vendor - 服务提供商(如Vodafone)
- Service - 电信服务类型(如VOIP)
- Status - 发票可能处于的状态(审核中、已批准或已支付)
- Invoice - 针对特定日期、特定供应商服务的发票,包含编号和应付金额
AI主机和MCP服务器设置
在Claude Desktop中,通过编辑配置文件添加PostgreSQL MCP服务器连接:
|
|
与数据库"对话"
通过自然语言查询,用户可以:
- 获取数据库结构信息(如生成实体关系图)
- 查询模式中的表及其记录数量
- 获取业务洞察(如6月份已支付发票数量)
- 请求数据可视化表示
AI助手通过MCP服务器执行多个SQL查询来收集所需信息,然后以自然语言和可视化形式呈现结果。
结论
本文展示了一个直接但富有洞察力的用例,其中专用的PostgreSQL MCP服务器帮助丰富了AI应用程序的上下文,允许用户以自然语言对话方式快速发现从数据库直接推断出的信息。
SQLite MCP服务器是另一个可以用于完成类似任务的解决方案。除了只读工具外,它还允许创建/修改数据库表和写入数据,因此交互可能更加丰富。
总之,通过使用AI助手(Claude Desktop)和几个MCP服务器,许多想法只需几个"词"就能付诸实践。如果当前可用的MCP服务器不够用,还可以开发自己的全新服务器来满足需求,并将其插入助手,Voila!
资源
- [Resource 1] – 通过MCP丰富AI实时洞察
- [Resource 2] – PostgreSQL MCP服务器
- [Resource 3] – Claude Desktop下载
- [Resource 4] – SQLite MCP服务器
- [Resource 5] – Anthropic开发者指南-MCP