大模型(一)什么是 MCP?如何使用 Charry Studio 集成 MCP?

目錄

    • 一、什么是 MCP?
      • 1.1 🤔 開始之前的思考
      • 1.2 MCP 的定義
      • 1.3 MCP 結構
    • 二、MCP 的使用
      • 2.1 uv 的安裝
      • 2.2 MCP 廣場
      • 2.3 MCP 的配置
      • 2.4 MCP 的依賴安裝
      • 2.5 Charry Studio
      • 2.6 測試結果

背景:

MCP 這個概念大概是 2025 年上半年火起來的,每天都活躍在我所瀏覽的一些文章及評論區中。突然發現我對它僅有粗略的理解,我決定深入學習并記錄一下。

  • 官網地址: https://modelcontextprotocol.io/docs/getting-started/intro
  • GitHub地址:https://github.com/modelcontextprotocol

一、什么是 MCP?

1.1 🤔 開始之前的思考

在深入了解 MCP 之前,讓我們先思考幾個問題:

  • 🔍 你有沒有試過讓 ChatGPT 幫你查詢數據庫?
  • 🛠? 你有沒有想過讓 AI助手幫你操作 Excel 文件?
  • 🌐 你有沒有希望 AI 能夠調用你公司內部的 API?

如果答案是 “有”,那么你很可能遇到了這樣的困擾:AI模型很聰明,但它無法直接操作外部工具

1.2 MCP 的定義

MCP(Model Context Protocol),即 “模型上下文協議”,是一個開放、標準化的協議,由 Claude 的母公司 Anthropic 于 2024 年底開元發布的。簡單來說,MCP 就是 AI 大模型的標準化工具箱,大模型可以利用這些工具與外界互動、獲取信息并且完成具體任務(就像 USB-C 讓不同設備能夠通過相同的接口連接一樣)。MCP 的目標是創建一個通用標準,使 AI 應用程序的開發和集成變得更加簡單和統一。

從上圖可以看出,MCP 就是以更標準的方式讓 LLM Chat 使用不同工具。

1.3 MCP 結構

MCP 由三個核心組件構成:HostClientServer。讓我們通過一個實際場景來理解這些組件如何協同工作:

  1. Host:Claude Desktop 作為 Host,負責接收你的提問并與 Claude 模型交互。
  2. Client:當 Claude 模型決定需要訪問你的文件系統時,Host 中內置的 MCP Client 會被激活。這個 Client 負責與適當的 MCP Server 建立連接。
  3. Server:在這個例子中,文件系統 MCP Server 會被調用。它負責執行實際的文件掃描操作,作為你的桌面目錄,并返回找到的文檔列表。

整個流程是這樣的:

這種架構設計使得 Claude 可以在不同場景下靈活調用各種工具和資源,而開發者只需專注于開發對應的 MCP Server,無需關心 Host 和 Client 的實現細節。


二、MCP 的使用

下面我們通過一個簡單的例子來深入了解 MCP。

2.1 uv 的安裝

uv 是一款高性能的 Python 包管理工具,可以提供比傳統 pip 更快的包安裝和依賴管理體驗。

  • uv 官網: https://docs.astral.sh/uv/

在使用 MCP 之前,我們需要先安裝 uv ,大家可以使用如下命令檢查電腦上是否安裝了:

uv --version
  • 如果提示 uv 命令不存在,則需要安裝。
  • 如果出現了 uv 的版本號,則說明已安裝,如下所示:

如果未安裝 uv,我們可以使用如下命令進行安裝:

# Linux/macOS
curl -LsSf https://astral.sh/uv/install.sh | sh# Windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

確保 uv 安裝完畢之后,我們需要使用如下命令創建虛擬空間:

# 創建虛擬環境并激活
uv venv

虛擬空間創建完畢之后,就可以去 MCP 廣場挑選我們需要的 MCP 工具了。

2.2 MCP 廣場

