如何在 Claude Desktop 中建立 MCP 伺服器——實用指南

CometAPI
AnnaNov 16, 2025
如何在 Claude Desktop 中建立 MCP 伺服器——實用指南

自 Anthropic 公開推出以來 模型上下文協定 (MCP) on 2024 年 11 月 25 日MCP 已迅速從概念發展成為實際的生態系統:開放的規範和多個參考伺服器已可用,社區實現(內存伺服器、文件系統訪問、Web 獲取器)已發佈在 GitHub 和 NPM 上,並且 MCP 已在諸如 等客戶端中得到支援。 桌面版 Claude 以及第三方工具。該協議已經發展完善(規格和伺服器範例已更新至 2025 年),供應商和工程師正在發布更安全、更有效率的代幣整合模式。

本文將引導您完成 MCP 伺服器的建置、連線等步驟。 克勞德桌面以及你在生產過程中需要的實用/安全/記憶體方面的技巧。

什麼是模型上下文協定(MCP)?

一個簡單易懂的定義

模型上下文協定(MCP)是一種 開放、標準化的協議 這使得LLM主機(運行模型的應用程序,例如Claude Desktop)能夠輕鬆地調用公開外部服務。 資源 (文件,資料庫行) 工具 (模型可以呼叫的函數),以及 提示 (模型可以使用的模板)。 MCP 不採用 N×M 整合(每個模型與每個工具整合)的方式,而是提供一致的客戶端-伺服器架構和運行時契約,以便任何支援 MCP 的模型主機都可以使用任何符合 MCP 標準的伺服器——這樣,開發人員只需建立一次服務,即可讓任何支援 MCP 的模型或 UI(例如 Claude Desktop)使用它們。

為什麼MCP現在很重要

自 Anthropic 於 2024 年底開源 MCP 以來,該協定已迅速成為工具整合(例如 Claude、VS Code 擴充功能和其他代理程式環境)的事實標準互通層。 MCP 減少了重複工作,加快了連接器(例如 Google Drive、GitHub、Slack 等)的開發,並簡化了將持久性記憶體儲存附加到助理的過程。

MCP架構是什麼?它是如何運作的?

從宏觀層面來看,MCP 定義了三個角色組和幾種互動模式。

核心元件:客戶端、伺服器和註冊表

  • MCP客戶端(主機): 需要上下文資料的LLM主機或應用程式——例如Claude Desktop、VS Code代理或Web應用程式——會發現並連接到一個或多個MCP伺服器。
  • MCP 伺服器(資源提供者): 透過 MCP 模式公開資源(檔案、記憶體、資料庫、操作)的網路服務。伺服器聲明其功能並提供客戶端可以呼叫的端點。
  • 註冊/發現: 可選組件或設定文件,可協助用戶端發現可用的 MCP 伺服器、列出功能以及管理權限或安裝(桌面「擴充功能」是實現此功能的一個 UX 層)。

資訊流與能力協商

MCP 交互作用通常遵循以下模式:

  1. 發現/註冊: 用戶端了解可用的伺服器(本機伺服器、網頁伺服器或精選註冊表)。
  2. 能力公告: 伺服器共享一個清單,其中描述了資源、方法和授權要求。
  3. 請求/回應: 客戶端發出結構化請求(例如,「讀取檔案 X」、「在記憶體中搜尋 Y」或「使用這些檔案建立 PR」),伺服器以類型化的上下文資料回應。
  4. 行動結果和直播: 伺服器可以傳輸結果流或提供長時間運行的操作端點。此規範定義了類型化資源描述符和回應的模式。

安全模型和信任邊界

MCP有意將控制介面標準化,以便LLM能夠處理使用者資料並執行操作。這種權限需要嚴密的安全控制:

  • 明確的使用者同意/提示 當伺服器可以存取私有資料或執行特權操作(例如,寫入儲存庫)時,建議使用此功能。
  • 最小權限原則: 伺服器應聲明最小權限範圍,客戶端應僅請求所需的功能。
  • 傳輸和認證: 對於敏感集成,請使用 TLS、令牌化憑證和僅限本地的端點。社群和平台供應商(例如 Windows 中的 Microsoft)正在嘗試使用註冊表和使用者介面功能來降低風險。

為什麼要將 Claude 與 MCP 伺服器整合?

將 Claude 與 MCP 伺服器集成,可以解鎖三類實用功能:

即時、可操作的背景信息

Claude 不會像傳統方式那樣將過時的快照複製並嵌入到提示訊息中,而是可以在查詢時請求最新的上下文資訊(文件、對話歷史記錄、資料庫行)。這意味著更少的近似檢索和更及時的輸出。 Anthropic 的示範展示了 Claude 如何執行諸如建立 GitHub PR 或透過 MCP 讀取本機檔案等操作。

小型、可組合的工具,而不是一個巨大的適配器

您可以編寫功能各異的 MCP 伺服器——例如,一個用於日曆,一個用於檔案系統,一個用於向量記憶體儲存——並在不同的 Claude 實例或用戶端(桌面、IDE、Web)中重複使用它們。這種模組化設計比客製化整合更具可擴展性。

持久且標準化的記憶

MCP 支援記憶體服務:持久性儲存用於編碼對話歷史、個人偏好和結構化使用者狀態。由於 MCP 標準化了資源模型,多個客戶端可以重複使用同一個記憶體伺服器,並在應用程式之間保持一致的使用者上下文。目前已有多種社區記憶體服務和擴充模式。

更好的使用者體驗和本地控制(Claude Desktop)

在桌面用戶端上,MCP 允許本機伺服器(經使用者許可)直接存取使用者的檔案系統,因此無需使用雲端 API 即可實現對隱私敏感的整合。 Anthropic 的桌面擴充功能就是一個簡化在本機上安裝和發現 MCP 伺服器的範例。

如何建立 MCP 伺服器

開始之前你需要什麼

  1. 克勞德桌面請為您的作業系統安裝最新版本的 Claude Desktop,並確保在設定中啟用 MCP/擴充功能。某些功能可能需要付費方案(Claude Pro 或同等方案)。
  2. 開發者機器:Node.js(建議版本 >= 16/18)或 Python 3.10+,如果需要將本機伺服器暴露到網際網路進行測試,則需要 ngrok 或本機隧道解決方案。生產環境中請使用 TLS。
  3. MCP 專案在主文件和 GitHub 倉庫中提供了 SDK 和範本;請按照文件/倉庫中的官方說明安裝 Python 或 Node SDK。

選項 A — 安裝現有的(範例)MCP 伺服器

Anthropic 提供範例伺服器,包括記憶體、檔案系統和工具。

克隆參考伺服器:

git clone https://github.com/modelcontextprotocol/servers.git
cd servers

裡麵包含以下資料夾:

filesystem/
fetch/
memory/
weather/

安裝範例伺服器:

cd memory
npm install
npm run dev

這將啟動 MCP 伺服器,通常位於:

http://localhost:3000

確認清單端點有效,並且呼叫該工具傳回正確類型的 JSON。

選項 B — 建立您自己的 MCP 伺服器(建議用於學習)

1)建立專案資料夾

mkdir my-mcp-server
cd my-mcp-server
npm init -y

2) 安裝 MCP 伺服器 SDK

npm install @modelcontextprotocol/server

3)建立基本伺服器文件

創建 server.js:

touch server.js

貼上最簡 MCP 伺服器實作代碼:

import { createServer } from "@modelcontextprotocol/server";

const server = createServer({
  name: "my-custom-server",
  version: "0.1.0",

  tools: [
    {
      name: "hello_world",
      description: "Returns a simple greeting",
      input_schema: {
        type: "object",
        properties: {
          name: { type: "string" }
        },
        required: 
      },
      output_schema: {
        type: "object",
        properties: {
          message: { type: "string" }
        }
      },
      handler: async ({ name }) => {
        return { message: `Hello, ${name}!` };
      }
    }
  ]
});

server.listen(3000);
console.log("MCP server running on http://localhost:3000");

這是一個 完整的 MCP 伺服器 展示單一工具: hello_world.

如何將 Claude Desktop 連接到 MCP 伺服器?

以下是建立簡單 MCP 伺服器並將其註冊到 Claude Desktop 的實用步驟。本節著重於實作操作:涵蓋環境設定、建立伺服器清單、公開客戶端所需的端點以及設定 Claude Desktop 以使用該伺服器。

1)開啟 Claude Desktop 開發人員連線區域

在 Claude Desktop 中: 設定 → 開發者 設定 → 連接器 (取決於客戶端版本)。可選擇新增遠端/本機 MCP 伺服器或「新增連接器」。個人使用者介面可能因版本而異—如果您看不到該選項,請查看桌面「開發人員」功能表或最新的版本說明。

Claude Desktop 中的 MCP 伺服器

2) 如果您正在設定本機伺服器:建立或找到設定檔

啟動 Claude 桌面應用程式後,它會自動將所有找到的 MCP 伺服器設定到名為 ClaudeDesktopConfig.json 的檔案中。第一步是找到並開啟此文件,如果該文件尚不存在,則建立它:

對於 Windows 用戶,該檔案位於「%APPDATA%\Claude\claude_desktop_config.json」下。

對於 Mac 用戶,該檔案位於「~/Library/Application Support/Claude/claude_desktop_config.json」下。

3) 將伺服器新增至 Claude Desktop

有兩種 UX 模式可以讓 Claude Desktop 了解您的 MCP 伺服器:

桌面擴充程式/一鍵安裝程序Anthropic 提供了「桌面擴充功能」文檔,其中包含清單和安裝程序,使用者可以透過一鍵式流程新增伺服器(建議用於更廣泛的分發)。您可以打包清單和伺服器元數據,以便輕鬆安裝。

**本機伺服器註冊(開發者模式)**用於本地測試:

  • 將清單檔案放在本機常用路徑下,或將其部署到以下位置: https://localhost:PORT/.well-known/mcp-manifest.json.
  • 在 Claude Desktop 設定中,開啟 MCP/擴充面板,選擇“新增本機伺服器”或“透過 URL 新增伺服器”,然後貼上清單 URL 或代幣。
  • 當客戶端提示時,授予所需的權限。 Claude 將枚舉伺服器資源並將其顯示為可用的工具/記憶體。

現在我們選擇安裝本地MCP:添加一個 mcpServers 部分 列出您的伺服器名稱以及啟動它的絕對路徑/命令。儲存並重新啟動 Claude Desktop。

重新啟動後,Claude 的使用者介面將顯示 MCP 工具(搜尋和工具圖示),並允許您測試已公開的操作(例如,「薩克拉門託的天氣如何?」)。如果主機未偵測到您的伺服器,請諮詢… mcp.log 文件和 mcp-server-<name>.log 用於 STDERR 輸出。

4)測試集成

在 Claude 聊天視窗中,輸入:

Call the hello_world tool with name="Alice"

Claude 將呼叫您的 MCP 伺服器並使用工具輸出進行回應。

如何在 MCP 上實現記憶體服務(進階技巧)?

記憶體服務是功能最強大的 MCP 伺服器之一,因為它們能夠跨會話持久化並提供使用者上下文。以下最佳實踐和實現技巧參考了規格、Claude 文件和社群模式。

