OneNote MCP Server

OneNote MCP Server

site icon
2025.03.25 2
JavaScriptOneNote 自动化浏览器自动化笔记管理浏览器自动化交流协作
OneNote MCP Server 是一个基于 MCP(Model Context Protocol)的服务,用于通过浏览器自动化浏览和与 OneNote 网页应用交互。该服务使 AI 助手和其他 MCP 兼容的客户端能够通过程序化方式浏览和交互通过网页链接共享的 OneNote 笔记本。
View on GitHub

Overview

基本能力

产品定位

OneNote MCP Server 是一个浏览器自动化工具,专门用于与 OneNote 网页应用交互,提供程序化访问和操作 OneNote 笔记本的能力。

核心功能

  • 导航 OneNote 的层次结构(笔记本、分区、页面)
  • 从 OneNote 读取页面内容
  • 向现有页面添加新内容
  • 创建新页面
  • 在 OneNote 中搜索
  • 截取当前视图的屏幕截图
  • 在会话期间保持状态

适用场景

  • AI 助手需要访问和操作 OneNote 内容
  • 自动化 OneNote 笔记本的管理任务
  • 批量处理 OneNote 内容
  • 集成 OneNote 功能到其他应用程序中

工具列表

  • launch_onenote(shared_url): 使用共享笔记本 URL 启动 OneNote 网页应用
  • get_all_notebooks(): 列出所有可用的笔记本
  • get_all_sections(): 列出当前笔记本中的所有分区
  • get_all_pages(): 列出当前分区中的所有页面
  • navigate_to_notebook_by_name(notebook_name): 导航到特定的笔记本
  • navigate_to_section_by_name(section_name): 导航到特定的分区
  • navigate_to_page_by_name(page_name): 导航到特定的页面
  • get_current_page_content(): 获取当前页面的内容
  • add_content_to_page(content): 向当前页面添加内容
  • create_new_page_with_name(page_name): 创建新页面
  • search_in_onenote(search_term): 在 OneNote 中搜索特定术语
  • take_screenshot(): 截取当前视图的屏幕截图
  • get_onenote_state(): 获取当前状态信息
  • close_onenote(): 关闭 OneNote 会话并清理资源

常见问题解答

  • 如果服务器无法连接到 OneNote,请确保共享链接无需登录即可访问
  • 如果选择器失败,可能是 OneNote UI 发生了变化 - 检查服务器代码
  • 对于其他问题,请检查服务器日志以获取错误详细信息

使用教程

使用依赖

  • Python 3.10 或更高版本
  • browser-use 0.1.40 或更高版本
  • MCP SDK 1.2.0 或更高版本
  • Playwright
  • 互联网连接
  • 共享的 OneNote 笔记本 URL(必须无需身份验证即可访问)

安装教程

# 克隆仓库或创建项目结构
# 然后导航到项目目录
cd onenote-mcp

# 安装包和依赖
pip install -e .

# 安装 Playwright 浏览器
playwright install

调试方式

独立模式

可以直接运行服务器:

python -m onenote_mcp

与 Claude Desktop 或其他 MCP 主机集成

  1. 通过编辑配置文件配置 Claude Desktop 使用 OneNote MCP 服务器:
{
  "mcpServers": {
    "onenote": {
      "command": "python",
      "args": ["-m", "onenote_mcp"]
    }
  }
}
  1. 启动 Claude Desktop,它将自动启动 OneNote MCP 服务器
  2. 在 Claude 聊天中使用可用工具

许可证

该项目遵循 MIT 开源许可条款。