跟大家推薦兩個常用的 MCP 廣場:

  • ModelScope MCP 廣場: https://modelscope.cn/mcp
  • 阿里云百煉 MCP 廣場: https://bailian.console.aliyun.com/?spm=a2c6h.12873639.article-detail.11.6cbb563fdn0kGe&tab=mcp#/mcp-market

這里我們使用 ModelScope MCP 廣場,在搜索框中輸入 mysql 搜索,點擊下面搜索到的 MySQL MCP 服務器,如下圖所示:

2.3 MCP 的配置

其實 MCP 配置采用的是 鍵值對 模式,其中:

  • key插件名稱
  • value 是插件的 執行命令參數個性化配置 等。

在 MCP 廣場的插件詳情頁面,我們可以在右側看到在 uv 下的配置文件,如下圖所示:

頁面中的 mcpServers 就是我們的大模型配置對象,對象下面的各個屬性就代表了不同的插件。所以我們需要的部分為 mcpServers 對象下的 mysql 對象部分,這部分才是插件的內容。

2.4 MCP 的依賴安裝

很多新手接觸 MCP 的一大誤區在于認為在 JSON 文件里面配置好了 MCP 之后,大模型就會自動下載 MCP 的依賴包(就像我們 IDE 里面的插件一樣),其實并不是!!

我們需要手動安裝 MCP 的依賴包,一般安裝方法會直接在 MCP 服務器的詳情頁面說明,如下所示:

如果電腦上沒有 pip 命令,我們可以在前面使用 uv,如下所示:

uv pip install mysql-mcp-server

安裝之后,需要再根據具體 MCP 服務器的需要進行相關環境變量的配置。(如果我們已經在 MCP 配置里面指定了具體的變量值,就不需要環境變量了,如下圖所示)

2.5 Charry Studio

這里我們以 Charry Studio 為例,具體說明 MCP 的使用。Charry Studio 是目前市面上最流行的 大模型 工具,免費開源,內部還可以集成各種 MCP 和大模型 API,推薦大家用一下,具體下載地址如下:

  • Charry Studio 官網下載: https://www.cherry-ai.com/download

下載安裝完 Charry Studio 之后,我們打開頁面,在點擊右上角的設置:

我們點擊 +添加服務器

選擇 從 JSON 導入

將如下內容,復制粘貼到框內,點擊確定即可。

(具體的 mysql_mcp_server 安裝路徑和數據庫信息需要根據個人情況修改。)

{"mcpServers": {"mysql": {"args": ["--directory","/Users/acgkaka/.venv/bin","run","mysql_mcp_server"],"command": "uv","env": {"MYSQL_HOST": "localhost","MYSQL_PORT": "3306","MYSQL_USER": "root","MYSQL_PASSWORD": "12345678","MYSQL_DATABASE": "my_db"}}}
}

可以看到我們的 MCP 服務器已經添加成功了,我們可以點擊右上角的開關進行打開。

(打開時會檢測 MySQL 數據庫的連接信息,如果連接失敗會無法打開)

打開成功之后,如下所示:

2.6 測試結果

做好以上步驟之后,我們就可以在大模型里面使用了。

我們先在 Charry Studio 中配置好自己的大模型 API Key,例如我這里使用的是 DeepSeek,點擊 點擊這里獲取密鑰,會自動打開 DeepSeek 的頁面。

  • Deep Seek API Key地址: https://platform.deepseek.com/api_keys

由于 Deep Seek API Key 只有在第一次創建的時候才能看到,我們這里可以先創建一個。

創建好之后,將 API Key 復制到 Charry Studio 中就可以正常使用了。

例如我們讓 DeepSeek 幫我們查詢一下 數據庫中表的數據,大模型會自動調用 MCP 服務器去查詢數據庫,生成相應的 SQL,然后執行之后得到數量為 174 的結果。

到這里你已經學會如何使用 MCP 了,趕緊去 MCP 廣場看看有沒有可以解決你痛點的 MCP 工具吧~

整理完畢,完結撒花~🌻





