惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

T
Tenable Blog
月光博客
月光博客
雷峰网
雷峰网
WordPress大学
WordPress大学
博客园 - 司徒正美
Last Week in AI
Last Week in AI
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
V
Visual Studio Blog
H
Help Net Security
Engineering at Meta
Engineering at Meta
Google DeepMind News
Google DeepMind News
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
S
Security @ Cisco Blogs
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
爱范儿
爱范儿
W
WeLiveSecurity
J
Java Code Geeks
Forbes - Security
Forbes - Security
H
Hacker News: Front Page
T
Threatpost
The Cloudflare Blog
C
Cyber Attacks, Cyber Crime and Cyber Security
N
Netflix TechBlog - Medium
Latest news
Latest news
V2EX - 技术
V2EX - 技术
小众软件
小众软件
T
The Blog of Author Tim Ferriss
A
Arctic Wolf
B
Blog RSS Feed
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
I
InfoQ
C
Check Point Blog
N
News | PayPal Newsroom
Cyberwarzone
Cyberwarzone
V
V2EX
TaoSecurity Blog
TaoSecurity Blog
P
Privacy & Cybersecurity Law Blog
Microsoft Security Blog
Microsoft Security Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
D
DataBreaches.Net
F
Fortinet All Blogs
阮一峰的网络日志
阮一峰的网络日志
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
IT之家
IT之家
K
Kaspersky official blog
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Google DeepMind News
Google DeepMind News
C
CXSECURITY Database RSS Feed - CXSecurity.com
www.infosecurity-magazine.com
www.infosecurity-magazine.com

Butler's Log

Agentic Version Control Benchmarks Grit: rewriting Git in Rust with agents Git Merge 2026 Agent-safe Git with GitButler We’ve raised $17M to build what comes after Git Announcing the GitButler CLI for Linux The Great CSS Expansion A couple of git nits Simplifying Git by Using GitButler Introducing the GitButler CLI GitButler 0.19 - "Commander Keen" But Head: Crafting a Custom Font MCP vs RAG: Two Very Different Ways to Gain Context Getting Started With GitButler Agents Using GitButler With Multiple GitHub Accounts Advent of Code! Upcoming GitButler Events Use GitButler for your Gerrit workflow Integrating GitButler and GitHub Enterprise Butler Flow: shipping code faster (but less like Alfred, more like CI on steroids) - Part 3 Butler Flow: shipping code faster (but less like Alfred, more like CI on steroids) - Part 2 Butler Flow: shipping code faster (but less like Alfred, more like CI on steroids) - Part 1 Grid Happens: Because Flexbox Wasn’t Enough Using Cursor Hooks for automatic version control Deep Dive into the new Cursor Hooks A Responsive Item Counter with CSS only GitButler 0.16 - "Sweet Sixteen" GitButler's Claude Code tab GitButler's Annual Open Source Pledge Report Git Mini Summit 2025 Videos Automate Your AI Workflows with Claude Code Hooks Managing Multiple Claude Code Sessions Without Worktrees GitButler 0.15 - "Quirky Quinceañera" 20 years of Git. Still weird, still wonderful. GitButler's new patch based Code Review (Beta) Going down the rabbit hole of Git's new bundle-uri How to do patch-based review with git range-diff How Core Git Developers Configure Git Why is Git Autocorrect too fast for Formula One drivers? Stacked Branches with GitButler Git Merge 2024 Talks are Up GitButler 0.13 - "Lucky Baseball" Fearless Rebasing Git Merge 2024 Why GitHub Actually Won GitButler is joining the Open Source Pledge The New Era of Town Hall Chat The Future of Open Source GitButler is now Fair Source Git Merge 2024 GitButler 0.12 - "Stingy Baker" The Birth of THE MERGE GitButler for Windows Fixing up Git with Autosquash The Git Zeitgeist Git Worktrees and GitButler DevWorld Git Slides Git Tips and Tricks Git Tips 1: Oldies but Goodies Git Tips 2: New Stuff in Git Git Tips 3: Really Large Repositories FOSDEM Git Talk Opening Up GitButler Debugging Tauri in VS Code Advent of GitButler Code Signing Commits in Git, Explained Virtual Branches Alpha Our We Are Developers Adventure Building Virtual Branches DevDays in Vilnius The Future of Software and Open Source Introducing GitButler
Using the GitButler MCP Server to Build Better AI-Driven Git Workflows
Estib Vega · 2025-12-31 · via Butler's Log

As AI coding becomes more common, one problem keeps coming up. The code gets generated quickly, but version control still feels bolted on after the fact. You write or modify files with an AI assistant, then manually stage, commit, and clean things up once the task is done.

