引言

你好。使用MCP進行資料分析讓我感到非常感動,因此想和大家分享。
我在內部團隊中運行一個僅限團隊成員使用的LLM服務(以下簡稱部內工具)。
我一直想知道每日的使用情況、哪些LLM未被使用且應該替換、常用的用戶是誰等等,但實際上執行SQL進行分析總讓我感到繁瑣。
(因為部內工具的數據庫使用SQLite)自從導入SQLite MCP後,只需要用日語指示想要分析的內容,這些資料分析便能在短短兩分鐘內完成!總之,進行資料分析變得輕鬆且樂趣無窮。
本文將說明MCP的導入及實際的分析方式。

作者的環境

  • M4 Macbook Pro: Sequoia 15.6.1
  • Claude Code: 1.0.100
  • sqlite3: 3.43.2
  • Node.js: 21.6.2
  • npx: 10.5.2

前提條件

我是在Claude Code中使用MCP。請根據您使用的客戶端(例如Claude Desktop等)調整MCP的設置方法。
由於MCP伺服器需要通過npx啟動,因此需要安裝Node.js。安裝Node.js後,請使用npx --version確認顯示版本號。

數據庫相關MCP的導入

這裡將介紹主要RDB的MCP連接方法。
將介紹能夠連接MySQL、PostgreSQL、SQL Server、MariaDB及SQLite的MCP伺服器DBHub
看起來它還支持SSL連接和SSH隧道,如果您有興趣,可以查看GitHub頁面。

要在Claude Code中啟動MCP,需要在項目根目錄中寫入.mcp.json
各個數據庫的.mcp.json寫法如下所示。

SQLite的情況

請將sqlite://後面的DB文件進行替換。

{
    "mcpServers": {
        "dbhub": {
            "command": "npx",
            "args": [
                "-y",
                "@bytebase/dbhub",
                "--transport",
                "stdio",
                "--dsn",
                "sqlite:///Users/yshikeda/sqlite-mcp-test/conversations.db"
            ]
        }
    }
}

PostgreSQL的情況

請替換用戶名、密碼、主機及端口。

{
    "mcpServers": {
        "dbhub": {
            "command": "npx",
            "args": [
                "-y",
                "@bytebase/dbhub",
                "--transport",
                "stdio",
                "--dsn",
                "postgres://user:password@localhost:5432/dbname?sslmode=disable"
            ]
        }
    }
}

MySQL的情況

請替換用戶名、密碼、主機及端口。

{
    "mcpServers": {
        "dbhub": {
            "command": "npx",
            "args": [
                "-y",
                "@bytebase/dbhub",
                "--transport",
                "stdio",
                "--dsn",
                "mysql://user:password@localhost:3306/dbname?sslmode=disable"
            ]
        }
    }
}

為安全執行而設定的事項

[注意] DBHub僅使用execute_sql權限執行,因此如果在Claude Code中自動批准此權限,SQL將會被隨意執行。

因此,為了防止資料被隨意修改,我們將DBHub設置為READ模式。
請在前面的 .mcp.json中加入--readonly

    "args": [
        "-y",
        "@bytebase/dbhub",
        "--readonly",
        "--transport",
        ...
    ]

這樣將無法插入資料或
截圖 2025-09-09 11.53.08.png
刪除表格,否則將出現錯誤。
截圖 2025-09-09 11.54.42.png

資料分析示範

部內工具的數據庫表結構如下。

  • users - 用戶信息
  • conversations - 對話數據
  • messages - 消息數據
  • shared_conversations - 共享對話
  • 其他FTS(全文搜索)相關表

我們將分析每日的使用情況、哪些LLM未被使用且應該替換、常用的用戶是誰。

提示:建議最初執行「請確認表格結構」,然後再發送想要分析的內容,成功的機率會更大。

在項目根目錄輸入claude執行。啟動Claude Code後,輸入/mcp以檢查是否能夠連接到MCP伺服器。
截圖 2025-09-09 13.05.42.png
顯示連接成功則正常。

每日使用情況是?

我試圖詢問請告訴我每日的使用情況
截圖 2025-09-09 12.06.01.png
很好,日別的會話數據已經正確顯示。

最常使用的模型是什麼?

我詢問哪個LLM最常使用?
截圖 2025-09-09 13.08.28.png
不錯,顯示了使用率。

誰是常用的用戶?

我詢問誰是常用的用戶?
截圖 2025-09-09 13.12.21.png
已經正確顯示了每個用戶ID,真的很方便。

總結

  • 僅通過自然的日語指示即可自動生成並執行SQL查詢
  • 資料分析變得更簡單且富有樂趣
  • 即使沒有複雜的SQL知識,也能進行高階分析

通過活用MCP,資料分析的門檻顯著降低,並且讓分析變得有趣。希望大家都來試試。


原文出處:https://qiita.com/ssc-yshikeda/items/67113394e8deffcf4531


精選技術文章翻譯,幫助開發者持續吸收新知。

共有 0 則留言


精選技術文章翻譯,幫助開發者持續吸收新知。
🏆 本月排行榜
🥇
站長阿川
📝10   💬6   ❤️11
423
🥈
我愛JS
📝1   💬5   ❤️4
89
🥉
AppleLily
📝1   💬4   ❤️1
48
#4
💬2  
6
#5
💬1  
5
評分標準:發文×10 + 留言×3 + 獲讚×5 + 點讚×1 + 瀏覽數÷10
本數據每小時更新一次