如何使用MCP?模型上下文協議教學

如何使用MCP?模型上下文協議教學

你用 LLM 構建過應用程式。你玩過代理。也許你還使用過 LangChain、AutoGen 或 OpenAI 的 Assistants API。這些模型的推理、理解和生成能力令人印象深刻,難道不是嗎?但是,當你的代理需要做一些實際的事情時,比如檢查資料庫、從 CRM 讀取資料或獲取 Google 文件,事情就開始變得一團糟了。突然之間,你需要

  • 為每個 API 編寫自定義封裝程式、
  • 手動決定在提示中輸入哪些資料,以及
  • 與令牌限制和陳舊上下文作鬥爭。

這就是模型上下文協議(MCP)的用武之地。MCP 不是一個新的“框架”,而是一個開放標準,可以幫助人工智慧助理和代理以簡單、可重用的方式連線到現實世界的資料和工具。在本教學中,我們將瞭解什麼是 MCP、如何使用它以及它為何如此流行,同時探索它的應用。

什麼是MCP?

模型上下文協議(MCP)是 Claude 的母公司 Anthropic 於 2024 年 11 月推出的一項強大的開放標準。它允許 Claude 或 GPT 等大型語言模型 (LLM) 以結構化、安全和可擴充套件的方式無縫訪問外部內容,如文件、資料庫、工具、本地檔案或 API。

什麼是MCP?

MCP 的核心由三個主要部分組成:

  1. 模型:它指的是對輸入做出響應的 LLM(如 Claude 或 GPT-4)。
  2. 上下文:它是模型做出有意義響應所需的附加資訊。這些資訊的來源可以是文件、PDF、提示或資料庫條目。
  3. 協議Protocol):它代表一套規則,可讓模型從結構化來源訪問和使用上下文。

MCP如何工作?

就其本質而言,MCP 規範了客戶端和伺服器之間的通訊,無需定製程式碼或手動上傳資料。對於不同的技術,客戶端和伺服器可能有不同的含義,但對於 MCP 來說,它們是指

  • 客戶端:這是 LLM 響應您的介面。它可以是 Claude 的桌面應用程式、您的整合開發環境或聊天機器人。
  • 伺服器:這是儲存上下文的系統或資料來源(本地或遠端),例如 Google Drive、GitHub、Gmail、本地檔案、PDF 等。

當你提出問題或下達命令時,客戶端會向伺服器傳送請求,以獲取相關資訊。然後,伺服器提供必要的上下文(如檔案、電子郵件或資料庫),客戶端利用這些上下文給你回覆或完成任務。透過這一過程,人工智慧可以高效地處理即時動態資料。

MCP如何工作?

因此,有了 MCP,客戶端(LLM 介面)可以自動發現可用的伺服器(資料來源),並根據您的查詢請求特定資訊。

為什麼需要MCP?

MCP 就像 LLM 的通用聯結器,可以讓 LLM

  • 查詢可用的工具(如檔案、日曆或文件)。
  • 瞭解每個工具的功能(如“讀取 PDF”、“統計檔案”、“儲存聊天記錄”)。
  • 直接使用這些工具,無需為每個工具編寫任何特殊程式碼。
  • 獲得簡潔、結構化的結果,以便更好地回答你的問題。

因此,無需你上傳檔案或複製資料到提示符,LLM 只需自動訪問所需的內容。無論是讀取 Notion 文件、查詢資料庫還是檢索 GitHub 問題,MCP 都能將其轉化為無縫、可重複使用的工作流程。

如何使用MCP?

在本教程中,我們將使用 MCP 透過 Python 將 Claude 桌面應用程式(客戶端)連線到本地檔案和資料。然後,我們將使用外部資料作為上下文來執行以下 4 項任務:

  1. 建立自定義問候語工具
  2. 計算桌面上的檔案數量
  3. 將與 Claude 的聊天儲存到本地系統中
  4. 使用本地 PDF 文件向 Claude 提問

要求

要執行以上 4 項任務,請確保您具備以下條件

  1. 安裝了 Python 3.11+ 的系統
  2. Claude 桌面應用程式(免費版或專業版)
  3. 基本熟悉 Python
  4. VS Code 或任何整合開發環境
  5. 一些本地文件(如休假政策之類的 PDF 檔案)

一次性設定

在開始執行任務之前,您需要執行以下幾項一次性任務,以確保順利完成所有 4 項任務。

建立 Python 環境

強烈建議建立一個獨立的 Python 環境來執行這些任務。如果使用的是 conda 環境,可以透過執行以下命令來實現:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
conda create ~n mcp python==3.11
conda create ~n mcp python==3.11
conda create ~n mcp python==3.11

安裝 MCP 庫

由於我們使用的是 Python,因此必須加入 Python 程式碼檔案。為此,請編寫並執行以下命令:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
pip install mcp
pip install mcp
pip install mcp

除了 Python 之外,程式碼檔案還可以使用 Typescript、Java 或 Kotlin。您可以在 MCP 文件中瞭解更多相關資訊。

下載 Claude 桌面應用程式

要下載應用程式,請訪問 https://claude.ai/download 並下載適用於各自系統的應用程式。安裝後,可能需要幾秒鐘才能啟動。這完全正常。雖然您可以使用 Claude 的免費計劃來構建 Claude MCP,但該計劃在實驗時有使用限制,而且往往不方便使用。因此,最好使用付費訂閱計劃。

設定配置檔案

每個客戶端的配置檔案都是獨一無二的。由於我們使用的是 Claude 的桌面應用程式,因此需要下載 Claude 的配置檔案。為此,請:

  • 進入“Claude Settings”。
  • 然後轉到“Developer”部分。
  • 點選“Claude Settings”。

設定配置檔案

  • 查詢 “laude_desktop_config.json”。如果該檔案不存在,請建立同名檔案。

laude_desktop_config.json

該檔案將您的工具(Python 指令碼)對映到 Claude,每次完成任務後您都要更新該檔案。現在我們已經完成了所有的安裝和下載工作,讓我們開始執行任務。

任務 1:建立自定義問候語工具

在這項任務中,我們將建立一個工具,每當提示 “”或 “你好”時,它就會為您建立個性化的問候語。

Step 1:建立一個新的Python檔案

在這裡,我建立了一個名為“greeter.py”的新檔案。

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
from mcp.server.fastmcp import FastMCP// FAST MCP is just an easier way to build a server
# Create an MCP server named "Greeter"
mcp = FastMCP("Greeter")
@mcp.tool()
def greet() -> str:
"""Return this welcome message, when greeted with "Hi", "Hey" or "Hello"."""
return "Hey <add your own name>, Welcome to the world of MCPs!"
if __name__ == "__main__":
mcp.run()
from mcp.server.fastmcp import FastMCP// FAST MCP is just an easier way to build a server # Create an MCP server named "Greeter" mcp = FastMCP("Greeter") @mcp.tool() def greet() -> str: """Return this welcome message, when greeted with "Hi", "Hey" or "Hello".""" return "Hey <add your own name>, Welcome to the world of MCPs!" if __name__ == "__main__": mcp.run()
from mcp.server.fastmcp import FastMCP// FAST MCP is just an easier way to build a server
# Create an MCP server named "Greeter"
mcp = FastMCP("Greeter") 
@mcp.tool()
def greet() -> str:
    """Return this welcome message, when greeted with "Hi", "Hey" or "Hello"."""
    return "Hey <add your own name>, Welcome to the world of MCPs!"
if __name__ == "__main__":
    mcp.run()

程式碼說明:

