安裝
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。