跳到主要内容

Notion (MCP)

社区贡献

本教程由社区贡献,不受 Open WebUI 团队官方维护或审核。它仅作为演示,说明如何根据你的具体场景自定义 Open WebUI。想参与贡献?请查看贡献教程。

Notion 在 https://mcp.notion.com/mcp 托管了一个远程 MCP 服务器,Open WebUI 通过 Streamable HTTP 原生连接。身份验证通过 Notion 的 OAuth 流程处理——无需 API 令牌、无需代理、无需额外容器。

设置

前置条件:WEBUI_SECRET_KEY

必须WEBUI_SECRET_KEY 环境变量设置为持久值。若不设置,每次容器重启后 OAuth 会话将中断,强制重新进行身份验证。详情请参见 MCP 功能文档

1. 添加工具

进入 Admin Panel → Settings → External Tools,点击 + 添加新连接。填写以下信息:

字段
TypeMCP Streamable HTTP
URLhttps://mcp.notion.com/mcp
AuthOAuth 2.1
IDntn
NameNotion

点击 Register Client,然后 Save。如果您已预先创建 OAuth 客户端凭据,请使用 OAuth 2.1 (Static)

备选方案:导入 JSON

您也可以点击弹窗中的 Import 并粘贴以下配置:

[
  {
    "type": "mcp",
    "url": "https://mcp.notion.com/mcp",
    "spec_type": "url",
    "spec": "",
    "path": "openapi.json",
    "auth_type": "oauth_2.1",
    "key": "",
    "info": {
      "id": "ntn",
      "name": "Notion",
      "description": "Search, read, create, and manage Notion pages and databases."
    }
  }
]

已导入 Notion MCP 配置的外部工具弹窗。

2. 授权

在任意聊天中,打开 + → Integrations → Tools 并开启 Notion。您将被重定向到 Notion 的 OAuth 流程——选择您的工作区并授权访问。

已开启 Notion 工具的聊天输入栏。

Notion OAuth 授权界面。

OAuth 2.1 工具无法预先启用

请勿将此工具设置为模型的默认工具。OAuth 2.1 需要交互式浏览器重定向,无法在请求过程中进行。用户必须通过 + 按钮在每次聊天时手动启用。详情请参见 MCP 文档

重新验证

Notion 的 OAuth 会话可能在空闲或容器重启后过期。如果出现 Failed to connect to MCP server 'ntn',请在任意聊天中重新切换工具以触发授权流程。

速率限制

标准 Notion API 限制适用:

  • 常规: 每分钟 180 次请求
  • 搜索: 每分钟 30 次请求

故障排除

Failed to connect to MCP server 'ntn'

OAuth 会话已过期。在任意聊天中重新切换 Notion 工具(+Integrations → Tools)以重新授权。

聊天中 MCP 服务器连接失败错误。

OAuth callback failed: mismatching_state

您正在通过 localhost 访问 Open WebUI,但 WEBUI_URL 设置为公共域名。请使用 WEBUI_URL 中的确切 URL 访问实例并重新授权。

OAuth 回调 mismatching_state 错误。

Object not found

该页面尚未与集成共享。在 OAuth 流程中,Notion 会询问授权访问哪些页面——请确保选择了相关页面。您可以随时通过 Notion 集成设置更新访问权限。

创建页面时出现 missing_property

Notion 需要父页面或数据库。请告知模型:"先搜索我的'Notes'页面,然后在其中创建新页面。"

本内容仅供参考,不构成任何保证、担保或合同承诺。Open WebUI 按“现状”提供。请参阅您的许可协议 以了解适用条款。