該程式碼建立了一個 MCP 伺服器,用於讀取問候語請求並以個性化資訊作出響應。

  • 該函式使用一個裝飾器來告訴伺服器在提示“Hi”、“Hey”或 “Hello”時如何回應。
  • 我們向 MCP 伺服器發出的命令會與 LLM 共享,而 LLM 可能會生成與我們向伺服器發出的相同或類似的響應。
  • 您得到的響應可能與您預期的完全不同;這是因為最終輸出是由 LLM 生成的。

Step 2:更新配置檔案

確保配置檔案中絕對沒有語法錯誤。在配置檔案中,我們需要三樣東西:

  1. 伺服器名稱
  2. Python 程式的位置
  3. 必須執行的 Python 檔案的位置

更新配置檔案

Step 3:重啟Claude桌面應用程式

重啟應用程式至關重要,因為

  1. 它會告訴你程式碼中的任何錯誤。錯誤會被高亮顯示,你可以進入“Logs”部分,瞭解如何糾正這些錯誤。
  2. 如果沒有檢測到錯誤,該工具就會註冊到 Claude 桌面應用程式,你就可以在應用程式中訪問它。
  3. 重啟應用程式後,就可以訪問最新的整合。因此,每次更新或更改程式碼時都需要這樣做。

Step 4:在應用程式中向Claude說Hi

只需透過應用程式向 Claude 說一聲“Hi”,它就會用你的工具向你打招呼!

向 Claude 桌面應用程式說 “”後,會彈出一個視窗,要求您允許應用程式使用您剛剛建立的工具。點選 “Allow tool for this chat”。目前,每次在指定聊天中呼叫工具時,您都必須允許該工具在聊天中使用。

Allow tool for this chat

一旦獲得許可,您就可以從桌面應用中獲得響應。

從桌面應用中獲得響應

任務 2:計算桌面上的檔案數

該工具將計算桌面上的檔案數量,並在你詢問 Claude 時返回總數。

Step 1:建立一個新的Python檔案

在這裡,我要建立一個名為 file_counter.py 的檔案

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
from mcp.server.fastmcp import FastMCP
import os
# Create an MCP server named "FileCounter"
mcp = FastMCP("FileCounter")
@mcp.tool()
def count_desktop_files() -> str:
"""Count the number of files on the desktop"""
desktop_path = os.path.expanduser("~/Desktop") # Gets desktop path (e.g., /Users/apoorv/Desktop)
try:
# List all items in desktop directory, filter to files only
files = [f for f in os.listdir(desktop_path) if os.path.isfile(os.path.join(desktop_path, f))]
file_count = len(files)
return f"There are {file_count} files on your desktop."
except Exception as e:
return f"Error counting files: {str(e)}"
if __name__ == "__main__":
mcp.run()
from mcp.server.fastmcp import FastMCP import os # Create an MCP server named "FileCounter" mcp = FastMCP("FileCounter") @mcp.tool() def count_desktop_files() -> str: """Count the number of files on the desktop""" desktop_path = os.path.expanduser("~/Desktop") # Gets desktop path (e.g., /Users/apoorv/Desktop) try: # List all items in desktop directory, filter to files only files = [f for f in os.listdir(desktop_path) if os.path.isfile(os.path.join(desktop_path, f))] file_count = len(files) return f"There are {file_count} files on your desktop." except Exception as e: return f"Error counting files: {str(e)}" if __name__ == "__main__": mcp.run()
from mcp.server.fastmcp import FastMCP
import os
# Create an MCP server named "FileCounter"
mcp = FastMCP("FileCounter")
@mcp.tool()
def count_desktop_files() -> str:
    """Count the number of files on the desktop"""
    desktop_path = os.path.expanduser("~/Desktop")  # Gets desktop path (e.g., /Users/apoorv/Desktop)
    try:
        # List all items in desktop directory, filter to files only
        files = [f for f in os.listdir(desktop_path) if os.path.isfile(os.path.join(desktop_path, f))]
        file_count = len(files)
        return f"There are {file_count} files on your desktop."
    except Exception as e:
        return f"Error counting files: {str(e)}"
if __name__ == "__main__":
    mcp.run()

