Files
ginnoir 7ec4e2ca57 chore: spin off Pokémon ROM-hack material to standalone repo
The Pokémon catalog + pipeline are moved out of this infra repo. The catalog
notes now live in the self-hosted Obsidian vault (Pokémon ROM Hacks/); the
acquisition/patching scripts live in their own repo at Documents\pokemon.
homelabstack stays focused on the homelab.

- rm pokemon-romhack-vault/ (75 hack notes + Index/Types/README/Platforms)
- rm scripts/{build-romhack-vault,romhack-import,romhack-fetch,romhack-apply}.py
- rm pokemon-romhacks-wanted.md
- .gitignore: drop the now-dead pokemon/ drop-folder rule
- .claude/skills/vault/SKILL.md: condense the Pokemon-vault subtree to a one-line pointer

RomM stack (stacks/roms) and the general igir library scripts stay.
2026-06-06 15:49:26 -05:00

3.2 KiB

name, description
name description
vault Read and write notes in ginnoir's self-hosted Obsidian vault via the Obsidian MCP server. Use when loading persistent context for a session, saving new context, writing a note, or querying vault contents. The vault is the canonical persistent-context store across Claude sessions.

vault

Obsidian vault accessed via the mcp__obsidian__* MCP tools. Do not attempt to connect to CouchDB directly — use MCP only.

The MCP server is configured in ~/.mcp.json and is available in every Claude Code session. If the tools are listed as deferred, load them with ToolSearch before calling.

Core tools

Tool Use
mcp__obsidian__vault_list List files/dirs in a directory (omit path for vault root)
mcp__obsidian__vault_read Read a file's full content + metadata (tags, frontmatter, links, backlinks)
mcp__obsidian__vault_write Create or overwrite a file
mcp__obsidian__vault_patch Append or patch a section without a full rewrite
mcp__obsidian__vault_delete Delete a file
mcp__obsidian__vault_move Move or rename a file
mcp__obsidian__search_simple Full-text search across the vault
mcp__obsidian__search_query Advanced query search
mcp__obsidian__tag_list List all tags

Load context at session start

1. mcp__obsidian__vault_read  path="claude/Context.md"
2. Follow [[wikilinks]] to read specific notes as needed

claude/Context.md is the master index. It links to all other context notes under claude/.

Read a note

mcp__obsidian__vault_read  path="claude/Homelab.md"

Returns: content (full markdown), tags, frontmatter, links, backlinks, stat.

To read only a section:

mcp__obsidian__vault_read  path="claude/Services.md"  targetType="heading"  target="BookStack"

Write a note

mcp__obsidian__vault_write  path="claude/MyNote.md"  content="# Title\n\nContent here."

Creates parent directories automatically. Overwrites without warning.

Append to a note

mcp__obsidian__vault_patch  path="claude/Context.md"  ...

Use vault_patch when adding a section to an existing note to avoid rewriting the whole file.

Search the vault

mcp__obsidian__search_simple  query="portainer env vars"

Vault structure

claude/
  Context.md       — master index, session start guide, quick nav
  Homelab.md       — topology, stacks, networks, paths
  Deploy.md        — deployment channels
  SSH.md           — SSH ops, container management
  Portainer.md     — env interpolation gotcha, new stack registration
  Services.md      — per-service quirks (BookStack, Caddy, secrets policy)
  ROM Library.md   — RomM, igir, Pokémon romhacks, EmuDeck tree
  Monitoring.md    — Uptime Kuma v2 socket technique
  Vault.md         — this stack's infrastructure, MCP access
testing.md         — original connectivity test note
Pokémon ROM Hacks/   — Pokémon romhack KB in the live vault; catalog + build
                       scripts live in the standalone Documents\pokemon repo

Load tool schemas (if deferred)

If mcp__obsidian__vault_read is not yet callable, run:

ToolSearch  query="select:mcp__obsidian__vault_list,mcp__obsidian__vault_read,mcp__obsidian__vault_write"