保姆級教程:讓AI操作數(shù)據(jù)庫—Cusor配置Sqlite MCP Server|遇到了一個大坑,全網(wǎng)沒人說??!

0 評論 2495 瀏覽 1 收藏 14 分鐘

許多初學者在使用AI工具時常常遇到一個痛點:雖然AI能夠提供指導(dǎo),但實際操作仍然需要手動完成。本文將為你帶來一個“保姆級”教程,介紹如何通過配置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ù)庫?。。?/p>

這就是我們今天要介紹的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

設(shè)置步驟

總共分成三步

下載SQL Lite MCP Server

用到的項目地址是:https://github.com/modelcontextprotocol/servers/tree/main/src/sqlite

但我直接到主頁https://github.com/modelcontextprotocol/servers/tree/main 把整個servers 都下載了

解壓到了這里:

配置MCP服務(wù)器

你需要創(chuàng)建一個MCP配置文件,有兩種位置可以放置:

  • 項目配置:在你的項目目錄下創(chuàng)建?.cursor/mcp.json?文件(僅在該項目中可用)
  • 全局配置:在你的主目錄下創(chuàng)建?~/.cursor/mcp.json?文件(在所有Cursor工作區(qū)可用)這里的主目錄是linux的,windows的話可以直接到Cursor的設(shè)置里打開添加。

這里我是先用在單個項目的測試上,就用的項目配置:

配置SQLite MCP服務(wù)器

根據(jù)GitHub倉庫中的信息,SQLite MCP服務(wù)器有兩種運行方式:

方式一:使用uv(本地運行)

UV 是一個Python的包,我們先安裝他

pip install uv
pip install httpx mcp

把以下配置復(fù)制黏貼到剛生成好的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前需要先構(gòu)建鏡像:

docker build -t mcp/sqlite .

3. 查看配置好的MCP Server,重啟Cursor

找到設(shè)置,如果能看到下面圖里的樣式,就說明Cursor識別成功了,否則就是Json文件哪里填錯了,例如windows的地址,是不能直接復(fù)制文件窗口上的,否則會有紅線報錯,這樣Cursor是識別不到MCP Server的

其次,還要觀察名字前面是否有綠色的燈,綠色才證明開著。

這里我一開始遇到一個大坑,一直不亮燈,甚至顯示client closed,查了各種網(wǎng)絡(luò)都沒有人說,我自己折騰了半天才解決。這個坑,如果你也遇到了,就看文末。

順利的話,就重啟Cursor,打開的時候會自動彈出命令行窗口

這是Cursor在替你運行 MCP Server,注意不要關(guān)閉,讓它一直開著。

使用SQLite MCP服務(wù)器的工具

配置好后,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è)務(wù)見解

在Cursor的Agent中可以直接引用這些工具。Agent會自動檢測可用的MCP工具,或者你可以明確告訴Agent使用特定的工具。

接下來使用就很簡單了,例如我這個項目需要新增一些表格,就直接說:

當前項目是一個ai批量改寫內(nèi)容管理系統(tǒng),每篇內(nèi)容都有id
現(xiàn)在我需要新增一個內(nèi)容的多版本管理功能
請你幫我在數(shù)據(jù)庫中新建好對應(yīng)的多版本表格

然后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í)行前,手動做一個備份,如果有問題,能馬上恢復(fù)!??!

一個大坑??!

遇到一個大坑,因為我是用Anaconda的多環(huán)境管理,包括構(gòu)建的uv也是用的虛擬環(huán)境,導(dǎo)致我一直運行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 因為結(jié)構(gòu)一樣的,改個路徑名字就行

4.?重啟電腦,一定要重啟,這樣才能清掉緩存,讓Cursor能正確識別新的Python

5.?然后按以上的流程重新操作一遍,成功!

以上就是今天的所有內(nèi)容。

本文由人人都是產(chǎn)品經(jīng)理作者【餅干哥哥】,微信公眾號:【餅干哥哥數(shù)據(jù)分析】,原創(chuàng)/授權(quán) 發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,禁止轉(zhuǎn)載。

題圖來自Unsplash,基于 CC0 協(xié)議。

更多精彩內(nèi)容,請關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號或下載App
評論
評論請登錄
  1. 目前還沒評論,等你發(fā)揮!