保姆級教程:讓AI操作數(shù)據(jù)庫—Cusor配置Sqlite MCP Server|遇到了一個大坑,全網(wǎng)沒人說??!
許多初學者在使用AI工具時常常遇到一個痛點:雖然AI能夠提供指導,但實際操作仍然需要手動完成。本文將為你帶來一個“保姆級”教程,介紹如何通過配置Cursor和Sqlite MCP Server,讓AI直接操作數(shù)據(jù)庫,從而實現(xiàn)真正的自動化編程。
在用Cursor等AI工具編程的同學們,有沒有發(fā)現(xiàn),你原本想讓AI幫你解決問題,但AI老是讓你自己去操作。
例如我做數(shù)據(jù)分析,一定離不開數(shù)據(jù)庫,每次需要執(zhí)行操作的時候,都是讓AI給我命令,然后我手動去執(zhí)行。
其實這個過程完全沒有必要,我們可以讓AI自己去操作數(shù)據(jù)庫?。?!
這就是我們今天要介紹的MCP Server的能力??!
可以看下Cursor官方文檔中的介紹:
https://docs.cursor.com/context/model-context-protocol
起因是我有開發(fā)一個內(nèi)容矩陣系統(tǒng),伴隨著一個sqlite數(shù)據(jù)庫, 雖然說是AI編程,但還多本地的操作它無法執(zhí)行,要我去做,我就變成了它的小弟,這讓我很不爽。直到我用上MCP,真正讓Cursor變成AI Agent之后,我才看到了真正的人工智能。
今天就給大家介紹一個MCP的實操:讓Cursor操作MCP
設置步驟
總共分成三步
下載SQL Lite MCP Server
用到的項目地址是:https://github.com/modelcontextprotocol/servers/tree/main/src/sqlite
但我直接到主頁https://github.com/modelcontextprotocol/servers/tree/main 把整個servers 都下載了
解壓到了這里:
配置MCP服務器
你需要創(chuàng)建一個MCP配置文件,有兩種位置可以放置:
- 項目配置:在你的項目目錄下創(chuàng)建?.cursor/mcp.json?文件(僅在該項目中可用)
- 全局配置:在你的主目錄下創(chuàng)建?~/.cursor/mcp.json?文件(在所有Cursor工作區(qū)可用)這里的主目錄是linux的,windows的話可以直接到Cursor的設置里打開添加。
這里我是先用在單個項目的測試上,就用的項目配置:
配置SQLite MCP服務器
根據(jù)GitHub倉庫中的信息,SQLite MCP服務器有兩種運行方式:
方式一:使用uv(本地運行)
UV 是一個Python的包,我們先安裝他
pip install uv
pip install httpx mcp
把以下配置復制黏貼到剛生成好的mcp.json里,這是一個標準的MCP配置格式,其中我們看到需要自行做修改
{??
“mcpServers”:{? ??
“sqlite”:{? ? ??
“command”:”uv”,? ? ??
“args”:[? ? ? ??
“–directory”,? ? ? ??
“你的servers倉庫路徑/servers/src/sqlite”,? ? ? ??
“run”,? ? ? ??
“mcp-server-sqlite”,? ? ? ??
“–db-path”,? ? ? ??
“~/你的數(shù)據(jù)庫.db”? ? ??
]? ??
}
}
}
注意我的路徑:
然后我的配置文件長這樣:
其實這個配置的邏輯很簡單,就是命令行運行uv –directory D:/ProgramData/js/mcp/servers-main/src/sqlite run mcp-server-sqlite –db-path ai_editor.db 只是把它們每個元素拆開了放進去,這樣就好理解了。
方式二:使用Docker
這個方法還要配置Docker,對大部分人來說有點太麻煩了,就僅展示
{??
“mcpServers”:{? ??
“sqlite”:{? ? ??
“command”:”docker”,? ? ??
“args”:[? ? ? ??
“run”,? ? ? ??
“–rm”,? ? ? ??
“-i”,? ? ? ?
“-v”,? ? ? ??
“mcp-test:/mcp”,? ? ? ??
“mcp/sqlite”,? ? ? ??
“–db-path”,? ? ? ??
“/mcp/test.db”? ? ??
]? ??
}
}
}
使用Docker前需要先構建鏡像:
docker build -t mcp/sqlite .
3. 查看配置好的MCP Server,重啟Cursor
找到設置,如果能看到下面圖里的樣式,就說明Cursor識別成功了,否則就是Json文件哪里填錯了,例如windows的地址,是不能直接復制文件窗口上的,否則會有紅線報錯,這樣Cursor是識別不到MCP Server的
其次,還要觀察名字前面是否有綠色的燈,綠色才證明開著。
這里我一開始遇到一個大坑,一直不亮燈,甚至顯示client closed,查了各種網(wǎng)絡都沒有人說,我自己折騰了半天才解決。這個坑,如果你也遇到了,就看文末。
順利的話,就重啟Cursor,打開的時候會自動彈出命令行窗口
這是Cursor在替你運行 MCP Server,注意不要關閉,讓它一直開著。
使用SQLite MCP服務器的工具
配置好后,Cursor的Agent將能夠訪問以下SQLite工具,同時這也是我們下載的Sqlite MCP Server文件里定義好的命令:
查詢工具
- read_query:執(zhí)行SELECT查詢讀取數(shù)據(jù)
- write_query:執(zhí)行INSERT、UPDATE或DELETE查詢
- create_table:創(chuàng)建新表
模式工具
- list_tables:獲取所有表的列表
- describe-table:查看特定表的模式信息
分析工具
- append_insight:向memo資源添加新的業(yè)務見解
在Cursor的Agent中可以直接引用這些工具。Agent會自動檢測可用的MCP工具,或者你可以明確告訴Agent使用特定的工具。
接下來使用就很簡單了,例如我這個項目需要新增一些表格,就直接說:
當前項目是一個ai批量改寫內(nèi)容管理系統(tǒng),每篇內(nèi)容都有id
現(xiàn)在我需要新增一個內(nèi)容的多版本管理功能
請你幫我在數(shù)據(jù)庫中新建好對應的多版本表格
然后AI就一如既往的查看當前項目,包括查看數(shù)據(jù)庫情況,就直接調(diào)用了,如下圖:
Calling MCP tool list_tables
格式:Calling + 某個工具+什么命令
最后的命令則是我們前面部署好的MCP Server里自定義好的
點開每個Call,就能看到它具體干了什么
如果你不想老是去點Run tool, 就可以把Features里的Enable auto-run mode打開
這個操作真的巨絲滑!!還會自動生成日志、視圖,甚至插入測試數(shù)據(jù),最后再檢驗,比我做的還6
但要提醒一下,AI有很大的不確定性,不建議在生產(chǎn)環(huán)境直接用AI去改你的數(shù)據(jù)庫??!
建議是在剛開始做項目的時候,讓AI幫你完成初始化,或者在執(zhí)行前,手動做一個備份,如果有問題,能馬上恢復?。?!
一個大坑??!
遇到一個大坑,因為我是用Anaconda的多環(huán)境管理,包括構建的uv也是用的虛擬環(huán)境,導致我一直運行MCP Servers失敗,顯示client closed
后來我不斷嘗試,重新安裝依賴包之類的,偶然成功了一個,發(fā)現(xiàn)Cursor調(diào)用的是我電腦系統(tǒng)默認的Python,所以我判斷很可能是環(huán)境問題。
于是我找到系統(tǒng)環(huán)境變量查看,在用戶變量里找到了Cursor使用的系統(tǒng)Python
接著,還需要注意的是,每個MCP Server都有版本限制的,例如當前這個項目,找到.python-version就能看到要求是3.10
有了這個猜想,就馬上行動:
1.?卸載電腦本地的Python,注意還需要手動刪除掉上面系統(tǒng)變量里的路徑文件夾
2.?重新下載3.10包,默認位置,也就是前面系統(tǒng)變量提到的根目錄
3.?把系統(tǒng)變量里的 Python38 改成 Python310 因為結構一樣的,改個路徑名字就行
4.?重啟電腦,一定要重啟,這樣才能清掉緩存,讓Cursor能正確識別新的Python
5.?然后按以上的流程重新操作一遍,成功!
以上就是今天的所有內(nèi)容。
本文由人人都是產(chǎn)品經(jīng)理作者【餅干哥哥】,微信公眾號:【餅干哥哥數(shù)據(jù)分析】,原創(chuàng)/授權 發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,禁止轉(zhuǎn)載。
題圖來自Unsplash,基于 CC0 協(xié)議。
- 目前還沒評論,等你發(fā)揮!