项目简介

WorkFlowy MCP 服务器提供了一个标准化的接口,使 LLM 客户端能够直接访问和操作 WorkFlowy 中的数据。通过该服务器,LLM 可以智能地执行任务管理、内容组织、数据同步等操作,从而构建更智能、更自动化的工作流。它支持多种数据交互模式,包括直接 API 调用和通过浏览器扩展进行实时 DOM 提取,为 LLM 提供了丰富且动态的上下文。

主要功能点

  • WorkFlowy 内容管理:
    • 创建节点 (ETCH): 推荐使用 'workflowy_etch' 工具批量或结构化地创建新的 WorkFlowy 列表项,包括其嵌套的子节点、备注和显示模式。
    • 更新节点: 修改现有列表项的名称、备注、显示模式或完成状态。
    • 获取节点详情 (GLIMPSE): 推荐使用 'workflowy_glimpse' 工具获取指定节点的完整信息和其子树结构,支持从 WorkFlowy API 或连接的浏览器 DOM 中提取数据。
    • 删除节点: 彻底删除一个 WorkFlowy 列表项及其所有子列表项。
    • 标记完成/未完成: 将列表项的状态在“已完成”和“未完成”之间切换。
    • 移动节点: 将列表项移动到 WorkFlowy 大纲中的新位置或新的父节点下。
  • 高级数据同步 (Nexus):
    • 提供一套复杂的工具集 ('nexus_scry', 'nexus_summon', 'nexus_ignite_shards', 'nexus_transform_jewel', 'nexus_weave' 等),用于将 WorkFlowy 内容以 JSON 格式导出、在本地进行精细编辑(支持三向合并和版本控制),然后安全、无损地同步回 WorkFlowy。
    • 支持探索模式 (Exploration),允许 LLM 通过迭代的“打开/关闭”操作,逐步探索 WorkFlowy 大纲,并提取关键信息。
  • 后台任务处理: 允许启动耗时操作(如批量导入、复杂同步)作为后台任务,LLM 可以通过任务 ID 查询任务状态或在需要时取消任务。
  • 数据来源灵活性: 节点数据可以从 WorkFlowy API 获取,或者在 Chrome 扩展程序连接时,通过 WebSocket 从浏览器 DOM 中实时提取,以提供最新的可视化上下文。

重要提示: 服务器中的一些工具 ('workflowy_create_single_node__WARNING__prefer_ETCH', 'workflowy_get_node__WARNING__prefer_glimpse', 'workflowy_list_nodes__WARNING__prefer_glimpse') 带有 '__WARNING__prefer_ETCH' 或 '__WARNING__prefer_glimpse' 后缀,旨在引导 LLM 优先使用更强大、更高效的 'workflowy_etch' 和 'workflowy_glimpse' 工具。某些“WARNING”工具在调用时可能需要一个特殊“秘密代码”进行授权,以确保 LLM 遵循推荐的工作流。

安装步骤

  1. Python 环境: 确保您的系统已安装 Python 3.10 或更高版本。
  2. 安装服务器包: 打开终端或命令提示符,运行以下命令安装 WorkFlowy MCP 服务器:
    pip install workflowy-mcp
  3. 获取 WorkFlowy API 密钥: 访问 WorkFlowy 官方 API 密钥页面(通常是 'https://beta.workflowy.com/api-key')获取您的 API 密钥。这是服务器连接到 WorkFlowy 账户所必需的。

服务器配置

WorkFlowy MCP 服务器是一个后台进程,需要通过您的 MCP 客户端(如 Claude Desktop)进行配置。以下是 MCP 客户端配置文件中 'mcpServers' 部分的配置示例和说明:

配置示例 (JSON格式说明):

要让您的 MCP 客户端能够连接并使用 WorkFlowy MCP 服务器,您需要在客户端的配置中添加类似如下的 JSON 对象。请注意,这是一个结构说明,而非直接可运行的代码块,您需要根据客户端的具体要求手动编辑其配置文件。

