Claude With Amazon Bedrock
← 所有课程
课程 57Claude With Amazon Bedrock

Defining tools with MCP

摘要音频

本节课没有语音摘要。

学习笔记

📚 MCP 服务器与工具实现要点 (MCP Server and Tool Implementation Key Concepts)

一、核心概念 (Core Concepts)

  • MCP 服务器目的 → 为 CLI 聊天机器人添加额外的功能和能力。
  • 工具 (Tools):服务器中定义的功能模块,用于执行特定任务(如读/写文档)。
  • MCP Python SDK 的优势
  • 极大地简化了工具的定义过程。
  • 开发者只需编写工具的逻辑和参数,SDK 会自动生成所需的 JSON 模式 (JSON Schema),供 Bedrock 使用。

二、工具实现流程 (Tool Implementation Process)

  • 工具定义步骤
  • 使用 mcp. tool 装饰器定义工具的名称和描述。
  • 定义工具所需的参数(包括类型和描述),通常使用 Pydantic. field。
  • 编写实际执行任务的函数体(Tool Function)。
  • 文档存储:所有文档初始存储在内存中的 docs 字典中(键是文档 ID,值是文档内容)。

三、具体工具实现 (Specific Tool Implementations)

**1. 读取文档工具 (Read Document Tool)**

  • 工具名称:read_doc_contents
  • 输入参数:doc_id (字符串) → 文档的唯一标识符。
  • 核心逻辑
  • 检查 doc_id 是否存在于 docs 字典中。
  • 如果不存在,抛出 ValueError 错误(文档未找到)。
  • 如果存在,返回该文档对应的完整内容。

**2. 编辑文档工具 (Edit Document Tool)**

  • 工具名称:edit_document
  • 输入参数
  • doc_id (字符串) → 要编辑的文档 ID。
  • old_string (字符串) → 需要被替换的旧文本(必须精确匹配)。
  • new_string (字符串) → 用于替换旧文本的新内容。
  • 核心逻辑
  • 检查 doc_id 是否存在于 docs 字典中。
  • 如果不存在,抛出 ValueError 错误。
  • 如果存在,执行简单的“查找并替换”操作:docs[doc_id] = docs[doc_id] 替换 old_string 为 new_string。

Takeaways

  • MCP 服务器的主要目的是为 CLI 聊天机器人添加额外的功能和能力。
  • MCP Python SDK 的核心优势在于开发者只需编写工具逻辑,SDK 即可自动生成所需的 JSON 模式。
  • 工具的实现流程包括使用 mcp. tool 装饰器定义名称和参数,并编写实际执行任务的函数体。
  • 所有文档初始存储在内存中的 docs 字典中,通过文档 ID 进行管理。
  • 读取工具通过 doc_id 检索文档内容;编辑工具执行基于 old_string 和 new_string 的查找并替换操作。
抽认卡 10 张卡片
问题
点击显示 · ←/→
答案
点击翻回
导出到 Anki (.tsv) ↓
知识检测 0 题

No quiz for this lesson yet.