加载中

我们将构建一个基于 CLI 的聊天机器人,用以演示 MCP 客户端和服务器如何协同工作。这个实践项目将让您获得 MCP 架构两端的实际操作经验。

我们要构建什么

我们的聊天机器人将允许用户通过自然语言与一组文档进行交互。该系统由两个主要组件组成:

  • 一个处理用户交互并与 Claude 通信的 MCP 客户端
  • 一个提供读取和更新文档工具的 MCP 服务器

服务器将向 Claude 暴露两个工具:

  • 读取文档内容的工具
  • 更新文档内容的工具

为简单起见,所有文档都存储在内存中——它们包括 document.pdf、spreadsheet.xlsx、report.txt 和 spec.md 等文件。

重要架构说明

在实际项目中,您通常只实现 MCP 客户端或 MCP 服务器中的一个,而不是两者都实现。您可能会构建:

  • 仅构建一个 MCP 服务器,向 AI 模型暴露您服务的能力
  • 仅构建一个 MCP 客户端,以连接到其他开发者构建的现有 MCP 服务器

我们在本项目中同时构建这两个组件,纯粹是出于教学目的——以便理解它们如何通信并协同工作。

项目设置

从本课程末尾的下载部分下载 cli_project.zip,并将其解压到您偏好的开发目录中。在项目文件夹中打开您的代码编辑器。

配置

该项目包含一个 README.md 文件,其中有详细的设置说明。您需要:

  1. 将您的 Anthropic API 密钥添加到 .env 文件中
  2. 使用 UV(推荐)或 pip 安装依赖项

.env 文件应包含:

bash
ANTHROPIC_API_KEY="your-api-key-here"

运行项目

设置完成后,在终端中导航到您的项目目录并运行:

bash
# 如果使用 UV(推荐)
uv run main.py

# 如果使用标准 Python
python main.py

您应该会看到一个聊天提示出现。通过询问一个简单的问题(例如"what's 1+1?")来测试它,以验证一切是否正常工作。

初始项目已经包含了与 Claude 的基本聊天功能。在接下来的视频中,我们将添加 MCP 服务器功能和文档管理功能,以创建一个功能完整的文档感知聊天机器人。

下载内容

  • Starter project (cli_project.zip)

    The chatbot project you build on for the rest of this section.

    下载
  • Completed project (cli_project_COMPLETE.zip)

    The finished version, for checking your work.

    下载