返回 MCP 目录
public公开dns本地运行

obsidian-tasks-mcp

这是一个用于解析Obsidian笔记中任务的Go语言MCP服务器,支持通过查询语法筛选任务,无需依赖REST API。

article

README

🚀 Obsidian Tasks MCP 服务器

这是一个独立的 Go 语言 MCP 服务器,它能够从你的 Obsidian 保险库中的 Markdown 文件里解析任务,并在不依赖 REST API 的情况下评估核心任务查询过滤器。

本服务器实现了 Obsidian Tasks 插件 中部分查询过滤器的功能。完整的查询语法和示例请参考 Tasks 插件文档

🚀 快速开始

安装

使用 go install 命令

go install github.com/hairyhenderson/obsidian-tasks-mcp@latest

从源代码安装

git clone https://github.com/hairyhenderson/obsidian-tasks-mcp.git
cd obsidian-tasks-mcp
go install .

使用方法

服务器通过标准输入/输出运行,并使用 MCP 协议进行通信。它接受一个或多个根目录作为命令行参数:

obsidian-tasks-mcp -root /path/to/vault -root /path/to/other/vault

MCP 工具:query_tasks

服务器提供了一个名为 query_tasks 的 MCP 工具,它接受以下参数:

  • query(字符串,可选):带有过滤器的任务查询字符串(每行一个过滤器)。支持的过滤器和语法请参考 Tasks 插件查询文档
  • rootDirs(字符串数组,必需):用于扫描 Markdown 文件的根目录。

该工具会返回一个任务对象数组,包含 iddescriptionstatusfilePathlineNumbertagsdueDate 字段。

为 Cursor 进行配置

将以下内容添加到你的 Cursor MCP 设置中(通常是 ~/.cursor/mcp.json 或类似文件):

{
  "mcpServers": {
    "obsidian-tasks": {
      "command": "obsidian-tasks-mcp",
      "args": [
        "-root",
        "/path/to/your/obsidian/vault"
      ]
    }
  }
}

你可以指定多个根目录:

{
  "mcpServers": {
    "obsidian-tasks": {
      "command": "obsidian-tasks-mcp",
      "args": [
        "-root",
        "/path/to/vault1",
        "-root",
        "/path/to/vault2"
      ]
    }
  }
}

开发

运行测试

make test

代码检查

make lint

📄 许可证

本项目采用 MIT 许可证。完整的许可证文本请查看 LICENSE 文件。

版权所有 (c) 2026 Dave Henderson

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端