关于 OneNote MCP Server
OneNote MCP Server 是面向 Microsoft OneNote 的 MCP 服务,使 AI 模型可以通过标准化接口管理笔记本、分区和页面。项目以 npm 包形式发布,并通过 Microsoft Graph API 访问数据。
主要功能
- 01笔记本、分区和页面的增删查
- 02基于 HTML 的页面内容创建与更新
- 03跨笔记本搜索页面
- 04通过 Azure 应用凭据进行认证
适用场景
- 01让 AI 模型读取或整理 OneNote 页面内容
- 02通过 MCP 客户端批量创建笔记本和分区
- 03在多个笔记本中搜索页面
MCP 相关
该项目是一个 MCP 服务,向 MCP 客户端暴露 OneNote 的笔记本、分区和页面管理工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
OneNote MCP 服务
Microsoft OneNote 的模型上下文协议(MCP)服务实现,可让 AI 大模型通过标准化接口与 OneNote 交互。
功能
笔记本管理
- 列出所有笔记本
- 创建新笔记本
- 获取笔记本详情
- 删除笔记本
分区管理
- 列出笔记本中的分区
- 创建新分区
- 获取分区详情
- 删除分区
页面管理
- 列出分区中的页面
- 使用 HTML 内容创建新页面
- 读取页面内容
- 更新页面内容
- 删除页面
- 搜索所有笔记本中的页面
安装
从 npm 安装(推荐)
npm install -g mcp-server-onenote
自 2025 年 4 月 27 日起,该软件包已发布到 npm 注册表。
运行软件包
安装后,可使用以下命令运行软件包:
mcp-server-onenote
或使用 npx:
npx mcp-server-onenote
通过 Smithery 安装
要通过 Smithery 自动为 Claude Desktop 安装 OneNote 服务:
npx -y @smithery/cli install @modelcontextprotocol/server-onenote --client claude
从 GitHub 安装
npm install -g github:ZubeidHendricks/azure-onenote-mcp-server
配置
设置以下环境变量:
AZURE_TENANT_ID:你的 Azure 租户 IDAZURE_CLIENT_ID:你的 Azure 应用程序(客户端)IDAZURE_CLIENT_SECRET:你的 Azure 客户端密钥
配合 MCP 客户端使用
将以下内容添加到 MCP 客户端配置中(例如 Claude Desktop):
{
"mcpServers": {
"onenote": {
"command": "mcp-server-onenote",
"env": {
"AZURE_TENANT_ID": "<YOUR_TENANT_ID>",
"AZURE_CLIENT_ID": "<YOUR_CLIENT_ID>",
"AZURE_CLIENT_SECRET": "<YOUR_CLIENT_SECRET>"
}
}
}
}
Azure 应用注册
- 前往 Azure Portal 并导航至“应用注册”
- 创建新的注册
- 添加 Microsoft Graph API 权限:
- Notes.ReadWrite.All
- Notes.Read.All
- 创建客户端密钥
- 复制租户 ID、客户端 ID 和客户端密钥以进行配置
开发
# Install dependencies
npm install
# Run tests
npm test
# Build
npm run build
# Lint
npm run lint
# Run locally
npm start
贡献
有关如何为此代码库做出贡献的信息,请参阅 CONTRIBUTING.md。
许可证
本项目采用 MIT 许可证授权,详情请参阅 LICENSE 文件
更新日志
0.1.0 (2025-04-27)
- 首次发布
- 实现 OneNote 笔记本、分区和页面管理的核心功能
- 发布到 npm 注册表
0.1.1 (2025-04-27)
- 在 package.json 中添加可执行文件 bin
- 修复 npx 命令无法确定要运行的可执行文件的问题
- 更新 README,提供清晰的运行说明
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。
