MCP 初探 part 2 - MCP-CLI with OpenAI
我本意只是想拿 Claude Desktop App 當作 Multi-Agent 的前端,沒想到逐漸要脫離 Claude 生態系
在前一篇 [Claude] MCP (Model Context Protocol) - Filesystem setup and trial 簡單實驗了 Claude Desktop 整合了自己電腦的檔案系統,進行簡單的檔案搜尋,讀取,當然還有更多的本機應用可以結合。不過最大的問題是:
我沒有 Claude 付費帳戶,使用上有次數限制
Claude Desktop App 的設定僅能透過 `claude_desktop_config.json` 修改
很多 prompt 的設定是被隱藏無法進行修改
當初一開始想透過 Claude Desktop App 當作 Multi-Agent 的 Client,看來要先從頭開始。先複習一下 MCP (Model Context Protocol) 基本概念。
架構概念圖可以參考: https://modelcontextprotocol.io/docs/concepts/architecture
Hosts: LLM 應用程式/使用者介面, 例如 Claude Desktop
Clients: 與 MCP Server 建立連線與交換資訊
Servers: 提供 Tools, Context 等資訊
前一篇的範例就是:
Host: 我的 laptop 安裝了 Claude Desktop App
MCP Client: Claude Desktop App 裡面有 MCP Client (一個或是多個?不確定),並建立 filesystem mcp server 的連線
MCP Server: mcp/filesystem, git 等等
講完就沒了嗎?不是, 這次會利用 mcp-cli 來驗證,config 其實跟前一篇內容一樣。
準備好 config (`server_config.json`)
{
"mcpServers": {
"sqlite": {
"command": "uvx",
"args": ["mcp-server-sqlite", "--db-path", "test.db"]
},
"filesystem": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"--mount", "type=bind,src=/Users/jimmy.liao/Downloads/to_be_shared,dst=/projects/Downloads/to_be_shared",
"mcp/filesystem",
"/projects"
]
}
}
}
啟動方式, 用 uv run mcp-cli, 而且可以使用 OpenAI / Ollama !!
uv run mcp-cli --server filesystem --provider openai
`-- server <config 定義的 server>`
`-- provider <openai, ollama>`
大家應該知道其實還是透過 agent tool 的形式吧?
輸入 `chat` 進入對談模式
`list the files under /projects/Downloads/to_be_shared`
今天先到這。