OneNoteMCP

OneNoteMCP

🚀 OneNote的MCP(Microsoft Cloud Partner)项目

本项目是一个用于OneNote的MCP(Microsoft Cloud Partner)。它基于原始项目进行了重大修改,如今支持个人笔记本。不仅更新至最新MCP API版本,还实现了凭证缓存功能,为用户带来更便捷的使用体验。

🚀 快速开始

Azure应用注册指南

  1. 登录Azure Portal,进入应用注册界面。
  2. 为OneNoteMCP创建一个新的应用注册。
  3. 添加Microsoft Graph API权限:
    • Notes.Read
    • Notes.Read.All
    • (可选)添加Notes.Write权限(存在笔记丢失风险)
  4. 创建客户端密钥。
  5. 复制获取的客户ID和密钥用于配置。
  6. 在应用manifest中将signInAudience设置为AzureADandPersonalMicrosoftAccount

MCP服务器搭建

将客户ID和密钥放入本地.env文件,并在Claude桌面也进行相应配置。AUTH_CACHE_DIR应指定缓存凭证的存放目录。

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"
}
}
}
}

✨ 主要特性

功能改进

  • 修复了getPageContent功能,通过实现ReadableStream
  • 成功调用针对个人笔记本的API。
  • 更新索引和工具以使用最新MCP版本。

代码架构优化

  • 简化了代码库,移除了不必要的类。
  • 删除了很多冗余文件。

认证与性能优化

  • 实现了磁盘缓存用于存储认证凭证。
  • 更新依赖项包。
  • 加入dotenv支持以实现本地直接测试能力。
  • 0 关注
  • 0 收藏,11 浏览
  • system 提出于 2025-09-20 12:30

相似服务问题