GitEasy MCP

io.github.greenmtnsun由 GitHub 帳號 greenmtnsun 發布v1.6.2更新於 Oct 25, 2026

Plain-English git for agents: 22 tools to branch, commit, push and tag. Free tier.

已驗證Streamable HTTP可網頁執行檔案與儲存開發者工具

概覽

AI 產生的概覽

一個遠端 MCP 伺服器,讓助理用白話方式完成日常 Git 操作:開分支、提交、推送、打標籤、查看歷史與管理憑證。

可以做什麼
儲存工作:一步完成暫存、附訊息提交並可選擇推送,或推送已提交內容,並建立附註標籤與發行版本以將變更發布到遠端儲存庫。檢視狀態:顯示儲存庫診斷資訊、變更檔案、差異、遠端位址、最近及依關鍵字搜尋的提交歷史、待拉取提交與發行版本清單。管理分支:從 HEAD 建立新分支、切換到既有分支,以及將單一檔案還原到 HEAD 狀態。復原變更:捨棄單一檔案或所有已追蹤檔案的未提交變更,並移除未追蹤的檔案與目錄。管理憑證:儲存個人存取權杖、將遠端位址改為 SSH、設定或檢視憑證協助程式保管庫、測試登入並清除已存憑證。
適用情境
適合讓助理在不手寫原始 Git 指令的情況下處理儲存庫的日常 Git 操作,例如儲存並發布變更、查看改了什麼、瀏覽歷史或建立發行標籤。
執行需求
透過 streamable HTTP 存取的遠端端點,不安裝本機套件。需要在 X-Api-Key 標頭中提供 API 金鑰;清單指向一個有每月寫入呼叫上限的免費金鑰。所操作的儲存庫需能被該服務存取。
安裝前請注意
API 金鑰是放在 X-Api-Key 標頭中的機密,免費額度限制每月寫入呼叫次數,頻繁使用可能需要付費金鑰。多個工具會改變狀態:push、save_work、new_release、switch_work、new_work_branch、set_ssh、set_vault、set_token 與 reset_login。restore_file、undo_changes 與 clear_junk 會捨棄未提交或未追蹤的內容且無法復原。憑證工具會在所設定的環境中儲存或清除 Git 登入資訊。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 GitEasy MCP,將其新增到工作區。
  2. 連接 X-Api-Key 憑證。它們會被私密儲存,絕不會在公開頁面上展示。
  3. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/io.github.greenmtnsun%2Fgiteasy/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "giteasy": {
      "type": "http",
      "url": "https://giteasy-mcp.azurewebsites.net/mcp",
      "headers": {
        "X-Api-Key": "<YOUR_API_KEY>"
      }
    }
  }
}

README

GitEasy

