在过去两年中,大语言模型(LLM)的演进路径非常清晰:从最初的“知识问答”到后来的“长文本分析”,再到现在的“自主 Agent”。然而,限制 AI 真正进入生产力的最后一道壁垒,往往不是模型本身的智商,而是它与外部世界的交互能力

近期,Anthropic 推出的 anthropics/skills 及其背后的 Model Context Protocol (MCP) 协议,正是在试图打破这种“黑盒状态”。它不仅仅是一个简单的 API 调用工具,而是一套旨在让 AI 能够无缝集成各种工具、数据源和本地环境的开放标准。

为什么我们需要重新定义“技能”?

在传统的开发模式中,如果我们想让 AI 访问数据库或读取本地文件,通常需要编写大量的胶水代码(Glue Code)。每一个项目都要重新定义一套 API 转换层,这种做法效率极低且难以扩展。

Anthropic 提出的 Skills 概念,本质上是将“模型的能力”与“具体的实现”进行了解耦。通过 MCP 协议,开发者可以创建一个标准的“技能服务器”(MCP Server),模型作为客户端(Client)可以按需调用。这种架构类似于操作系统的驱动程序:无论你换了什么外设,只要驱动标准统一,操作系统就能即插即用。

核心功能与技术特点

1. 声明式工具调用 (Declarative Tool Calling)

anthropics/skills 框架下,技能的定义是声明式的。开发者通过 JSON Schema 定义工具的输入参数和输出结构,Claude 模型能够根据当前的上下文自动推断何时调用、如何填充参数。

2. 安全的上下文沙盒

安全性是 Anthropic 的底层基因。MCP 协议允许开发者精细化控制权限。例如,你可以定义一个只能读取特定目录下 .md 文件的技能,而无需给 AI 整个系统的文件读取权限。

3. 跨平台的互操作性

这是 MCP 最具野心的地方。它支持多种传输层(如本地的标准输入输出 stdio,或者远程的 HTTP/SSE)。这意味着一个写好的“技能”,既可以运行在你的本地终端,也可以部署在云端服务器。

应用场景:从“复读机”到“数字员工”

我们可以通过几个具体的场景来看看 anthropics/skills 是如何改变开发流程的:

  • 智能 IDE 助手:通过集成文件系统技能,AI 不再只是在侧边栏给你建议,它可以直接分析你的整个工程目录,执行 grep 搜索,甚至运行单元测试并根据报错信息自动修复代码。
  • 实时数据分析:不再需要手动把 CSV 贴给 AI。通过 SQL 技能,Claude 可以直接连接到你的 PostgreSQL 数据库,通过自然语言生成查询并实时可视化结果。
  • 企业内网搜索:将 Slack、Jira 和 Notion 的 API 封装成 MCP 技能,AI 就能瞬间变成一个拥有企业全量知识库的超级员工。

代码实现:如何快速构建一个 MCP 技能?

下面是一个使用 TypeScript 开发简单 MCP Server 的示例,它能让 AI 获取系统当前的负载情况:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
import { CallToolRequestSchema, ListToolsRequestSchema } from "@modelcontextprotocol/sdk/types.js";
import os from "os";

const server = new Server({
name: "system-stats-server",
version: "1.0.0",
}, {
capabilities: { tools: {} },
});

// 1. 注册技能列表
server.setRequestHandler(ListToolsRequestSchema, async () => ({
tools: [{
name: "get_cpu_load",
description: "获取系统当前 CPU 负载情况",
inputSchema: { type: "object", properties: {} }
}]
}));

// 2. 实现技能逻辑
server.setRequestHandler(CallToolRequestSchema, async (request) => {
if (request.params.name === "get_cpu_load") {
const load = os.loadavg();
return {
content: [{ type: "text", text: `当前系统 1/5/15 分钟负载分别为: ${load.join(", ")}` }]
};
}
throw new Error("工具未找到");
});

// 3. 启动服务
const transport = new StdioServerTransport();
await server.connect(transport);

通过这段代码,Claude 就能实时感知你机器的运行状态,而不仅仅是基于 2023 年之前的训练数据进行猜测。

未来展望:AI 的“USB 接口”时代

正如 USB 协议终结了 PC 接口乱象一样,MCP 协议和 anthropics/skills 正在试图统一 AI 的生态接口。在未来,我们可能会看到一个巨大的“技能商店”,开发者贡献各种细分领域的专业技能(如生物医药模拟、金融精算、复杂电路设计),而用户只需要将这些技能挂载到自己的 AI 助手上。

更深层次的影响在于,这标志着 LLM 正在从“生成模型”转向“控制模型”。它不再仅仅是生成优美的文字,而是作为大脑,精准地调度各种专业化的工具去解决现实世界的问题。

结语

Anthropic 这次开源的技能框架,其核心价值在于标准化解耦。它给了开发者一种极其优雅的方式,让 AI 能够走出对话框,真正触碰到现实世界的文件、代码和数据。如果你正在思考如何将 AI 落地到具体的业务流程中,anthropics/skills 无疑是目前最值得关注的技术底座。

随着生态的完善,或许在不久的将来,每一个软件都会自带一个 MCP Server,让 AI 的“手”延伸到数字世界的每一个角落。