首頁
>
資源
>
技術解析
/
產品發(fā)布

IoTDB MCP 獲官方收錄!從冷門協(xié)議到行業(yè)焦點:MCP 如何改變 AI 與數(shù)據(jù)的交互方式?

在之前發(fā)布的內容中,我們曾介紹過時序數(shù)據(jù)庫 IoTDB 實現(xiàn)了 IoTDB MCP Server 功能。借助該功能,用戶只需用自然語言描述需求,例如“查詢 2025 年 3 月 19 日所有基站的整流模塊電流平均值”,大模型便能自動調用相應的查詢函數(shù),直接與 IoTDB 交互并獲取所需數(shù)據(jù)。

值得一提的是,IoTDB MCP Server 已被多個社區(qū)/網站收錄:

  • 官方 MCP Server:Anthropic 公司開源,時序數(shù)據(jù)庫 IoTDB 已被 MCP 開源社區(qū)收錄在 GitHub README 的“官方集成”板塊中

  • 魔搭社區(qū):阿里云推出的 AI 大模型開源社區(qū),為開發(fā)者模型體驗、下載、調優(yōu)、訓練、推理、部署等提供一站式服務

  • Smithery 網站:集中收錄 MCP Server 的網站,提供多種 MCP Client 配置命令,可以直接復制

  • MCPSvr 網站:從 5ire 衍生出的開源項目,目的是提供一個開放的 MCP Servers 市場

為什么我們如此關注 MCP?為什么我們認為,MCP 為時序數(shù)據(jù)庫和 AI 的融合創(chuàng)新帶來了更加易用的解決方案?我們將為您一一說明。

01 快速回顧:MCP 是什么

MCP,全稱為 Model Context Protocol,即模型上下文協(xié)議,由 Anthropic 公司建立并開源。它就像是一座橋梁,一端連接著數(shù)據(jù)源,另一端連接著 AI 驅動的工具,極大地簡化了大模型與數(shù)據(jù)、工具及服務之間的交互方式。

MCP 的架構主要包含 MCP 服務器和 MCP 客戶端兩個核心部分。開發(fā)人員可以通過 MCP 服務器公開自己的數(shù)據(jù),這些數(shù)據(jù)可以來自本地的文件系統(tǒng)、數(shù)據(jù)庫,也可以來自諸如第三方 API 的遠程服務。連接到這些服務器的 AI 應用程序就是 MCP 客戶端,主要負責訪問這些數(shù)據(jù)。

MCP 的工作原理主要分為四步:

1. 用戶提出問題后,MCP 客戶端把問題和 MCP 服務器工具一起發(fā)給大模型。

2. 大模型返回需要調用哪些工具,MCP 客戶端調用對應工具,獲取數(shù)據(jù)執(zhí)行結果。

3. MCP 客戶端將本次結果、用戶提出的問題及工具再發(fā)給大模型。

4. 重復以上步驟,直到大模型返回完整的問題解答,結果通過 MCP 客戶端返回給用戶。

MCP是什么圖1-20250423.png

02 為什么所有 AI 玩家都在討論 MCP?

為什么 MCP 成為當下大熱點?主要有以下幾個原因:

(1) 增強大模型能力

以往的大模型如同一個知識淵博卻被困在屋子里的人,只能憑借靜態(tài)知識庫中的公開知識來回答問題,無法直接獲取實時數(shù)據(jù)或與外部系統(tǒng)交互。比如不能直接訪問數(shù)據(jù)庫中的最新信息,也無法借助外部工具完成特定任務。這使得大模型基于本地數(shù)據(jù)庫進行訓練并實現(xiàn)私有化部署變得非常困難。

MCP 的出現(xiàn)打破了這種局限,賦予大模型更多“外掛工具”。大模型借此能夠連接數(shù)據(jù)庫、訪問本地文件、調用第三方 API 服務,進而提升自身的性能和表現(xiàn)。大模型不再僅僅是“公用的知識專家”,還成為了“私人的數(shù)據(jù)助手”。如此一來,用戶便能基于 IoTDB 存儲的工業(yè)時序數(shù)據(jù),真正將時序大模型應用到實際場景中。

(2) 簡化交互流程

