在《》中,微軟 CEO 納德拉曾經表示,在 Agent 時代,SaaS is Dead,而未來的軟件形式將是 Agent + Database 。也就是直接由 Agent 在數據庫上做 CRUD。當然這篇文章也有不小爭議 —— 很多老司機表示,Agent 直通數據庫,是嫌安全問題不夠多,死的不夠快嗎?
老實說,那種直接把整個數據庫開放給世界的所謂 “MCP” 確實是這樣,當個玩具可以,沒人敢上生產用。不過,最近 Google 推出了一個針對數據庫的 MCP 工具箱(名字就叫樸實無華 GenAI Toolbox ),為這個問題提供了一個答案。
https://googleapis.github.io/genai-toolbox/
![]()
不同于以前那種直接把整個數據庫對 Agent 開放的粗暴做法,這個工具箱通過封裝參數模板 SQL 的方式,顯著提高了數據庫 MCP 的實用性與安全性,可以考慮搞起生產試點了 —— 老馮也打好了 RPM/DEB 包供大家嘗鮮。
![]()
https://github.com/googleapis/genai-toolbox
快速上手
舉個例子,老馮維護了一個包含 423 個擴展的 PG 倉庫,里面有一些數據表。現在我想要對外暴露一個擴展/軟件包查詢的能力,只需要編寫一個聲明式的tools.yaml配置文件就好了,這里我們讓 Claude Desktop 用 STDIO 方式接入 MCP,然后直接向他提問題就可以了。
![]()
老馮維護擴展的時候,通常需要去 GitHub 上搜刮各種元數據,然后填入到數據庫表中。有了這個工具箱,我還可以定義一條插入擴展表的模板 SQL ,描述清楚各種參數字段,然后直接讓 Claude 去 “深度研究”,生成元數據填入到數據表中,省下老馮的很多手工活兒。
![]()
老司機一眼就能看出這個思路是什么,就是通過模版化的 SQL 語句,限制數據庫對外提供服務的范圍。當然,你也是可以繼續使用那種 execute_sql 的萬金油接口來干活的。比如這里我們讓 Claude Desktop 查閱 PostgreSQL 數據庫中的參數,并進行配置優化:
![]()
官網給出了一個更詳細的例子,就是訂酒店,通過直接讀寫 PostgreSQL 數據庫的方式,對外提供 “定酒店” 的能力。
![]()
特性說明
當然,Google MCP Toolbox for Database 支持的數據庫種類其實挺多的,不僅僅是 PostgreSQL(雖然文檔里的例子滿篇都是 PG),還有 MySQL,SQL Server,SQLite,Redis,Neo4j,AlloyDB,BigQuery,BigTable,CouchBase,Google 云上的數據庫,還可以使用通用的 HTTP 數據源,堪稱萬金油數據庫 MCP。
![]()
一個工具箱就搞定主流數據庫的接入,光這一點就省了很多事兒 —— 你再也不用搓一堆各種數據庫各自的 MCP 了。
當然,這個工具箱不僅僅是給 MCP 客戶端用的,它還可以直接對 Agent 提供訪問。Google ADK 就提供了開箱即用的接入,寫一個 Agent ,讓它去訪問數據庫就非常簡單了。
![]()
老馮評價
Google 數據庫 MCP 工具箱解決了 MCP 上生產的一個核心問題 ——權限管理。當然這也有代價,開發者需要一個一個的去定義數據庫對外提供的能力 —— 寫 SQL 模板跟以前寫 CRUD 差不多,但要簡單很多 —— 你可以用自然語言編寫業務邏輯了。我認為這是軟件行業向 Agent + Database 的未來圖景邁出的重要一步。
老馮認為,Agent + Database 的組合,將會不可避免的導致數據庫存儲過程的“文藝復興”。因為如果你只是把簡單的 SQL 語句放進 MCP 里,會給 Agent 帶來巨大的上下文認知負擔 —— Agent 需要理解業務邏輯并將復雜的業務邏輯組織為 SQL 調用,一旦服務調用對應著多條復雜SQL語句,可靠性就會快速下降。
但如果開發者將業務邏輯整個下沉到數據庫里,將原本 Service 層面的 API 接口放在 Oracle / PostgreSQL 這樣的數據庫中用存儲過程實現,那么對 Agent 的智力/上下文要求就會減小許多 —— 從 DAO 成抽象,到 Service 層抽象。
另外,存儲過程的兩大缺點 ——對開發/DBA水平要求高,占用數據庫服務器性能,在當下基本上已經不再是問題了。與維護的問題,而當下讓 TP 數據庫的性能余量又開始充裕豐饒起來。那么節省多次交互 RT,收攏訪問權限,抽象封裝復雜度這些優勢就會凸顯出來。
![]()
因此我認為 AI 時代是極大利好 的,PG 支持用 20 多種編程語言開發存儲過程,即使是 Oracle 也難望其項背(六種)。當然,Oracle 的可編程性也非常好,只不過因為不開源,吃到的紅利就會少很多了。老馮目測這兩者會分別吃下開源/商業數據庫生態的最大 AI 紅利。
下載安裝教程
目前 MCP Toolbox for Database 提供了 macOS 下的包,以及 Linux/ Windows x86 的包。老馮把 Linux x86/ARM 平臺打好了 RPM / DEB 包,在主流 Linux 系統上都可以使用 (倉庫教程:https://pgsty.com/ext/repo/infra)
curl https://repo.pigsty.cc/pig | bash # pig 包管理器
pig repo add infra -u # 添加 infra 倉庫
yum install genai-toolbox # 安裝 genai 工具箱
你可以編輯/etc/toolbox/tools.yaml配置文件,加入你的數據源與工具,并使用systemctl start toolbox啟動服務。如果你使用的是 PostgreSQL,編輯/etc/defalt/toolbox里的環境變量,填入 PG 連接信息,即可開箱即用的使用這個 MCP 服務器了。你可以使用 SSE 訪問5000端口,連接數據庫 MCP 工具箱獲取服務。
![]()
Pigsty 的 Infra 倉庫已經提供了上面的軟件包,并會在下個版本提供數據庫 MCP 工具箱的部署劇本。
好的,今天就是這些,祝大家 MCP 愉快!
數據庫老司機
點一個關注 ??,精彩不迷路
對 PostgreSQL, Pigsty,下云 感興趣的朋友
歡迎加入 PGSQL x Pigsty 交流群(備注加PG群)
(這個小助手很懶,請使勁拍打他)
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.