Mtu API-DOC
首页应用对话
首页应用对话
WeChat ID:F25F91
  1. 概念
  • Mtu API简介
  • Model-Studio-Pricing模型列表价格
  • Model限时免费模型列表
  • 1206更新(接入纯搜索baidu接口)
  • 1204模型更新Mistral-Large-3(675B)
  • 1120模型更新Jina DeepSearch v1
  • 1119模型更新列表Gemini 3 API
  • 1116模型更新列表GPT-5.1系列
  • 1114模型更新列表
  • 1106模型更新列表
  • 1021模型更新列表
  • 1013模型更新列表
  • 1003模型更新列表
  • 0922模型更新列表
  • Migrate to the Responses API
  • GPT-5-codex API上线 0924更新
  • OpenAI Web search 网络搜索
  • Using tools OpenAI官方文档
  • Chat
    • Create chat completion
    • List chat completions
    • Get chat completion
    • Update chat completion metadata
    • Delete chat completion
    • Get chat messages
  • Images
    • Create image
    • Create image edit
    • Create image variation
  • Audio
    • Create speech
    • Create transcription
    • Create translation
  • Embeddings
    • Create embeddings
  • Moderations
    • Create moderation
  • Files
    • Upload file
    • List files
    • Retrieve file
    • Delete file
    • Retrieve file content
  • Models
    • List models
    • Retrieve model
    • Delete a fine-tuned model
  • MCP开发
    • MCP开始使用
      • 简介
      • 示例 Servers
      • 示例 Clients
      • 快速上手
        • 服务器开发
        • 客户端开发
        • Claude 桌面版开发
    • 教程
      • 使用 LLMs 构建 MCP
      • 调试 Debugging
      • 调试器 Inspector
    • 概念
      • 核心架构
      • 资源 Resources
      • 提示词 Prompts
      • 工具 Tools
      • 采样 Sampling
      • 根 Roots
      • 传输 Transports
    • 开发
      • 新计划
      • 规划
      • 贡献
  • OpenAI 项目
    • 介绍
    • 项目说明
    • 导言
    • 身份验证
    • 发出请求
    • 参数详情
    • 聊天(Chat)
      • Chat Completions 对象
      • Chat Completions 对象块
      • 创建 Chat Completions
    • 音频(Audio)
      • 创建语音
      • 创建转录
      • 创建翻译
    • 自动补全(Completions)
      • Completions 对象
      • 创建 Completions
    • 嵌入(Embeddings)
      • 嵌入对象
      • 创建嵌入
    • 微调(Fine-tuning)
      • 微调作业对象
      • 微调作业事件对象
      • 创建微调作业
      • 列出微调作业
      • 检索微调作业
      • 取消微调
      • 列出微调事件
    • 图像(Images)
      • README
      • 图像对象
      • 创建图像
      • 创建图片编辑
      • 创建图像变体
    • 模型(Models)
      • 模型对象
      • 列出模型
      • 检索模型
      • 删除微调模型
    • 文件(Files)
      • README
      • 文件对象
      • 列出文件
      • 上传文件
      • 删除文件
      • 检索文件
      • 检索文件内容
    • 审查(Moderations)
      • 调节对象
      • 创建内容审核
    • 助手测试版(AssistantsBeta)
      • 辅助对象
      • 辅助文件对象
      • 创建助手
      • 检索助手
      • 修改助手
      • 删除助手
      • 列出助手
      • 创建辅助文件
      • 检索助手文件
      • 删除辅助文件
      • 列出助手文件
    • 线程(Threads)
      • 线程对象
      • 创建线程
      • 检索线程
      • 修改线程
      • 删除话题
    • 留言(Messages)
      • 消息对象
      • 消息文件对象
      • 创建消息
      • 检索消息
      • 修改留言
      • 列出消息
      • 检索消息文件
      • 列出消息文件
    • 运行(Runs)
      • 运行对象
      • 运行步骤对象
      • 创建运行
      • 检索运行
      • 修改运行
      • 列表运行
      • 提交工具输出以运行
      • 取消运行
      • 创建线程并运行
      • 检索运行步骤
      • 列出运行步骤
    • 已弃用-音频(Audio)
      • 创建转录
      • 创建翻译
  • 通义千问 项目
    • 首次调用通义千问API
    • 文本生成
      • 深度思考(QwQ)
        • 深度思考(QwQ)概括
        • 快速开始
        • 多轮对话
      • 长上下文
        • 通过file-id传入文档信息
          • 简单示例
          • 传入多文档
          • 追加文档
        • 通过纯文本传入信息
          • 简单示例
          • 传入多文档
          • 追加文档
        • 通过JSON字符串传入文档信息
          • 简单示例
          • 传入多文档
          • 追加文档
      • 翻译能力
        • Qwen-MT模型
        • 支持的语言
        • 简单示例
        • 流式输出
        • 术语干预翻译
        • 使用翻译记忆
        • 领域提示
      • 数学能力
        • 模型概览
        • 示例代码
      • 代码能力
        • 模型概览
        • 简单示例
        • 代码补全
        • 根据前缀和后缀生成中间内容
      • 多轮对话
        • 开始使用
      • 流式输出(Stream)
        • 概述
        • 开始使用
      • 工具调用(Function Calling)
        • 概述
      • 结构化输出(Json Mode)
        • 支持的模型
        • 开始使用
      • 前缀续写(Partial Mode)
        • 支持的模型
        • 开始使用
      • 批量推理(Batch)
        • 概述
      • 上下文缓存(Context Cache)
        • 概述
    • 视觉理解
      • 全模态(Qwen-Omni )
        • 概述
        • 开始使用
        • 图片+文本输入
        • 音频+文本输入
        • 视频+文本输入
        • 多轮对话
  • Claude code 部署教程
    • Claude code 部署教程接入MTUAPI
    • Claude Code Router 配置指南
  • 数据模型
    • Schemas
      • ChatCompletionRequest
      • ChatCompletionObject
      • EmbeddingsRequest
      • ChatMessage
      • ImageCreateRequest
      • ModerationsRequest
      • FileObject
  1. 概念

工具 Tools

使 LLMs 通过您的服务器执行操作
工具是模型上下文协议(MCP)中的一个强大原语,使服务器能够向客户端暴露可执行的功能。通过工具,LLMs可以与外部系统交互、执行计算并在现实世界中采取行动。
工具被设计为由模型控制,这意味着工具从服务器暴露给客户端,目的是让 AI 模型能够自动调用它们(同时有人在环中批准)。

概述#

在 MCP 中,工具允许服务器暴露可被客户端调用并由LLMs使用的可执行函数。工具的关键方面包括:
发现: 客户可以通过tools/list端点列出可用的工具
调用: 工具通过tools/call端点被调用,服务器执行请求的操作并返回结果
灵活性: 工具可以是从简单计算到复杂 API 交互的各种类型
像资源 (resources) 一样,工具通过唯一名称进行标识,并可以包含描述以指导其使用。然而,与资源不同,工具代表动态操作,可以修改状态或与外部系统交互。

工具定义结构#

每个工具都定义为以下结构:

实施工具#

这是一个在 MCP 服务器中实现基本工具的示例:
TypeScript
Python

示例工具模式#

这是一些服务器可以提供的工具类型的示例:

系统操作#

与本地系统交互的工具:

API 集成#

外部 API 的工具封装:

数据处理#

能够转换或分析数据的工具:

最佳实践#

在实现工具时:
1.
提供清晰、描述性的名称和描述
2.
使用详细的 JSON Schema 定义参数
3.
在工具描述中包含示例,以演示模型应如何使用它们
4.
实现适当的错误处理和验证
5.
使用进度报告来报告长时间的操作
6.
保持工具操作集中且原子化
7.
文档化预期的返回值结构
8.
实现适当的超时机制
9.
考虑对资源密集型操作进行速率限制
10.
记录工具使用情况以供调试和监控

安全考虑事项#

当暴露工具时:

输入验证#

验证所有参数是否符合方案
对文件路径和系统命令进行清理处理
验证 URL 和外部标识符
检查参数大小和范围
防止命令注入

访问控制#

在需要的地方实现身份验证
进行适当的授权检查
审计工具使用
限制请求速率
监控滥用行为

错误处理#

不要向客户端暴露内部错误
记录安全相关的错误
适当处理超时
错误后清理资源
验证返回值

工具发现和更新#

MCP supports dynamic tool discovery:
1.
Clients can list available tools at any time
2.
Servers can notify clients when tools change using notifications/tools/list_changed
3.
工具可以在运行时添加或移除
4.
工具定义可以更新(尽管这应该谨慎进行)

错误处理#

工具错误应在结果对象中报告,而不是作为 MCP 协议级别的错误。这样LLM可以查看并可能处理错误。当工具遇到错误时:
1.
将isError设置为true在结果中
2.
在content数组中包含错误详情
这里是一个工具的正确错误处理示例:
TypeScript
Python
这种做法允许 LLM 看到发生了错误,并可能采取纠正措施或请求人工干预。

测试工具#

MCP 工具的全面测试策略应包括:
功能测试:验证工具在使用有效输入时能否正确执行,并妥善处理无效输入
集成测试:使用真实和模拟依赖项测试工具与外部系统的交互
安全测试: 验证身份验证、授权、输入净化和速率限制
性能测试: 检查在负载下的行为、超时处理和资源清理
错误处理:确保工具通过 MCP 协议正确报告错误并清理资源

扫码加入 Mtu api 微信交流群

获得 Mtu api 使用上的任何帮助,效率得到大幅提升,技术客服WeChat:F25F91

扫码关注公众号
修改于 2025-09-12 09:50:17
上一页
提示词 Prompts
下一页
采样 Sampling
Built with