mcpField
O
OneNoteMCP

OneNoteMCP

本地服务
github.com/swax生产力352 周前更新

关于 OneNoteMCP

OneNoteMCP 是用于访问 OneNote 的 MCP 服务,也支持个人笔记本。它更新了 MCP API、修复页面内容读取,并将身份验证凭据缓存在磁盘上。

主要功能

  1. 01访问个人 OneNote 笔记本
  2. 02读取页面内容
  3. 03在磁盘缓存身份验证凭据
  4. 04使用最新的 MCP API

适用场景

  1. 01通过 MCP 服务访问个人笔记本
  2. 02读取 OneNote 页面内容
  3. 03复用缓存的身份验证凭据

MCP 相关

通过 MCP 工具提供 OneNote 访问能力,包括 `listNotebooks` 和页面内容读取。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Forked from ZubeidHendricks/azure-onenote-mcp-server,原始 README.md 请参阅该页面

关于

用于 OneNote 的 MCP。此项目从原项目分叉并经过大量修订,现在支持个人笔记本。 已更新至最新 MCP API。支持缓存凭据。

改进

功能
  • 通过实现 ReadableStream 修复了 getPageContent 功能
  • 成功实现了针对个人笔记本的 API 调用
  • 更新了 index 和工具,以使用最新版本的 MCP
代码架构
  • 移除了不必要的类,简化了代码库
  • 移除了许多不必要的文件
身份验证与性能
  • 实现了身份验证凭据的磁盘缓存
  • 更新了软件包依赖项
  • 添加了 dotenv 支持,以便直接测试

Azure 应用注册

  1. 前往 Azure Portal 并导航到 App registrations
  2. 为 OneNoteMCP 创建新的注册
  3. 添加 Microsoft Graph API 权限:
    • Notes.Read
    • Notes.Read.All
    • (可选)添加 Notes.Write 权限,但有丢失笔记的风险
  4. 创建客户端密钥
  5. 复制客户端 ID/密钥以进行配置
  6. 在清单中将 signInAudience 设置为 AzureADandPersonalMicrosoftAccount

MCP 服务设置

在本地 .env 文件以及 Claude 桌面应用中填写客户端 ID/密钥。

AUTH_CACHE_DIR 应设置为存储生成的 API 访问令牌的目录。

AZURE_CLIENT_ID=\
AZURE_CLIENT_SECRET=
AUTH_CACHE_DIR="C:\\git\\azure-onenote-mcp-server\\.cache"

先手动运行服务,以生成缓存的凭据,之后 Claude 桌面应用运行服务时会使用这些凭据。

npm install
npm build
npm run

服务启动并登录后,可以直接运行以下命令来测试 API 是否正常工作。

{"jsonrpc": "2.0", "id": 3, "method": "tools/call", "params": {"name": "listNotebooks", "arguments": {}}}

Claude MCP 配置

{
  "mcpServers": {
    "onenote": {
      "command": "node",
      "args": ["C:\\git\\azure-onenote-mcp-server\\dist\\index.js"],
      "env": {
        "AZURE_CLIENT_ID": "...",
        "AZURE_CLIENT_SECRET": "...",
        "AUTH_CACHE_DIR": "C:\\git\\azure-onenote-mcp-server\\.cache"
      }
    }
  }
}

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。