MCP

Everything MCP:給用戶端作者用 npx 跑通協議特性

適合正在做 MCP 用戶端、需要一台能練習 tools/prompts/resources/sampling 的測試伺服器的人,它不是生產工具。

官方來源 · Everything MCP Server

安裝

npx @modelcontextprotocol/server-everything

適合誰

正在實作或除錯 MCP 用戶端、需要一台能把協議功能跑一遍的測試伺服器的人。它明確「not intended to be a useful server」,只用來 exercise MCP 協議特性。適合能用 npx 拉起 @modelcontextprotocol/server-everything、並接受回傳值可能是演示資料而不是業務結果的人。不適合把它當生產抓取、倉庫或搜尋工具。官方頁面: https://github.com/modelcontextprotocol/servers/tree/main/src/everything

3 分鐘完成第一次嘗試

只走一條官方路徑:預設 stdio。

前置:本機有 npx。這是給用戶端建構者的測試床,不是給最終業務用的。

安裝與設定位置:在 MCP 用戶端把啟動命令寫成:

npx @modelcontextprotocol/server-everything

等價的設定片段是 command: npx,參數 -y 與 @modelcontextprotocol/server-everything。

低風險動作:連上之後,讓用戶端列出該伺服器宣告的 tools,然後呼叫清單裡的第一個 tool。不要手寫一個文件裡沒出現的工具名。伺服器還實作 prompts、resources、sampling;如果用戶端把 prompts 或 resources 列了出來,也可以改成取出第一條 prompt 或讀一條 resource。這些呼叫的目的是驗證用戶端能否完成一次真實的 tool / prompt / resource 往返,而不是完成業務任務。

成功訊號:用戶端列出至少一類(tools、prompts 或 resources),並且你選中的那一次呼叫回傳了內容。空列表或行程立刻退出都算未完成。若失敗,先確認命令是預設 stdio,而不是已棄用的 HTTP+SSE。

使用案例

案例一:驗證 tools。對應「It implements prompts, tools, resources, sampling, and more」。用測試用戶端走一遍 list tools → call tool。回傳值可能是佔位或演示載荷,只能用來判斷用戶端解析是否正確。證據沒有給出任何一個 tool 的名字或參數,所以案例止於「對清單中真實出現的 tool 發一次呼叫」。

案例二:驗證 prompts、resources 或 sampling。同一句能力說明。讓用戶端取出一條 prompt,或讀取一條 resource;若用戶端實作了 sampling,再觀察伺服器是否觸發取樣流程。證據只點到能力類別,沒有寫出 prompt 名稱、resource URI 或 sampling 的訊息格式。缺的部分以用戶端執行時列出的物件為準,不要編 URI。

使用邊界

這是測試伺服器,不是有用的業務伺服器。不要用它存取真實客戶資料,也不要指望穩定的業務語意。

HTTP+SSE Transport 已於 2025-03-26 棄用。源碼目錄下的 npm install 與 npm run start:sse 不是第一次嘗試路徑。

官方推薦是 npx 預設 stdio。即便某次 tool 呼叫看起來像唯讀,測試實作仍可能發通知、要取樣或寫入演示資源,不能當成零副作用。沒有用戶端名單,也沒有託管 URL。