[GitEasy — Plain-English Git for everyone who isn't a developer]

A PowerShell module that lets a Git-clueless person save and publish their work without learning Git jargon.

From Keith

I'm Keith Ramsey. For a living, I'm a SQL Server database administrator, and in my spare time, I'm a massive PowerShell enthusiast. For the past thirteen years, I've worked on the same team, quietly building internal tools to solve our specific headaches. GitEasy is a new chapter for me. It's the first tool I've ever released to the public, and honestly, the process of designing for strangers—polishing the code, writing in plain English just to be helpful—has been an absolute blast.

If you're checking out this module, I don't just hope you like it—I hope it gives you a sense of relief. I'll admit it: Git used to scare me. I've messed up commits, walked away from my desk in frustration, and told myself I'd figure it out tomorrow. While full-time developers breeze through Git, I work alongside DBAs, compliance teams, and change managers. We're the folks who just want our old TFS check-ins back. Git isn't just a tool; it's a whole new vocabulary filled with traps.

For a long time, we managed to avoid it. But eventually, the mandate came down: Git is here, learn it. Sitting there, feeling like I was studying for a final exam just to save a file, the concept for GitEasy clicked. What if we could strip away the jargon? What if checking in code didn't require an entirely new vocabulary?

Enter GitEasy. Just five simple commands. No confusing raw Git text. One log file per action. It's a frictionless wrapper—if you know Git, you can bypass it anytime. If you don't, you'll never need to see the scary stuff.

One important note: for now, I'm the only one making changes to GitEasy. Setting up the right legal paperwork to accept code changes from other people involves a lawyer, and I'd rather put my time and money into shipping more useful code than into legal forms I might have to redo. It's not a permanent stance; I'm just taking it slow. But rest assured, GitEasy is licensed under MPL 2.0, which means anyone is free to pick up the code and continue with it on their own. The project's survival doesn't depend on me.

I completely understand if that decision gives you pause. I'm just a guy figuring out the open-source world one step at a time. The door isn't bolted, it's just closed for today. I am fully open to bug reports and feature ideas — head to the GitHub project and open an Issue, tell me what you need, and I'll read it. No code necessary. If you want to chat, find me at @greenmtnsun on GitHub.

If you've ever closed PowerShell because the Git error message felt scarier than the change you were trying to save: this was built for you. I hope it brings some relief — and that you enjoy using it. Take care.

Notes

Short status notes from Keith. Newest at top. Edit / extend as the project moves.

2026-05-22 — Direction for CI and AI-agent users has its own page

Added docs/USING-IN-CI-AND-AGENTS.md. It's a single contract for anyone who wants to use GitEasy from a CI pipeline (GitHub Actions, Azure Pipelines, GitLab) or an AI coding agent. Deliberately does not ask consumers to run my own test suite or jargon audit — those are my quality bars, not theirs.

2026-05-22 — Contribution door is closed for now

No CLA in place; I'm not investing in legal until there's a real reason to. Bug reports as Issues are welcome. PRs won't be reviewed. When that changes, this note will say so.

2026-05-21 — v1.5.3 staged, holding the PowerShell Gallery publish

1.5.3 is feature-complete, manifest-ready (icon, in-repo LicenseUri, inline plaintext release notes, 14 audience-tagged keywords), and the .nupkg builds cleanly with per-doc PDFs included. I'm holding the actual PSGallery publish until I decide whether to flip the repo to public. The first outside user (Tycro) is installing from a private-repo clone right now — that's working fine.

2026-05-20 — Security review pass complete (v1.5.2)

Three credential-surface findings closed (F-04 / F-05 / F-06) covering sibling-pattern bugs the 1.5.1 review missed. Full kill-test suite added in Tests/GitEasy.AuthHardening.Tests.ps1. If you're using GitEasy with a credential helper, you want at least 1.5.2.

What it gives you

A small set of plain-English commands. The complicated stuff stays inside the engine; what you see and type stays simple.

powershell
Find-CodeChange         # What has changed?Save-Work 'fix readme'  # Save and publish in one step.Show-History            # Recent saved points.Show-Remote             # Where this folder is published.

When something goes wrong, you get a plain-English message and a path to a self-contained log file with the technical detail. No raw Git output is ever shown to the user.

Install

Friend-fast install (PS 5.1 and PS 7, no admin needed):

powershell
$Edition = if ($PSVersionTable.PSEdition -eq 'Core') { 'PowerShell' } else { 'WindowsPowerShell' }$ModuleDir = Join-Path $HOME "Documents\$Edition\Modules\GitEasy"git clone https://github.com/greenmtnsun/GitEasy.git $ModuleDirImport-Module GitEasy

That drops GitEasy into your user-scope PowerShell module folder (which is on $env:PSModulePath by default), so Import-Module GitEasy works from anywhere. See docs/HOW-TO-USE-GITEASY.md for the offline-install path and all-users scope.

Once a PowerShell Gallery release lands, the install becomes:

powershell
Install-Module GitEasy -Scope CurrentUser

The PowerShell Gallery page (when published) will be at powershellgallery.com/packages/GitEasy.

Quickstart

powershell
# In any folder that is already a Git repo:Find-CodeChangeSave-Work 'first save'Show-History -Count 5

If the repo has not been published anywhere yet, Save-Work will tell you so and save locally. When you connect a published location later, the next Save-Work will publish everything you have saved up to that point.

The full command surface

CommandWhat it does
Find-CodeChangeShow what has changed in your project folder.
Save-WorkSave changes and publish them (or save locally with -NoPush).
Show-HistoryShow recent saved points.
Show-RemoteShow where the project folder is published.
Show-DiagnosticOpen or list the diagnostic log files.
New-WorkBranchStart a new working area for an isolated task.
Switch-WorkSwitch to another existing working area.
Restore-FileRestore a single file to its last saved state.
Undo-ChangesThrow away unsaved changes (requires -Force or -Confirm).
Clear-JunkList or remove obvious temporary files.
Test-LoginVerify connectivity to the published location.
Set-TokenConfigure HTTPS-based login.
Set-SshConfigure SSH-based login.
Set-VaultChoose where saved logins are stored.
Get-VaultStatusReport the configured credential helper.
Reset-LoginForget the saved login so it can be set up again.

Each command has full comment-based help — Get-Help <Command> -Full for the friendly version.

Diagnostic logs

Every public command writes a small log file under %LOCALAPPDATA%\GitEasy\Logs. Successful runs log silently. Failures throw a plain-English message and tell you the log path so a Git-aware person can read what happened.

powershell
Show-Diagnostic           # Open the most recent log.Show-Diagnostic -List     # List recent logs.Show-Diagnostic -All      # Open the logs folder.

Logs older than 30 days are pruned automatically.

Documentation

The full documentation lives in the GitHub Wiki. Every public command has its own page with synopsis, examples, safety notes, and a related-commands cross-reference. Every private helper has a similar page for maintainers.

Compatibility

  • Windows PowerShell 5.1+
  • PowerShell 7+ (Windows; cross-platform may work but is not the design target)
  • Git must be installed and on PATH.

Running GitEasy from a CI job or an AI agent? See docs/USING-IN-CI-AND-AGENTS.md — one-page contract for consumers.

Status

GitEasy is at 1.5.3 — feature-complete public surface (21 commands), 569 Pester tests on both PowerShell hosts, and full plain-English contract.

See CHANGELOG.md for the history.

Contributing

GitEasy is maintained by a single author and is not currently accepting outside pull requests — no contributor agreement is in place. Bug reports as Issues are welcome.

The author's quality bar (test discipline, no-jargon rule, diagnostic-log session pattern) is documented in CONTRIBUTING.md for transparency.

License

Mozilla Public License 2.0. File-level copyleft: anyone can use, modify, and embed this code in proprietary or open projects, but modifications to GitEasy's own files must be released under MPL-2.0.

Author

Keith Ramsey (@greenmtnsun).

來源:README.md,提交 ced9265

工具

22

push

Send already-committed work to the remote without making a new commit. Pushes the current branch; on a branch's first push, sets the remote branch as its upstream automatically.

輸入參數remoteNameworkingDirectory

show_diagnostic

Show git repository diagnostic info: current branch, upstream, HEAD SHA, remote URLs, and status summary.

輸入參數workingDirectory

set_vault

Configure the git credential helper to use a specific vault path. Returns new credential helper value.

輸入參數vaultPathworkingDirectory

restore_file

Restore a single file to its HEAD state, discarding uncommitted changes. Returns restored file path.

輸入參數filePathworkingDirectory

reset_login

Clear stored git credentials by unsetting the credential helper in local git config. Returns confirmation.

輸入參數workingDirectory

set_ssh

Change a remote URL to its SSH equivalent. Returns old and new remote URLs.

輸入參數sshUrlremoteNameworkingDirectory

save_work

Stage changes, commit with a message, and optionally push to remote. Returns commit SHA and push result.

輸入參數filesmessagepushToRemoteworkingDirectory

get_vault_status

Report current git credential helper configuration. Returns helper name and scope.

輸入參數workingDirectory

test_login

Test whether git credentials are working by attempting ls-remote against the origin. Returns success/failure and remote refs count.

輸入參數remoteNameworkingDirectory

show_releases

List all tags/releases in the repository, newest first. Returns tag names, target SHAs, and annotation messages.

輸入參數workingDirectory

show_change

Show the diff for a specific file or all changed files. Returns unified diff text.

輸入參數stagedfilePathworkingDirectory

new_release

Create an annotated git tag and push it to the remote. Returns the tag name and target commit SHA.

輸入參數messagetagNameremoteNameworkingDirectory

find_changes

List changed files: staged, unstaged, and untracked. Returns file counts and paths by status group.

輸入參數workingDirectory

show_remote

Show all remote names and their fetch/push URLs. Returns list of remotes with URL and type.

輸入參數workingDirectory

get_updates

Fetch from remote and show incoming commits not yet in local branch. Returns count and commit summaries.

輸入參數remoteNameworkingDirectory

undo_changes

Discard uncommitted changes. If filePath given, restores that file; otherwise restores all tracked files. Returns list of restored paths.

輸入參數filePathworkingDirectory

switch_work

Switch to an existing branch. Returns the branch switched to and current HEAD SHA.

輸入參數branchNameworkingDirectory

search_history

Search commit history for commits whose message matches a search term. Returns matching commits with SHA, author, date, and message.

輸入參數limitsearchTermworkingDirectory

show_history

Show recent commit history. Returns commits with SHA, author, date, and message.

輸入參數limitbranchNameworkingDirectory

new_work_branch

Create a new branch from current HEAD and switch to it. Returns branch name and base commit SHA.

輸入參數branchNameworkingDirectory

set_token

Store a personal access token for HTTP git authentication. Returns confirmation (token value is never echoed).

輸入參數tokenworkingDirectory

clear_junk

Remove untracked files and directories from the working tree (git clean -fd). Returns list of removed paths.

輸入參數workingDirectory

版本歷史

2
  1. v1.6.2最新Oct 25, 2026
  2. v1.6.1Sep 16, 2026

評分

已滿足適用檢查項的 100%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分