在 MCP 出現(xiàn)之前,開發(fā)者要想讓大模型與不同數(shù)據(jù)源交互,需為每個數(shù)據(jù)源編寫單獨的連接器。這就好比想要連接不同的電器設備,卻要為每個設備準備特定的插頭,非常麻煩。MCP 制定了統(tǒng)一規(guī)范,為所有數(shù)據(jù)源提供了一個類似“通用插頭”或“USB 接口”的標準化接口。借助這個接口,無論是連接數(shù)據(jù)庫、第三方 API,還是本地文件等各類外部資源,都能輕松實現(xiàn),既簡單又高效。

因此,MCP 在時序數(shù)據(jù)庫 IoTDB 的功能實現(xiàn)無疑滿足了用戶使用時序大模型時的多樣化需求,減少了時序大模型的使用和學習成本。

(3) 打破數(shù)據(jù)孤島

傳統(tǒng)的數(shù)據(jù)集成方式很容易形成數(shù)據(jù)孤島。不同的數(shù)據(jù)庫、文件系統(tǒng)和服務,因各自的接口、協(xié)議和數(shù)據(jù)格式存在差異,與其他數(shù)據(jù)源之間常常缺乏連接,導致大模型無法充分利用數(shù)據(jù)資源。MCP 的出現(xiàn)打破了這些數(shù)據(jù)孤島之間的壁壘,大模型得以用統(tǒng)一的方式訪問各類數(shù)據(jù)源,數(shù)據(jù)的流動和共享變得更加便捷。

工業(yè)場景時序數(shù)據(jù)管理可能涉及設備管理、故障診斷、數(shù)字孿生等多類系統(tǒng),利用 IoTDB MCP Server,時序大模型能夠實現(xiàn)不同系統(tǒng)數(shù)據(jù)的集成、訪問和運用,在提升時序大模型結果準確性的同時,為企業(yè)的決策提供更全面、準確的支持。

MCP是什么圖2-20250423.png

03 IoTDB MCP 新增:樹表雙模型支持

通過上面的詳細解讀,大家應該已經理解了 MCP 對于時序大模型深度應用的重要性。MCP 讓 IoTDB 的時序大模型“看得懂”實際場景需求,用戶使用時序大模型也就會更加絲滑,能通過 IoTDB 時序大模型做到的查詢計算也就會越來越深入了。

在之前對 IoTDB MCP Server 功能的介紹中,我們詳細解讀了 MCP 在 IoTDB 表模型數(shù)據(jù)庫架構下的功能、應用場景以及對應的使用流程。現(xiàn)在,我們很高興地宣布,IoTDB MCP 針對樹模型架構也完成了功能實現(xiàn),目前 MCP 已支持樹表雙模型的使用!

針對 MCP 在 IoTDB 樹模型方向實現(xiàn)的功能情況,我們總結如下:

(1) 核心功能

1. 查詢工具

  • select_query:執(zhí)行 SELECT 查詢語句,從數(shù)據(jù)庫中讀取數(shù)據(jù),大模型提供一個 SELECT SQL 查詢語句作為輸入,函數(shù)就會返回查詢結果,大模型會讀取到表的文本形式(列以逗號分隔)。例如,如果你想要查詢某個設備在過去一周內的溫度數(shù)據(jù),可以用自然語言描述這個需求,大模型就會調用 select_query 函數(shù),傳入相應的 SQL 查詢語句,然后返回溫度數(shù)據(jù)。

2. 元數(shù)據(jù)工具

  • metadata_query:執(zhí)行測點管理中的查詢語句,比如查看或統(tǒng)計數(shù)據(jù)庫、設備模板、時間序列等信息,大模型提供一個 SHOW / COUNT 語句作為輸入,函數(shù)會返回元數(shù)據(jù)的詳細信息或統(tǒng)計結果。例如,可以用自然語言詢問某個數(shù)據(jù)庫中有哪些時間序列,大模型就會調用 metadata_query,并生成 SQL 語句 SHOW timeseries root.xx.** 作為輸入,然后獲取時間序列信息。

(2) 使用流程

使用 IoTDB MCP Server 需要滿足一些前提條件:

  • 安裝 Python,并使用 uv 包管理器(pip install uv)

  • 安裝并運行 IoTDB 數(shù)據(jù)庫實例(可點擊下載)

  • 安裝 IoTDB MCP Server 的依賴項

接下來,按照以下步驟進行操作:

1. 克隆倉庫

打開終端,運行以下命令克隆 IoTDB MCP Server 的代碼倉庫:

git clone https://github.com/apache/iotdb-mcp-server.git
cd iotdb_mcp_server