{
  "mcpServers": {
    "workflowy": {
      "command": "python3",
      "args": ["-m", "workflowy_mcp"],
      "env": {
        "WORKFLOWY_API_KEY": "您的WorkFlowy_API_密钥",
        // 以下为可选配置项,取消注释并修改以覆盖默认值:
        // "WORKFLOWY_API_URL": "https://workflowy.com/api/v1",       // WorkFlowy API 基础URL
        // "WORKFLOWY_REQUEST_TIMEOUT": "30",                         // API 请求超时时间(秒)
        // "WORKFLOWY_MAX_RETRIES": "3",                              // API 请求最大重试次数
        // "WORKFLOWY_RATE_LIMIT_REQUESTS": "60",                     // 每分钟允许的最大请求数
        // "WORKFLOWY_RATE_LIMIT_WINDOW": "60",                       // 速率限制的窗口时间(秒)
        // "LOG_LEVEL": "INFO"                                      // 服务器日志级别 (DEBUG, INFO, WARNING, ERROR, CRITICAL)
      }
    }
  }
}
  • 'mcpServers': 客户端配置中用于定义所有 MCP 服务器的顶级键。
  • 'workflowy': 这是您为该 WorkFlowy MCP 服务器定义的唯一名称,您可以根据需要更改。
  • 'command': 启动 MCP 服务器的命令,通常为 'python3' (Mac/Linux) 或 'python' (Windows)。
  • 'args': 传递给 'command' 的参数,'-m workflowy_mcp' 指示 Python 解释器运行 'workflowy_mcp' 模块作为服务器入口。
  • 'env': 一个 JSON 对象,用于设置服务器运行时所需的环境变量。
    • 'WORKFLOWY_API_KEY': 必填项,请替换为您的 WorkFlowy API 密钥。服务器将使用此密钥进行身份验证。
    • 其他 'WORKFLOWY_API_URL'、'WORKFLOWY_REQUEST_TIMEOUT'、'WORKFLOWY_MAX_RETRIES'、'WORKFLOWY_RATE_LIMIT_REQUESTS'、'WORKFLOWY_RATE_LIMIT_WINDOW' 和 'LOG_LEVEL' 均为可选,用于自定义 API 访问行为、速率限制策略和日志输出级别。

配置完成后,请务必重新启动您的 MCP 客户端,以确保加载新的 WorkFlowy MCP 服务器配置。

基本使用方法

一旦服务器配置成功并运行,您的 LLM 客户端即可通过自然语言提示调用 WorkFlowy 工具来执行各种操作。以下是一些基本使用示例:

  • 创建任务: "请使用 'workflowy_etch' 工具,在我的 WorkFlowy 根目录创建一个名为 '每周计划' 的节点,其中包含子节点 '购买食材' 和 '安排会议'。" (LLM 客户端会调用 'workflowy_etch' 工具)
  • 获取根目录内容: "使用 'workflowy_glimpse' 工具列出我的 WorkFlowy 顶级节点的所有内容和结构。" (LLM 客户端会调用 'workflowy_glimpse' 工具)
  • 更新节点备注: "更新节点 'abcdefg-1234567' 的备注为 '已完成初步市场调研,准备进入下一阶段。'" (LLM 客户端会调用 'workflowy_update_node' 工具)
  • 标记任务完成: "标记 WorkFlowy 节点 'hijklmn-8901234' 为已完成。" (LLM 客户端会调用 'workflowy_complete_node' 工具)
  • 删除节点: "删除 WorkFlowy 节点 'opqrstu-5678901' 及其所有子节点。" (LLM 客户端会调用 'workflowy_delete_node' 工具)
  • 移动节点: "将 WorkFlowy 节点 'vwxyzab-2345678' 移动到父节点 'cdefghi-9012345' 的顶部。" (LLM 客户端会调用 'workflowy_move_node' 工具)
  • 查询后台任务状态: "查询作业 ID 为 'etch-1' 的后台任务状态。" (LLM 客户端会调用 'mcp_job_status' 工具)

重要提示: WorkFlowy 的 Web 界面 URL 中的节点 ID(例如 'workflowy.com/#/abc123')与 API 使用的 ID 不兼容。请始终使用 WorkFlowy MCP 服务器工具返回或由 API 生成的实际节点 ID 进行操作。

信息

分类

生产力应用