記憶體資料模型和設計

  • 結構化與非結構化: 同時儲存結構化資訊(例如姓名、偏好標記)和非結構化對話片段。使用類型化元資料實現快速篩選。
  • 分塊和嵌入: 將長文檔或對話拆分成語義連貫的片段,並儲存向量嵌入以支援相似性搜尋。這可以提高回想率並減少檢索過程中的詞元使用量。
  • 近因效應和顯著性訊號: 記錄時間戳記和顯著性評分;允許查詢優先考慮最近或高顯著性記憶。
  • 隱私標籤: 為專案新增敏感度標籤(私人、分享、臨時),以便客戶可以提示徵得同意。

記憶體操作的 API 模式

至少實現以下三項操作:

  • write接受帶有元資料的記憶體項,返回確認資訊和儲存 ID。
  • query接受自然語言查詢或結構化過濾器,並傳回前 k 個匹配的記憶(可選地帶有可解釋性元資料)。
  • delete/update支援生命週期操作和使用者明確請求遺忘。

設計方案應包括出處(記憶的來源)和置信度/相似度評分,以便客戶和模型能夠決定如何積極地使用該記憶。

克勞德的檢索增強策略

  • 簡短的上下文視窗: 傳回簡潔的記憶體片段而不是完整的文件;如果需要,允許 Claude 請求完整的上下文。
  • 摘要層: 可以選擇性地儲存每個記憶體的簡短摘要,以減少令牌數量。寫入操作時使用增量摘要。
  • 控制注射: 將記憶體作為可附加的「上下文包」提供,客戶端可以選擇性地將其註入到提示中,而不是將所有內容注入到模型中。

記憶體 MCP 的安全與治理

  • 同意和審計追蹤: 記錄記憶的創建時間以及使用者是否同意與模型共享該記憶。在 Claude Desktop 中提供清晰的使用者介面,方便使用者查看和撤銷記憶。
  • 速率限制與驗證: 透過驗證類型並禁止伺服器發出意外的程式碼執行請求,來防禦提示注入或資料外洩。
  • 靜態資料和傳輸中資料加密: 對儲存的項目使用強加密,並對所有 MCP 端點使用 TLS 加密。對於雲端存儲,如果可用,請使用信封加密或客戶管理的金鑰。

結論:如何在 Claude Desktop 中建置 MCP 伺服器

本文提供了一份簡潔實用的指南,教你如何從零開始,在筆記型電腦上建立一個可用的 Claude + 記憶體伺服器:

  • 測試工作流程: 讓克勞德「記住」一個簡短的事實,並驗證伺服器是否儲存了該事實;然後在稍後的提示中讓克勞德回憶起該事實。查看日誌並調整檢索排名。
  • 安裝先決條件: Node.js >= 18、Git、Claude Desktop(最新版本)。
  • 克隆參考伺服器: 分岔 modelcontextprotocol/servers 例如,或GitHub上的社群記憶伺服器。
  • 安裝並運行: npm installnpm run dev (或遵循倉庫的 README 文件)。確認清單端點(例如, http://localhost:3000/manifest返回 JSON。 ()
  • 在 Claude Desktop 中註冊連接器: 設定 → 開發者/連接器 → 新增連接器 → 指向 http://localhost:3000 並批准範圍。

將 Claude(或任何主機)與 MCP 伺服器集成,即可建置一次連接器,並使其在 MCP 用戶端(Claude Desktop、IDE 或其他代理框架)中可用,從而大大減少維護工作,並加快跨工具的功能對等性。

開發者可以存取 Claude AI 的最新 API(截至本文發布之日),例如: 克勞德十四行詩 4.5 API 克勞德作品 4.1 API 透過 CometAPI, 最新型號版本 始終與官方網站同步更新。首先,探索該模型的功能 游乐场 並諮詢 API指南 以獲得詳細說明。造訪前請確保您已經登入CometAPI並取得API金鑰。 彗星API 提供遠低於官方價格的價格,幫助您整合。

準備出發了嗎? → 立即註冊 CometAPI !

如果您想了解更多有關 AI 的提示、指南和新聞,請關注我們 VKX   不和!

閱讀更多

一個 API 中超過 500 個模型

最高 20% 折扣