如何使用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 的界面。

评论留言