Wire up Cursor / Copilot
Cursor and Copilot don't speak MCP. senkani init is already hooks-only by design — run it per project and you get the filter pipeline + smart denials on their built-in Read/Bash.
Install hooks per project
cd /path/to/your/project senkani init
The CLI's init command never touches MCP — it only registers PreToolUse + PostToolUse hook entries at <project>/.claude/settings.json. (SenkaniApp itself writes the hook wrapper at ~/.senkani/bin/senkani-hook the first time you launch it; if you've never opened the app, build the hook target with swift build -c release --product senkani-hook and pass --hook-path.) The result:
- Registers Senkani's PreToolUse + PostToolUse hooks for Cursor/Copilot's Read/Bash/Grep equivalents where supported.
- Runs the filter pipeline + secret redaction on intercepted tool output.
- Leaves
~/.claude/settings.jsonalone — no global MCP entry written by the CLI.
What you get
- ✓ Compression via the filter pipeline (F toggle).
- ✓ Secret redaction (S toggle).
- ✓ Smart denials — re-read suppression, command replay, trivial routing.
- ✗ No
senkani_*MCP tools. Your agent can't call them. - ✗ No symbol search / fetch. Text-grep is the fallback.
- ✗ No terse mode (T toggle relies on MCP system-prompt injection).
Tradeoff
You keep ~40% of the savings. Not as good as Claude Code + full MCP; better than nothing.
If your agent later adds Claude Code-compatible MCP support, launch SenkaniApp once — its first-launch flow ensures the global MCP entry is in place.
senkani init never registers the server itself.