程式碼說明:

這段程式碼設定了一個 MCP 伺服器,用於掃描桌面目錄、計算檔案數量並返回計數。該函式使用 Python 的 os 庫過濾目錄,只計算檔案數(不計算資料夾數)。

Step 2:更新配置檔案

按照上述步驟操作,確保沒有任何多餘檔案。

Step 3:重啟Claude桌面應用程式

按照上述步驟操作。

Step 4:詢問Claude

向 Claude Desktop 應用程式發出以下提示:How many files are there on my desktop?

然後會彈出允許使用該聊天工具的視窗。批准後,你將根據系統中的檔案數量獲得輸出結果。

詢問Claude

任務 3:將對話儲存為文字檔案

透過該工具,Claude 可以將正在進行的對話儲存到桌面上的 .txt 檔案中。

Step 1:建立一個新的Python檔案

為此,我要建立一個名為 conversation_saver.py 的新檔案。

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
from mcp.server.fastmcp import FastMCP
import os
from datetime import datetime
mcp = FastMCP("ConversationSaver")
@mcp.tool()
def save_conversation(conversation: str) -> str:
"""Save the current conversation to a text file on the desktop"""
desktop_path = os.path.expanduser("~/Desktop")
timestamp = datetime.now().strftime("%Y%m%d_%H%M%S")
file_path = os.path.join(desktop_path, f"claude_chat_{timestamp}.txt")
try:
with open(file_path, "w") as f:
f.write(conversation)
return f"Conversation saved at: {file_path}"
except Exception as e:
return f"Error saving conversation: {str(e)}"
if __name__ == "__main__":
mcp.run()
from mcp.server.fastmcp import FastMCP import os from datetime import datetime mcp = FastMCP("ConversationSaver") @mcp.tool() def save_conversation(conversation: str) -> str: """Save the current conversation to a text file on the desktop""" desktop_path = os.path.expanduser("~/Desktop") timestamp = datetime.now().strftime("%Y%m%d_%H%M%S") file_path = os.path.join(desktop_path, f"claude_chat_{timestamp}.txt") try: with open(file_path, "w") as f: f.write(conversation) return f"Conversation saved at: {file_path}" except Exception as e: return f"Error saving conversation: {str(e)}" if __name__ == "__main__": mcp.run()
from mcp.server.fastmcp import FastMCP
import os
from datetime import datetime 
mcp = FastMCP("ConversationSaver")
@mcp.tool()
def save_conversation(conversation: str) -> str:
    """Save the current conversation to a text file on the desktop"""
    desktop_path = os.path.expanduser("~/Desktop")
    timestamp = datetime.now().strftime("%Y%m%d_%H%M%S")
    file_path = os.path.join(desktop_path, f"claude_chat_{timestamp}.txt")
    try:
        with open(file_path, "w") as f:
            f.write(conversation)
        return f"Conversation saved at: {file_path}"
    except Exception as e:
        return f"Error saving conversation: {str(e)}"
if __name__ == "__main__":
    mcp.run()

程式碼說明:

該程式碼建立了一個 MCP 伺服器,可將正在進行的對話儲存到桌面上的文字檔案中,並用時間戳命名。它使用 Python 的 datetime 生成唯一的檔名,並使用 os 庫將內容儲存到文字檔案中。

Step 2:更新配置檔案

確保配置檔案中絕對沒有語法錯誤,列表中也沒有任何多餘的檔案。

Step 3:重啟Claude桌面應用程式

要檢查程式碼中是否有任何錯誤,請在編寫程式碼後重啟應用程式。任何錯誤都會在此步驟後高亮顯示,您可以進行更正。如果沒有錯誤,您的工具就會註冊到 Claude 應用程式中,之後您就可以直接從那裡訪問它了。

Step 4:儲存聊天

我給 Claude 應用程式一個提示:What is a RAG system

這一次,它不會訪問任何工具;因為到目前為止,我們還沒有為這類查詢建立任何工具。因此,該應用程式不會向您請求任何許可權,而是像人工智慧聊天機器人通常做的那樣繼續。它會根據訓練資訊生成輸出結果。

現在,我給該程式第二次提示:Save this chat

Claude 會提示您允許使用該工具,然後將完整的對話儲存到您的桌面上,並標註時間戳。

Claude儲存聊天

您可以在桌面上開啟 .txt 檔案,檢視整個交流過程。

在這裡檢視收到的輸出結果。

任務 4:詢問有關本地PDF的問題

該工具可讓 Claude 訪問本地系統中的文件(可以是 word doc、pdf 或 ppt),並回答其中的問題,而無需手動上傳。在這項任務中,我將提示一些有關公司休假政策的問題;我的桌面上就有該政策的 pdf 文件。

Step 1:建立一個新的Python檔案

在這項任務中,我要建立一個名為 leave_policy_reader.py 的新檔案。

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
from mcp.server.fastmcp import FastMCP
import os
import PyPDF2 # For PDF text extraction
mcp = FastMCP("SmartContext")
# Hardcoded path to your leave policy PDF (edit this to your file’s location)
LEAVE_POLICY_PDF = "/Users/apoorv/Desktop/AV/Code/MCP/leave_policy.pdf"
@mcp.tool()
def fetch_context(query: str) -> str:
"""Fetch content from a leave policy PDF for leave-related queries"""
query_lower = query.lower()
# Only process if "leave" is in the query
if "leave" not in query_lower:
return "This tool only answers leave-related questions. Ask about leaves!"
if not os.path.exists(LEAVE_POLICY_PDF):
return f"Error: Leave policy PDF not found at {LEAVE_POLICY_PDF}!"
try:
# Read the PDF
with open(LEAVE_POLICY_PDF, "rb") as f:
pdf_reader = PyPDF2.PdfReader(f)
content = ""
for page in pdf_reader.pages:
extracted_text = page.extract_text()
if extracted_text:
content += extracted_text + "\n"
if not content:
return "Error: No text could be extracted from the leave policy PDF!"
# Return the content with the query for Claude
return (f"Using context from {LEAVE_POLICY_PDF}:\n\n"
f"Content:\n{content}\n\n"
f"Query: {query}\n\n"
f"Please answer based on the content above.")
except Exception as e:
return f"Error reading leave policy PDF: {str(e)}"
if __name__ == "__main__":
mcp.run()
from mcp.server.fastmcp import FastMCP import os import PyPDF2 # For PDF text extraction mcp = FastMCP("SmartContext") # Hardcoded path to your leave policy PDF (edit this to your file’s location) LEAVE_POLICY_PDF = "/Users/apoorv/Desktop/AV/Code/MCP/leave_policy.pdf" @mcp.tool() def fetch_context(query: str) -> str: """Fetch content from a leave policy PDF for leave-related queries""" query_lower = query.lower() # Only process if "leave" is in the query if "leave" not in query_lower: return "This tool only answers leave-related questions. Ask about leaves!" if not os.path.exists(LEAVE_POLICY_PDF): return f"Error: Leave policy PDF not found at {LEAVE_POLICY_PDF}!" try: # Read the PDF with open(LEAVE_POLICY_PDF, "rb") as f: pdf_reader = PyPDF2.PdfReader(f) content = "" for page in pdf_reader.pages: extracted_text = page.extract_text() if extracted_text: content += extracted_text + "\n" if not content: return "Error: No text could be extracted from the leave policy PDF!" # Return the content with the query for Claude return (f"Using context from {LEAVE_POLICY_PDF}:\n\n" f"Content:\n{content}\n\n" f"Query: {query}\n\n" f"Please answer based on the content above.") except Exception as e: return f"Error reading leave policy PDF: {str(e)}" if __name__ == "__main__": mcp.run()
from mcp.server.fastmcp import FastMCP
import os
import PyPDF2  # For PDF text extraction
mcp = FastMCP("SmartContext")
# Hardcoded path to your leave policy PDF (edit this to your file’s location)
LEAVE_POLICY_PDF = "/Users/apoorv/Desktop/AV/Code/MCP/leave_policy.pdf"
@mcp.tool()
def fetch_context(query: str) -> str:
    """Fetch content from a leave policy PDF for leave-related queries"""
    query_lower = query.lower()
    # Only process if "leave" is in the query
    if "leave" not in query_lower:
        return "This tool only answers leave-related questions. Ask about leaves!"
    if not os.path.exists(LEAVE_POLICY_PDF):
        return f"Error: Leave policy PDF not found at {LEAVE_POLICY_PDF}!"
    try:
        # Read the PDF
        with open(LEAVE_POLICY_PDF, "rb") as f:
            pdf_reader = PyPDF2.PdfReader(f)
            content = ""
            for page in pdf_reader.pages:
                extracted_text = page.extract_text()
                if extracted_text:
                    content += extracted_text + "\n"
            if not content:
                return "Error: No text could be extracted from the leave policy PDF!"
        # Return the content with the query for Claude
        return (f"Using context from {LEAVE_POLICY_PDF}:\n\n"
                f"Content:\n{content}\n\n"
                f"Query: {query}\n\n"
                f"Please answer based on the content above.")
    except Exception as e:
        return f"Error reading leave policy PDF: {str(e)}"
if __name__ == "__main__":
    mcp.run()

程式碼說明:

該程式碼構建了一個 MCP 伺服器,用於讀取 PDF 文件(休假政策)並回答與休假相關的詢問。它使用 PyPDF2 從 PDF 中提取文字,並根據文件內容做出響應。只有當查詢與“休假”有關時,它才會被啟用。

Step 2:更新配置檔案

與前一項任務相同。

Step 3:重啟Claude桌面應用程式

與上一任務相同。

重啟Claude桌面應用程式

Step 4:詢問Claude

為了測試這個工具,我在 Claude 應用程式中新增了以下提示:Can I take half day leave?

Claude 會處理該提示,意識到它需要訪問我們建立的工具,並提示我們授予它訪問該工具的許可權。

一旦呼叫該工具,它就會從休假政策檔案和原始查詢中彙編資訊。然後,它將把這些資訊反饋給 claude LLM,並要求它根據這些資訊作出回答。為此,該工具將即時讀取您的 PDF 檔案,並將資訊共享給 LLM。

最後,您將得到基於休假政策的回覆。

詢問Claude

這樣,您就可以建立自定義工具來訪問系統中的不同檔案,而無需反覆上傳檔案!

有關如何使用 MCP 框架增強 Claude Desktop 的全部程式碼和更多詳情,請點選此處

使用MCP的優勢

經過上述親身實踐,我們就更容易回答這個問題了。使用模型上下文協議:

  • 無需手動上傳資料或定製整合。
  • 允許 LLM 與本地系統和雲系統協同工作。
  • 只要使用相同的協議,任何客戶端與伺服器的工作方式都是標準化的。
  • 支援 Python、TypeScript、Kotlin 和 Java SDK。

MCP有哪些可能性?

MCP 本身帶來了大量的機會和可能性。以下是它增強現有工作流程的幾種方法:

  1. 多步驟專案:有了 MCP,人工智慧系統可以無縫協調多個平臺上的任務,如規劃活動或管理專案,而無需複雜的整合。
  2. 真實世界感知:它允許人工智慧與智慧環境、物聯網裝置和作業系統功能互動,使人工智慧更加主動和直觀。
  3. 協作代理:使用 MCP,多個專門的人工智慧代理可以協同工作,交換資訊並動態協作,而無需直接整合。
  4. 個人人工智慧助理:利用 MCP,可以建立深度個性化的助手,安全地訪問個人資料和裝置,而不會將敏感資訊暴露給第三方。
  5. 增強客戶支援:結合 MCP,人工智慧系統可透過訪問即時資料提供情境感知型客戶服務,從而提高響應質量和效率。
  6. 文件處理:它允許人工智慧模型根據本地或雲端儲存的文件(如合同或法律政策)進行讀取、處理和響應。

這些只是 MCP 在軟體開發、醫療保健、金融等各個領域無限可能性中的一小部分!

我們為什麼突然談論MCP?

到目前為止,我們已經介紹了有關 MCP 的一切–從它是什麼到如何使用它、為什麼要使用它以及它的應用。但還有一個問題需要回答: 為什麼在 MCP 推出近 5 個月後,我們和全世界都在談論它?

這主要有三個原因:

  1. 需要人工智慧代理:自去年以來,市場上出現了人工智慧代理的浪潮。雖然這些代理已經變得更加智慧,但它們仍然難以很好地與現實世界的資料和工具(如日曆、電子郵件或資料庫)協同工作。MCP 透過標準化人工智慧與這些工具的連線方式來解決這個問題,使它們更容易協同工作。
  2. 社羣動力:Cursor、Continue、Source Graph 等熱門公司都是 MCP 客戶端,而 Github、One Drive、Google Drive 等公司也在其伺服器列表中。隨著越來越多的公司加入 MCP 世界,這兩個列表都在與日俱增。
  3. 模式識別和開源:MCP 是開源的,可與任何人工智慧模型配合使用。無論您使用的是 Claude、GPT-4 還是其他任何人工智慧系統,MCP 都能將它們與現實世界的資料和工具連線起來。與封閉系統不同,您不會被鎖定在一個特定的模型或服務中。

以上就是為什麼全世界都在談論 MCP 以及為什麼它將在未來幾個月內掀起波瀾的眾多原因中的幾個。

小結

模型上下文協議(MCP)透過提供與工具、資料庫和本地檔案的無縫整合,正在徹底改變人工智慧系統與現實世界的互動方式。有了 MCP,人工智慧代理現在可以毫不費力地訪問相關資料並執行復雜任務,而無需定製程式碼或手動整合。無論是改善客戶服務、實現工作流程自動化,還是增強個人人工智慧助手,MCP 都能為人工智慧模型釋放出強大的新可能性,使其更加高效、直觀和適應性更強。隨著企業和開發人員不斷採用 MCP,它在增強人工智慧驅動系統方面的潛力只會越來越大,從而為各行各業帶來新的機遇。

常見問題

Q1. 什麼是模型上下文協議(MCP)?

A. MCP 是一種開放標準,可讓人工智慧模型無縫、高效地訪問本地檔案、文件和資料庫等現實世界的資料。

Q2. MCP 如何工作?

A. MCP 將人工智慧客戶端(如 Claude 或整合開發環境)與伺服器(本地或遠端資料來源)連線起來,允許人工智慧請求和使用上下文,而無需手動輸入或自定義編碼。

Q3. 我需要付費訂閱 Claude 才能使用 MCP 嗎?

A. 雖然免費版 Claude 可以使用,但經常會遇到速率限制,因此不太方便。付費版本可以消除這些限制。

Q4. 使用 MCP 有哪些基本要求?

A. 您需要 Python 3.11 以上、Claude 桌面應用程式、VS Code 等整合開發環境和一些本地任務文件。

Q5. MCP 可以使用任何人工智慧模型嗎?

A. 是的,MCP 與模型無關,可用於任何人工智慧模型,包括 Claude、GPT-4 和開源 LLM。

Q6. 使用 MCP 可以連線哪些工具?

A. MCP 允許人工智慧訪問各種工具,如 Google Drive、GitHub、Notion、電子郵件和本地檔案。

Q7. 如何為 Claude 設定配置檔案?

A. 您需要進入開發人員部分下的 Claude 設定,然後建立一個 claude_desktop_config.json 檔案,將您的工具對映到 Claude 的介面。

評論留言