Skip to content

obsidian MCP: folder blocked-path matcher triggers on any segment named rea (0.10.0) #60

@himerus

Description

@himerus

Symptom

The mcp__rea-gateway__obsidian__edit-note (and likely sibling read-note, create-note, move-note) tools reject any folder argument whose segment matches rea/, including legitimate paths like Projects/rea/Bug Reports.

Error verbatim

Argument "folder" references blocked path ".rea/". Tool: edit-note

Why this is wrong

The blocked-path check is matching rea/ without anchoring on:

  • a leading . (.rea/)
  • start-of-path or / before the dot

This conflates:

  • .rea/ — the governance directory at the project filesystem root (legitimately blocked)
  • any Obsidian folder named rea — e.g. Projects/rea/Bug Reports (NOT blocked — it's a vault folder on a completely different filesystem)

Real-world impact

During the @bookedsolid/rea@0.9.2 upgrade on bookedsolidtech/helix, the agent was logging REA bug reports to the canonical vault location bst/Projects/rea/Bug Reports/Rea Bug Reports.md. The MCP rejected every edit attempt. Workaround: write to the vault file directly on disk via the filesystem Write tool, bypassing the MCP entirely.

Fix required

Anchor the blocked-path regex on:

  • leading . (^\.rea/ or ^.*\/\.rea\/)
  • OR explicit path-boundary match ((^|/)\.rea/)

The intent is to block ONLY the governance directory .rea/, not any path containing the substring rea/.

Acceptance

folder: "Projects/rea/Bug Reports"       → allowed
folder: ".rea/"                            → blocked
folder: "subdir/.rea/"                     → blocked (if this pattern is intended)
folder: "research/notes"                   → allowed
folder: "rearrange/notes"                  → allowed

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions