动手试试

画一张图,标出 AI 应用、Client、笔记 Server 怎么连;再写下查询参数、返回字段,以及允许查哪个目录。

Tools、Resources 和 Prompts

MCP 服务端能提供三类东西:Tools 用来执行操作,Resources 提供上下文材料,Prompts 是可复用的交互模板。定义见服务端能力概览。

放到笔记服务上:“按关键词搜索”可以做成 Tool,某篇笔记的正文可以作为 Resource,再给一个“按问题、理解、疑问整理摘录”的 Prompt。不用三样都做,先把搜索做好,想清楚能查哪些范围、返回几条、带哪些字段。

search_notes 的参数和返回

Client 用 tools/list 拿到工具列表,用 tools/call 调用。每个工具都要声明名字和输入结构,格式见MCP Tools 规范。

假设工具叫 search_notes,参数和返回可以设计成下面这样。字段是这个例子自己定的,不是完整的 MCP 报文,也不能直接当配置用。

{
  "name": "search_notes",
  "arguments": {
    "query": "间隔复习",
    "limit": 3
  }
}
{
  "matches": [{
    "note_id": "study-014",
    "title": "本周复习安排",
    "excerpt": "周三回看周一没能解释清楚的概念。"
  }]
}

返回里有标题、笔记 ID 和一小段摘录,AI 应用据此判断要不要接着读全文。上面的摘录是编的,真要测试,得准备一篇确实包含这个关键词的笔记,看能不能搜出来。

能读哪些,由服务端说了算

Host 负责管连接权限、用户授权和安全策略,Server 也得自己检查输入、限制访问范围。两边的职责见架构说明和工具安全要求。

做笔记搜索时,可以先只开放一个测试目录,并把这个限制写在服务端代码里。提示词里写一句“请勿删除文件”,代替不了真正的权限控制。测试时各查一个有结果、没结果的关键词,再确认范围外的资料确实访问不到。

这里引用的是 2025-11-25 版的协议规范。实际配置时,还要看你用的 AI 应用和 SDK 支持哪个协议版本、怎么连接、怎么授权,所以没写通用的安装命令。

参考资料

主要参考了下面这些官方文档。文中的示例是为练习另写的,不是官方原文。

  1. MCP Architecture(2025-11-25)Model Context Protocol

    Host、Client、Server 的分工,以及 Host 的权限职责。引用的是 2025-11-25 版。

  2. MCP Server Features Overview(2025-11-25)Model Context Protocol

    Tools、Resources、Prompts 的区别。

  3. MCP Tools(2025-11-25)Model Context Protocol

    tools/list、tools/call、输入结构和访问控制要求。search_notes 和示例 JSON 是为讲解编的。

个人免责声明

本文是个人学习笔记,仅供本人学习使用。示例只作参考,实际用法以官方文档为准。