參考地址:

1.MCP (Model Context Protocol),一篇就夠了。https://zhuanlan.zhihu.com/p/29001189476

2.模型上下文協議——MCP,https://mcp.meetcoding.cn/

3.MCP是啥?技術原理是什么?一個視頻搞懂MCP的一切。Windows系統配置MCP,Cursor Cline使用MCP,https://www.bilibili.com/video/BV1AnQNYxEsy/

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/96864.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/96864.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/96864.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

源碼導航頁

一、Python捕捉動作發送到Unity驅動模型跟著動(獲取源碼) 二、AI輸入法源碼(獲取源碼) 三、Java企業級后臺管理系統-登錄授權角色菜單(獲取源碼) 四、Jetson實現純視覺導航(獲取源碼&#xff09…

HTTP/2 性能提升的核心原因

一、協議架構優化??二進制分幀(Binary Framing)?HTTP/2 將傳統文本格式的報文(如請求頭、數據體)拆分為獨立的二進制幀(Frame),每個幀包含流標識符(Stream ID)&#x…

vulnhub-billu_b0x靶機滲透

一、靶場詳情 Billu_b0x 是 Vulnhub 上的經典中等難度靶機,主要考察從信息收集到提權的完整滲透流程:先通過端口和目錄掃描發現網站入口,利用 SQL 注入或文件包含進入后臺并上傳 WebShell,再通過反彈 Shell 獲取低權限用戶&#…

C# 相機內存復用(減少圖像采集耗時)以及行數復用

背景我們在做圖像處理時,都會對一些相機的SDK進行開發完成圖像采集的操作,為后續圖像處理做準備。本文主要的目的是降低圖像采集的耗時,應用在一些高速檢測的場景下。利用循環隊列內存復用的方式,去掉或者減少新建內存的時間。線掃…

MTK Linux DRM分析(十三)- Mediatek KMS實現mtk_drm_drv.c(Part.1)

一、簡介 MediaTek (MTK) 的DRM驅動(基于mtk_drm_drv.c)是為MediaTek SoC(如MT6985、MT6895等)設計的顯示子系統(Display Subsystem)驅動程序。它實現了Linux DRM/KMS框架,支持多CRTC、多平面(plane)、連接器(connector)和編碼器(encoder)的顯示管道。驅動處理硬…

Wireshark筆記-DHCP流程與數據包解析

背景DHCP從大學上網絡課時就開始知道了,當時只知道,能讓計算機上網,要不就靜態配IP,要不就DHCP獲取,就能上網。2021年時,畢業好幾年了,想學習下網絡知識,就準備考一個軟考網工。按要…

Coze用戶賬號設置修改用戶頭像-前端源碼

概述 Coze Studio的用戶頭像修改功能是用戶賬號設置中的重要組成部分,允許用戶上傳和更新個人頭像。本文將深入分析該功能的前端實現,包括組件架構、文件上傳處理、API設計和用戶體驗優化等方面。 技術架構 整體架構設計 Coze Studio采用現代化的前端架構…

新手Github提交PR(Pull requests)詳細教程

一、什么是Pull requests? Pull Requests(PR)是代碼協作平臺(如 GitHub、GitLab 等)中的一種功能,用于提議將某分支的代碼變更合并到另一個分支(通常是主分支)。它允許開發者在合并…

本地通過跳板機連接無公網IP的內網服務器

本地環境:SSH client 堡壘機:有公網IP,有連接內網服務器的秘鑰 SSH配置: Host jmsHostName [堡壘機的公網IP]Port 22User rootIdentityFile ~/.ssh/id_rsaHost appHostName 10.0.0.14Port 22User rootIdentityFile ~/.ssh/svc-p…

B樹,B+樹,B*樹

下面我們來詳細講解一下 B樹、B樹、B*樹 這三種非常重要的多路平衡查找樹。它們在數據庫和文件系統中有著極其廣泛的應用。一、為什么需要這些樹結構?在開始之前,我們先思考一個問題:為什么已經有了二叉搜索樹(BST)、A…

汽車零部件工廠ESOP系統工業一體機如何選型

在汽車零部件工廠的生產管理中,ESOP 系統發揮著至關重要的作用。而工業一體機作為 ESOP 系統的關鍵硬件支撐,其選型的合理性直接關系到生產效率的提升、生產過程的精準控制以及生產數據的可靠采集與分析。因此,為汽車零部件工廠選擇一款適合的…

?維基框架 (Wiki Framework) 1.1.0 版本發布? 提供多模型AI輔助開發

介紹 多模型AI輔助開發? 維基框架1.1.0集成了主流AI引擎的統一接口,支持開發者按需調用不同模型的優勢能力: ?DeepSeek?:專注代碼生成與重構,擅長復雜業務邏輯實現 ?ChatGPT?:多模態推理能力,適用于…

LabVIEW調用MATLAB 的分形生成

LabVIEW 調用 MATLAB,可借前者可視化流程與硬件交互優勢,結合后者強數值計算、算法能力,復用成熟算法提速開發,還能靈活改代碼。但需匹配版本、裝運行環境,數據傳遞有性能損耗,腳本出錯需跨軟件調試。?優點…

ubuntu20.04開發ros2,使用docker安裝部署的詳細教程

學習docker的教程:可以直接在菜鳥教程上學習即可階段 0:系統檢查| 內容 | 建議 | |------|------| | 操作系統 | Ubuntu 22.04(與 ROS2 Humble 最匹配) | | 用戶權限 | 能執行 sudo |🧩 階段 1:在 Ubuntu 上…

SQL Server縮小日志文件.ldf的方法(適用于開發環境)

SQL Server縮小日志文件.ldf的方法(適用于開發環境) 核心概念:為什么日志文件會變大? 首先,理解原因至關重要。事務日志文件在以下情況下會增長: 大量操作:執行了大批量插入、更新或刪除操作&am…

2.3零基礎玩轉uni-app輪播圖:從入門到精通 (咸蝦米總結)

還在uni-app中的輪播圖組件頭疼嗎?看完這篇,讓你輕松掌握swiper的所有秘密!輪播圖的重要性 在現代移動應用開發中,輪播圖(Swiper)已成為展示焦點內容、廣告推廣和產品展示的首選組件。無論是電商平臺的商品…

FPGA學習筆記——AHT20溫濕度讀取并在串口顯示(IIC協議)

目錄 一、任務 二、分析 1.需要了解的 2.需要用到的模塊 3.流程分析 三、Visio圖 四、代碼 五、實驗現象 一、任務 使用IIC協議通信的AHT20,將溫濕度數據讀取出來,并在串口助手上顯示。 二、分析 1.需要了解的 需要了解IIC協議簡介 也可以看看E…

Pycharm SSH連接

添加遠程服務器文件——>設置——>項目下的Python解釋器——>添加解釋器——>SSH在彈出的彈窗中,輸入遠程的主機、端口和用戶名、一直下一步,得到如下圖所示的結果:選擇Conda 環境:第一步選擇Conda環境;第…

c# 讀取xml文件內的數據

好多大型的項目&#xff0c;把一些固定的參數都存在 xml文件里。創建c# winfom 項目&#xff0c;test_xml創建resources文件夾存放xml文件創建parameters.xml文件<root><test_xml><param name "threshold" value "128"/><param name …

Legion Y7000P IRX9 DriveList

Legion Y7000P IRX9 DriveList 聯想Y7000P驅動列表 驅動列表 intelwlan-TYY5057FK6MQBRF0.exe NVVGA-TYY5057F3M0H9RF0.exe RTKwlan-TYY5077FFSNECRF0.exe audio-TYY5057F4N1JARF0.exe chipset-TYY5037FB10X3RF0.exe hdr-TYY5027FXNF9AWF0.exe intelVGA-TYY5057F5R9J7RF…