2. 創(chuàng)建虛擬環(huán)境

使用 uv 創(chuàng)建虛擬環(huán)境,并激活它:

uv venv
source venv/bin/activate  # 或在 Windows 上使用 venv\Scripts\activate

3. 安裝依賴

在虛擬環(huán)境中,運行以下命令安裝開發(fā)依賴:

uv sync

4. 配置集成(以 Claude Desktop 為例)

根據(jù)你的操作系統(tǒng),找到 Claude Desktop 的配置文件:

  • 在 MacOS 上,位置為 ~/Library/Application Support/Claude/claude_desktop_config.json

  • 在 Windows 上,位置為 %APPDATA%/Claude/claude_desktop_config.json

在配置文件中,添加以下內容,確保將 YOUR_REPO_PATH 替換為你的倉庫路徑,env 配置為實際的 IoTDB 實例信息:

{
  "mcpServers": {
    "iotdb": {
      "command": "uv",
      "args": [
        "--directory",
        "YOUR_REPO_PATH/src/iotdb_mcp_server",
        "run",
        "server.py"
      ],
      "env": {
        "IOTDB_HOST": "127.0.0.1",
        "IOTDB_PORT": "6667",
        "IOTDB_USER": "root",
        "IOTDB_PASSWORD": "root",
        "IOTDB_SQL_DIALECT": "tree"
      }
    }
  }
}

如果你需要找到 uv 的完整路徑,可以在 MacOS/Linux 上運行 which uv,在 Windows 上運行 where uv。

5. 打開 Claude Desktop,開始體驗

正式使用前請?zhí)崆皽蕚浜脭?shù)據(jù),也可以直接使用下方的 SQL 快速錄入測試數(shù)據(jù)。

通過 start-cli.sh/bat 進入 IoTDB CLI,并執(zhí)行以下 SQL 語句:

create database root.test
create device template battery_data aligned (load_current FLOAT encoding=RLE, battery_current FLOAT encoding=RLE)
set device template battery_data to root.test.station_001
insert into root.test.station_001(timestamp, load_current, battery_current) values(1, 60.1, 10.2)
insert into root.test.station_001(timestamp, load_current, battery_current) values(2, 61.1, 10.3)
insert into root.test.station_001(timestamp, load_current, battery_current) values(3, 59.2, 9.1)
insert into root.test.station_001(timestamp, load_current, battery_current) values(4, 61.5, 10.9)
insert into root.test.station_001(timestamp, load_current, battery_current) values(5, 60.4, 10.2)
insert into root.test.station_001(timestamp, load_current, battery_current) values(6, 58.5, 10.8)

(3) 使用場景

場景1:自然語言查詢數(shù)據(jù)庫

MCP是什么圖3-20250423.png

場景2:結構分析

MCP是什么圖4-20250423.png

04 總結

MCP 技術的突破性出現(xiàn),正在重塑大模型生態(tài)的底層架構,其標準化交互機制有望成為 AI 世界的“通用語言”。IoTDB MCP Server 作為 MCP 技術的成功實踐,在極大簡化數(shù)據(jù)查詢流程的同時,為時序數(shù)據(jù)處理提供了標準化的大模型接入方案。這使得工業(yè)設備數(shù)據(jù)能夠直接參與模型訓練與推理,充分釋放了時序數(shù)據(jù)在 AI 時代的應用潛能。目前,IoTDB MCP Server 已被收錄于 MCP 官方社區(qū)和多個 MCP 資源網站。

目前,MCP 功能已在 GitHub 開源,我們誠邀更多朋友參與試用,并提供寶貴意見!

05 附:官方收錄鏈接

MCP是什么圖5-20250423.png

MCP 開源社區(qū)收錄 IoTDB:https://github.com/modelcontextprotocol/servers

MCP是什么圖6-20250423.png

阿里云魔搭社區(qū)收錄 IoTDB MCP Server:https://modelscope.cn/mcp/servers/@apache/iotdb-mcp-server

MCP是什么圖7-20250423.png

Smithery 網站收錄 IoTDB MCP Server:https://smithery.ai/server/@apache/iotdb-mcp-server

MCP是什么圖8-20250423.png

MCPSvr 網站收錄 IoTDB MCP Server:https://mcpsvr.com/

更多內容推薦:

? 下載時序數(shù)據(jù)庫 IoTDB 開源版

? 了解如何使用 時序數(shù)據(jù)庫 IoTDB AI 能力