The GitButler MCP server closes that gap.

By exposing GitButler functionality through the Model Context Protocol, the MCP server allows AI tools to interact directly with your Git workflow. Instead of treating Git as a separate manual step, your assistant can record changes, create commits, and manage branches as part of the same workflow that generated the code.

This post walks through how the GitButler MCP server works, how to set it up, and how to use it effectively in real development workflows.

The GitButler MCP server is a small service that runs locally and exposes GitButler actions to AI tools that support MCP. When an AI assistant connects to it, it can call specific features like updating branches or recording changes.

From a practical standpoint, this means your AI assistant can:

  • Capture file changes without you running Git commands
  • Create structured commits with useful context
  • Keep branches up to date automatically
  • Coordinate changes across multiple edits or prompts

The server is started with a simple command:

This launches the MCP server over standard input and output so editors and AI tools can communicate with it.

There is also an internal mode:

This exposes additional tools that GitButler uses internally. Most users should stick with the default mode unless they know they need the extra surface area.


Without MCP integration, AI assisted workflows usually look like this:

  1. Prompt the assistant to generate or modify code
  2. Review the changes
  3. Manually decide what to stage
  4. Write a commit message
  5. Commit and manage branches yourself

With the GitButler MCP server in place, that flow can be reduced to:

  1. Prompt the assistant
  2. Let the assistant record and commit changes through GitButler

The key improvement is not just automation. It is context. The MCP server allows the assistant to pass along information about why a change was made, not just what files were modified. GitButler can then use that context to create better commits than a generic auto commit ever could.


Before connecting anything, make sure the GitButler CLI is installed. You can install it from GitButler settings if it is not already available on your system.

Once installed, you can connect the MCP server to any MCP client.

Cursor uses a JSON configuration file to define MCP servers.

  1. Open Cursor settings and navigate to MCP servers
  2. Create or edit ~/.cursor/mcp.json
  3. Add the GitButler configuration:

JSON

{
  "mcpServers": {
    "gitbutler": {
      "command": "but",
      "args": ["mcp"]
    }
  }
}

After restarting Cursor, GitButler will be available to the assistant. You should see abilities like updating branches appear when the assistant lists available actions.


VS Code supports MCP through its command palette.

  1. Open the command palette
  2. Run “MCP: List Servers”
  3. Choose Add Server and select stdio
  4. Set the command to but
  5. Set the arguments to ["mcp"]

VS Code will store this configuration in its MCP settings and automatically start the server when needed.

Claude Code provides a simple CLI based setup.

Run the following command:

BASH

claude mcp add gitbutler but mcp

Then verify that it is registered:

Once registered, Claude Code can call GitButler tools directly.

Once the MCP server is connected, the most important tool you will interact with is the one that updates GitButler branches. This is the action that records changes and turns them into commits.

There are two main ways to use it.

You can explicitly ask your AI assistant to update GitButler branches after a task is complete. This works well when you want full control.

For example:

“Update GitButler branches with these changes.”

This approach is predictable and easy to reason about.

Most tools allow you to define rules that automatically trigger MCP clients. This is where things get powerful.

A common rule looks like this:

If files were modified, run the GitButler update branches tool.

With this in place, every time the assistant edits code, GitButler records the change. You no longer need to remember to commit.

It is usually best to start conservative. Trigger commits only after meaningful changes rather than every single file edit. You can refine rules over time as you gain confidence.

When an MCP tool is called, GitButler does not blindly commit everything.

The process looks like this:

  1. The assistant sends file changes and contextual information to GitButler
  2. GitButler records the state of the working directory
  3. Commit metadata is generated using the context provided
  4. The commit is created and attached to the appropriate branch

You can inspect all of this in the GitButler UI. Every automated action appears in the Actions view, which makes it easy to understand what happened and when.

This visibility is important. Automation should never feel opaque, especially when it touches your Git history.

Avoid committing on every single token of output from the assistant. Group related changes into logical units. This keeps your history readable and useful.

Review Early and Often

Even with automation, take time to review commits in GitButler. This builds trust in the workflow and helps catch mistakes before they reach your remote repository.

The MCP server works well alongside feature branches. You can let the assistant manage changes on a branch without touching main until you are ready.

Automation should assist you, not trap you. Always be comfortable falling back to manual commits or direct GitButler actions when needed.

The GitButler MCP server is not just about saving keystrokes. It changes how AI tools fit into real development workflows.

By letting assistants interact directly with GitButler, version control becomes part of the same feedback loop as code generation. Changes are recorded with context, commits stay readable, and developers stay in control.

If you are already using AI tools to write code, the MCP server is one of the cleanest ways to make sure your Git history keeps up with the speed of your ideas.