Skip to content

[Feature]: Expose move/delete document tools over MCP (bundled skill docs describe them, but they're not registered) #1115

Description

@matthiasautrata

Summary

The bundled open-knowledge skill (SKILL.md shipped with the project scaffold) documents move({ from, to }) and delete({ document }) as two of the "four native CRUD verbs" available over MCP, alongside write and edit. It specifically calls out that move "rewrites referrers" — i.e. updates any wikilinks pointing at the renamed doc. The skill's tool index also lists install, import, and share_link, for a total of 21 tools.

In practice, only 16 MCP tools are actually registered for the project: audit, checkpoint, config, conflicts, edit, exec, history, links, lint, palette, preview_url, resolve_conflict, restore_version, search, skills, write. There is no move, delete, install, import, or share_link tool available to call.

Why this matters

I was using an agent (Claude Code via MCP) to bring a vault's filenames into compliance with the project's own documented convention (kebab-case, per AGENTS.md). ~159 of 166 files in one folder needed renaming. Without move/delete, there's no way for an agent to do this correctly:

  • write can create a new doc at the new path, but can't remove the old one → renames become duplicates instead of clean moves.
  • Wikilinks referencing the old filename have to be rewritten by hand, file by file, instead of automatically via move's referrer-rewrite behavior.

What I confirmed

  • ok --version and npm view @inkeep/open-knowledge version both report 0.49.2 — so this isn't a stale/outdated install; it's the latest published version and the tools are still missing.
  • The ok CLI has no mv/rename subcommand either (checked ok --help).
  • The underlying capability clearly exists — renaming a file by hand via the Desktop app's own rename UI works correctly: git detects it as a proper rename (R in git status, rename-detected in git log --stat -M), and wikilinks referencing the old filename get rewritten automatically. So the app has this logic; it's just not exposed as a callable MCP tool for agents.
  • Separately, issue [Bug]: Deleted docs re-materialize on disk within ~30-150s (both POST /api/delete-path and OS-level rm) — survives restarts and .okignore #462 references a POST /api/delete-path server endpoint, suggesting delete functionality already exists server-side and just isn't surfaced over MCP.

Ask

Register move and delete (and ideally install/import/share_link, since the skill docs already promise them) as callable MCP tools, using the same rename/delete logic the Desktop app's UI already uses — including move's referrer-rewrite behavior for wikilinks.

Environment

  • @inkeep/open-knowledge / ok CLI: 0.49.2 (cli-hosts, desktop-direct surface)
  • macOS
  • MCP client: Claude Code

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions