Diffler Mcp
БесплатноНе проверенstdio↔HTTP MCP proxy bridging Claude Code (or any stdio MCP client) to a running diffler review session
Описание
stdio↔HTTP MCP proxy bridging Claude Code (or any stdio MCP client) to a running diffler review session
README

A tool for taking ownership of agentic code: review what your agent writes, together with the agent, while it happens. The code that lands is code you have actually reviewed.
If you know Emacs' magit, diffler is basically a standalone magit with an MCP server built in: the same fast, keyboard-driven git UI, no Emacs required. Launch it in a repo alongside Claude Code or any MCP-compatible agent: it shows a live diff of what the agent is doing; you read, comment, stage, and commit; the agent picks your feedback up over MCP and responds in place. One binary, no browser, no daemon.
Install
The installed command is always diffler. Pick whatever fits:
# Rust: compile from source, or grab the prebuilt with cargo-binstall
cargo install diffler
cargo binstall diffler
# Homebrew (macOS / Linux)
brew tap matheusfillipe/diffler https://github.com/matheusfillipe/diffler
brew install diffler
# Scoop (Windows)
scoop bucket add diffler https://github.com/matheusfillipe/diffler
scoop install diffler
# Arch (AUR)
yay -S diffler-bin
# Nix (flake, runs the prebuilt binary)
nix run github:matheusfillipe/diffler
nix profile install github:matheusfillipe/diffler
# npm: prebuilt binary, one-off or global
npx @mattfillipe/diffler
npm install -g @mattfillipe/diffler
Or download a prebuilt binary (macOS, Linux, Windows; x86_64 and arm64) from the
releases page. Any
GitHub-release installer (eget, ubi, ...) works against it too.
Quickstart
Run diffler inside a repository. It starts the TUI and an MCP server on
port 8417. Connect your agent once:
Claude Code
claude mcp add --transport http diffler http://127.0.0.1:8417/mcp
# or, over stdio, auto-discovering the port:
claude mcp add diffler -- npx -y diffler-mcp
# or, as a plugin (MCP server plus a /diffler command):
claude plugin marketplace add matheusfillipe/diffler && claude plugin install diffler@diffler
Connected, the server's review prompt shows up as the /diffler:review
command; the plugin adds a bare /diffler.
opencode
Add the server to opencode.json in the project, or globally in
~/.config/opencode/opencode.json:
{
"mcp": {
"diffler": {
"type": "local",
"command": ["npx", "-y", "diffler-mcp"],
"enabled": true
}
}
}
And install the /diffler command (opencode has no package mechanism for
commands, so this fetches the one maintained in this repo):
mkdir -p ~/.config/opencode/commands && curl -fsSLo ~/.config/opencode/commands/diffler.md \
https://raw.githubusercontent.com/matheusfillipe/diffler/main/.opencode/commands/diffler.md
Any other MCP agent
Point it at http://127.0.0.1:8417/mcp (streamable HTTP), or run
npx -y diffler-mcp as a stdio proxy that auto-discovers the port from
.diffler/mcp.json. The server also ships a review prompt that
prompt-aware clients surface as a command.
The loop: the agent edits files, the diff updates live. You comment lines or
ranges in the diff view and press Z to send feedback. The agent picks the
comments up through wait_for_feedback, replies or proposes resolutions, and
you confirm in the TUI. y/Y copy the same feedback as markdown if you would
rather paste it into a prompt.
The same review works against real pull requests: the status screen shows the
branch's PR (and b p lists all open ones; reviewing never needs a
checkout). PR comments sync in as regular threads, yours stack locally, and
S submits them as a single review on the forge.
Keys
Vim-like: j/k/gg/G motions, / search, and
<c-d>/<c-u> paging work in every list. The basics:
| Key | Action |
|---|---|
<cr> |
open the thing under the cursor |
s / u |
stage / unstage |
cc |
commit |
c |
comment the diff line (V selects a range first) |
v / u |
in the diff view: mark the file viewed / jump to the next unviewed file |
t |
cycle the sidebar: tree, list, review buckets (viewed files fold away, come back if they change) |
Z |
send feedback to the agent |
C |
overview of every comment: Enter jumps, d/D delete one/all |
S |
submit stacked PR comments as one review |
y / Y |
copy feedback as markdown (file / all) |
x |
in the diff view: graph who calls the symbol under the cursor |
e |
open the file in $EDITOR |
? |
full keymap for the current screen |
q |
back / quit |
Every binding is remappable, see docs/config.example.toml.
The diff view is two panes: a file sidebar and the selected file's diff. TAB
moves focus between them; j/k change the selected file from the sidebar or
scroll the diff when focused there; J/K (or <c-n>/<c-p>) switch files
from either.
The mouse works too (including over tmux): the wheel scrolls the pane under the
pointer, and a left click selects a row. Clicking a section, directory, or
recent-commits header folds it, and clicking a sidebar file opens it. Mouse
capture means the terminal's own text selection needs the usual override
(Shift, or Option in iTerm2).
How it compares
Pagers like delta render diffs beautifully, and lazygit and gitui are great general git TUIs. diffler is review-first: comments live on diff lines, an agent reads and answers them over MCP while you watch, and the same threads work against real GitHub/Forgejo PRs, including PRs whose branch you never checked out.
MCP tools
While the TUI is running, diffler serves an MCP server the agent uses to read your review and respond in place. See docs/mcp.md.
Configuration
Layered TOML: defaults, then ~/.config/diffler/config.toml (XDG respected,
macOS included), then <repo>/.diffler/config.toml, then CLI flags. Every
option and key remap, documented with its default, lives in
docs/config.example.toml. Inspect the merged
result and where each value came from:
diffler config --dump
Development
just ci # core gate: fmt + clippy + tests
just e2e # PTY end-to-end suite (needs uv)
Requires Rust 1.88+, just, cargo-nextest. Hooks: prek install.
License
MIT or Apache-2.0, at your option.
Установить Diffler Mcp в Claude Desktop, Claude Code, Cursor
unyly install diffler-mcpСтавит в Claude Desktop, Claude Code, Cursor и VS Code — сам разбирается с npx, uvx и сборкой из исходников.
Впервые? Поставь CLI: curl -fsSL https://unyly.org/install | sh
Или настроить вручную
Выполни в терминале:
claude mcp add diffler-mcp -- npx -y diffler-mcpFAQ
Diffler Mcp MCP бесплатный?
Да, Diffler Mcp MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Diffler Mcp?
Нет, Diffler Mcp работает без API-ключей и переменных окружения.
Diffler Mcp — hosted или self-hosted?
Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.
Как установить Diffler Mcp в Claude Desktop, Claude Code или Cursor?
Открой Diffler Mcp на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
GitHub
PRs, issues, code search, CI status
автор: GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
автор: mcpdotdirectCompare Diffler Mcp with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории development
