🔍 MCP Tool Discovery(MCP工具发现)

不用手动一个个配置——MCP Tool Discovery 让 Agent 自动发现 MCP 服务器上有哪些工具可以用。

📖 什么是 MCP Tool Discovery?

MCP Tool Discovery 是 Model Context Protocol 中的工具发现机制。当 Agent 连接到 MCP 服务器时,它会自动获取该服务器提供的所有可用工具列表,包括工具名称、参数定义和功能描述。

🔧 MCP 服务器提供的三类资源

类型说明示例
Resources数据源,Agent 可读取数据库表、文件内容
Tools函数,Agent 可调用create_issue、send_message
Prompts预定义提示模板code_review、summarize

🔧 OpenClaw 中的 MCP 配置

// openclaw.json 中的 MCP 服务器配置
{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_TOKEN": "ghp_xxxx"
      }
    },
    "postgres": {
      "command": "npx",
      "args": ["@modelcontextprotocol/server-postgres"],
      "env": {
        "DATABASE_URL": "postgresql://..."
      }
    }
  }
}

🏗️ 工具发现流程

OpenClaw Gateway
    │
    ▼
┌───────────────┐
│ MCP Client    │
│ (内置)        │
└───────┬───────┘
        │
        ▼ JSON-RPC 2.0
┌───────────────┐
│ MCP Server    │
│ (GitHub等)    │
└───────┬───────┘
        │
        ▼
┌───────────────┐
│ tools/list    │
│ → 返回工具列表│
│ → 工具schema  │
└───────────────┘
        │
        ▼
┌───────────────┐
│ Agent 可用    │
│ 工具自动注册  │
└───────────────┘

💡 MCP vs Skills vs Function Calling

特性MCPSkillsFunction Calling
标准化✅ 统一协议❌ 私有格式❌ 各LLM不同
跨Agent共享✅ 支持⚠️ 需适配❌ 不支持
工具发现✅ 自动⚠️ 手动❌ 手动
适用场景标准化集成Agent特定能力简单函数调用

🔗 相关推荐

📄 文章
OpenClaw 入门指南
📄 文章
OpenClaw 完全教程
📄 文章
OpenClaw 最佳实践
📄 文章
OpenClaw 自动化工作流
📄 文章
OpenClaw 配置详解