资源被设计成应用控制的,这意味着客户端应用可以决定如何以及何时使用它们。不同的 MCP 客户端可能以不同的方式处理资源。例如: Claude 桌面版(Claude Desktop)目前要求用户显式地选择资源后才能使用 其他客户端可能会基于启发式方法自动选择资源 有些实现甚至可能允许 AI 模型本身决定使用哪些资源 服务器作者在实现资源支持时,应该准备好处理上述任何一种交互模式。为了自动地向模型暴露数据,服务器作者应该使用模型控制的基元,例如工具(Tools)。
[协议]://[主机]/[路径]
[protocol]://[host]/[path]
file:///home/user/documents/report.pdf
postgres://database/customers/schema
screen://localhost/display1
resources/list
端点暴露一个具体的资源列表。 每个资源包括:
resources/read
请求。
resources/read
请求的响应中返回多个资源。 例如,当读取目录时,可以使用此方法返回目录中的文件列表。notifications/resources/list_changed
通知客户端。resources/subscribe
notifications/resources/updated
resources/read
获取最新内容resources/unsubscribe
取消订阅