分叉自 ZubeidHendricks/天蓝色onenote mcp服务器 请参阅该页面以获取原始README.md
关于
OneNote的MCP。经过广泛的修改和修订,现在可以与个人笔记本一起使用。 更新至最新的MCP API。支持缓存凭据。
改进
功能
- 固定的
getPageContent通过实现ReadableStream实现功能 - 针对个人笔记本成功实施API调用
- 更新索引和工具以使用最新的MCP版本
代码架构
- 通过删除不必要的类简化了代码库
- 删除了许多不必要的文件
身份验证和性能
- 为身份验证凭据实现了磁盘缓存
- 更新了包依赖关系
- 添加了对直接测试功能的dotenv支持
Azure应用程序注册
- 转到Azure门户并导航到应用程序注册
- 为OneNoteMCP创建新注册
- 添加Microsoft Graph API权限:
- 笔记。阅读 - 笔记。读。全部 - (可选择添加Notes.Write权限,但有丢失笔记的风险)
- 创建客户端密钥
- 复制客户端ID/密钥以进行配置
- 在清单集中
signInAudience向AzureADandPersonalMicrosoftAccount
MCP服务器设置
把客户ID/秘密放在你的 .env 本地文件以及Claude桌面文件。
这 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"
}
}
}
}