Git For Me

io.github.bikemeardsleyPublished by GitHub account bikemeardsleyv0.1.3Updated Oct 30, 2026

Which parts of what you want to build open source already covers. Every repo checked live.

VerifiedSTDIODesktop onlyWeb Search & ScrapingDeveloper Tools

Overview

AI-generated overview

Guides an assistant through finding open-source repos for each part of a build, searching GitHub, GitLab and Codeberg and checking every pick live.

What you can do
  • Get the method: asks for stack, platform, license and upkeep, splits the job into parts, and assigns USE, ADAPT, BUILD or WRITE verdicts
  • Search the forges: most starred and rising repos per topic, keyword matches in names and descriptions, and GitHub README text
  • Verify picks: looks each repo up live, drops ones that no longer exist, and flags license, archived, stale, fork and mirror issues
  • Report results: lists the repos found but not picked and marks picks that came from the model's memory rather than search
When to use it
Useful when you are about to build something and want to know which parts open source already covers, or when an assistant is about to recommend a library from memory and you want current, license-aware picks. It suits greenfield projects where stack, license and maintenance expectations can be stated up front.
Requirements
Runs locally as a stdio server, installed via npx from the npm package git-for-me; needs Node 22.18 or later. Network access to api.github.com, gitlab.com/api and codeberg.org/api. An optional GITHUB_TOKEN raises GitHub search limits from 10 to 30 per minute; no other credentials are needed.
Before you install
The search terms the assistant writes for each part and the repos it picks are sent as GET requests to GitHub, GitLab and Codeberg; the need as you wrote it and the report stay local. If you set GITHUB_TOKEN it is sent to GitHub only and never appears in a report. Without a token, private GitHub repos look missing. License flags come from each forge's detection, not the license text, so verify licensing yourself before shipping.

Installation

In SourceWeft

  1. Open Git For Me in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

[The Git for Me! mascot: an ink-drawn hermit crab that has just moved into a spiral shell it found, eyes on stalks looking up at it, one claw raised, an exclamation mark beside it]

Git for Me!

[Latest release] [npm] [CI tests] [In the official MCP Registry] [On skills.sh] [On cursor.directory] [Antigravity plugin] [On Smithery] [Git for Me! MCP server, quality and maintenance score on Glama] [GitHub] [GitLab] [Codeberg]
[TypeScript] [Node 22.18 or later] [MIT license] [Buy Me a Coffee] [Donate to ALS research]

Odds are, most of what you want to build is already open source. Tell your AI agent what you're making, and it finds it: which repos to use as they are, which to adapt, and what's left for you to write. Every repo it names is real, licensed for your use or flagged, and checked live.

It searches GitHub, GitLab and Codeberg. Works with Claude Code, Codex, Copilot, Cursor, Gemini CLI, Cline, Devin, Open WebUI and any other MCP client, or as an Agent Skill.

Its companion, Where My Hug At?, does the same for Hugging Face models.

[What you want to build, with four questions asked first (stack, platform, license, upkeep), is split into parts: jobs with an input and an output. A part a repo might do goes to Find git, which searches GitHub, GitLab and Codeberg: the most starred in the topic and names holding each keyword, and on GitHub the rising repos and README text too. Its verdict, use, adapt or build, comes from what the search found. A part not worth a dependency is marked write and needs no search. Your report checks every pick live: real, licensed, with its risks flagged.]

Contents

Try it

Add it to your agent (Claude Code here; every other option below):

sh
claude mcp add --scope user git-for-me -- npx -y git-for-me

Then ask:

Git for me: a CLI that pulls the tables out of PDF invoices into a spreadsheet.

Your agent asks the few things it can't guess, splits the job into parts, and comes back with a report like the one below, every repo in it looked up moments before. It works for anything made of code:

Git for me: typo-tolerant search for the recipes on my Next.js site.
Git for me: a nightly job that backs up Postgres to S3 and tells Slack if it fails.
Git for me: a browser extension that saves recipes without the life story.

How it works

1. Four questions first

Ask for "a library that reads PDFs" and you get whatever is popular: in the wrong language, under a license you can't ship, or abandoned years ago. So before anything is named, four details come first. Your agent fills in what the conversation or your codebase already says, and asks you the rest:

What it asksWhat that decides
StackWhat will it be written in?
TypeScript on Node, Python 3.12, Rust
Which repos work as libraries, and which only beside your code
PlatformWhere will it run?
a web app, a CLI, a server, a phone app
What fits at all
LicenseWhat may the result be used for?
commercial, open source, personal
Which licenses are allowed
UpkeepHow much code are you willing to own?
needs to stay maintained, happy to own a fork
A maintained dependency, or a fork you keep up

"Not sure yet" is a fine answer: the picks then cover the range.

2. Split the job

The agent breaks the need into parts, each with an input and an output (a PDF → its tables, tables → a spreadsheet). A part not worth a dependency (glue, configuration, logic only your project has, a few lines) is marked WRITE: a dependency for ten lines is a cost, not a feature.

3. Search for each part

What an agent remembers of open source is as old as its training, and misses the long tail. So nothing is picked from memory. For every other part, the agent writes a search (a topic, the stack's language, a few keywords, the job in a few words), and it runs on three forges:

WayWhat it findsWhere
Most starred in the topicWhat's provenGitHub, GitLab, Codeberg
Rising in the topicNew repos gaining stars, including ones newer than the agent's trainingGitHub
Names and descriptions holding each keywordTools that aren't tagged with the topicGitHub, GitLab, Codeberg
README textThe long tail, by what the README says, like a web searchGitHub

The ways take turns in the results, so a niche tool isn't buried under whatever is most starred. Archived repos are left out everywhere, and so are forks on GitHub and Codeberg. A stack that can use more than one language (TypeScript can use JavaScript) searches them all.

4. Decide each part from what turned up

VerdictMeaning
USEA repo the search found does this job as it is: depend on it, or run it beside your code.
ADAPTOne comes close: fork it or copy the part you need, license permitting.
BUILDNothing it found does the job: build it, reading the closest repos first.
WRITENot worth a dependency: write the code.

The agent judges the results by what they say: description, stars, recent activity, license, language. It may add a repo it knows that the search missed, but that pick ranks after the search's, and the report marks it from memory.

5. Check every pick

Every pick is looked up on its forge, live. Any that don't exist are dropped, and the agent goes back to the search for others. The rest are flagged for what would bite later, and that report is what you see. It also lists what the search found that wasn't picked, so nothing it turned up is hidden. A BUILD part whose search found repos says to check them before building one.

Under the hood it's an MCP server with three tools: git_for_me for the method (steps 1, 2 and 4), git_for_me_search for step 3, and git_for_me_verify for step 5.

Flags

FlagWhen
UNCHECKEDIts forge didn't answer (down, rate-limited). The repo is kept, and asked again next time.
ARCHIVEDRead-only: every fix is yours.
NO_LICENSENo license: all rights reserved, so its code may not be reused.
OWN_TERMSA license its forge can't identify: read it.
UNKNOWN_LICENSEOn Codeberg, which names no licenses: it has a license file, so read it.
COPYLEFTGPL, AGPL and kin: shipping it with your code can bind your code to its license.
WEAK_COPYLEFTLGPL, MPL and kin: changes to it must be shared, but using it unchanged usually doesn't bind your code.
STALENo pushes in two years.
LITTLE_USEDUnder 50 stars.
FORKA fork: check whether the original is the better pick.
MIRRORA mirror: pick the original it copies.

Example: PDF invoices

The prompt above, from a live run on 2026-10-14 for Python 3.12 on a laptop, closed source, kept maintained (abridged):

_Searched and checked live just now: 6 named, 0 not there and dropped._
## USE  ·  Read the tables**Repo: jsvine/pdfplumber**Python · license MIT · 10.8k stars · pushed 2 months ago · found: most starred in table-extraction, name or description has tablesAlso: camelot-dev/camelotThe search also found, not picked:- pymupdf/PyMuPDF (10.9k stars): found as most starred in table-extraction
## USE  ·  Read scanned invoices**Repo: ocrmypdf/OCRmyPDF**Python · license MPL-2.0 · 35.0k stars · pushed 3 days ago · found: readme text, name or description has ocr, most starred in ocrWatch out: weak copyleft: changes to it must be shared under its license, but using it unchanged usually doesn't bind your code.Also: PaddlePaddle/PaddleOCR
## USE  ·  Write the spreadsheet**Repo: jmcnamara/XlsxWriter**Python · license BSD-2-Clause · 4.0k stars · pushed 2 months ago · found: name or description has xlsx, most starred in xlsxAlso: pyexcel/pyexcel
## WRITE  ·  Run it from the command lineNo repo: write this one.
## WRITE  ·  Tidy the invoice tablesNo repo: write this one.

Three of the five parts already existed, all turned up by the search, and the agent left out PyMuPDF because its AGPL would bind closed-source code. What's left to write is the glue and the logic only these invoices have.

Install

Needs Node 22.18 or later. USAGE.md has step-by-step setup and links for 20+ agents: Claude Code and Desktop, Codex, Copilot (CLI and VS Code), Cursor, Windsurf, Devin, Cline, Gemini CLI, Goose, OpenCode, Zed, Junie, Kiro, Amp, Warp, Continue, LM Studio, Hermes, Mistral Vibe and Open WebUI. The quick routes:

Claude Code, Codex, Copilot CLI, as a plugin: the tools, plus a skill that knows when to reach for them. One marketplace serves all three.

sh
/plugin marketplace add bikemeardsley/git-for-me          # Claude Code/plugin install git-for-me@git-for-me
codex plugin marketplace add bikemeardsley/git-for-me      # Codexcodex plugin add git-for-me@git-for-me
copilot plugin marketplace add bikemeardsley/git-for-me    # Copilot CLIcopilot plugin install git-for-me@git-for-me

Any other MCP client: a stdio server in the client's config. Most call the key mcpServers (USAGE.md has the exceptions).

json
{ "mcpServers": { "git-for-me": { "command": "npx", "args": ["-y", "git-for-me"] } } }

Antigravity CLI, as a plugin: agy plugin install https://github.com/bikemeardsley/git-for-me/tree/main/plugin

Gemini CLI, as an extension: gemini extensions install https://github.com/bikemeardsley/git-for-me

As an Agent Skill, for agents that read SKILL.md: npx skills add bikemeardsley/git-for-me.

GITHUB_TOKEN (optional, and worth setting). Without one, GitHub allows 10 searches a minute, which covers about two parts of a job; with one, 30. A fine-grained token with no permissions is enough. Pass it as GITHUB_TOKEN (how, per agent); the Claude Code plugin asks for it and keeps it in secure storage. It goes to GitHub alone: GitLab and Codeberg need none. Without a token, a private GitHub repo looks missing, because GitHub answers 404 for both.

What leaves your machine

The search the agent writes for each part (a topic, a language, keywords, a few words about the job) and the repos it picks, as GETs to api.github.com, gitlab.com/api and codeberg.org/api, plus your token, to GitHub alone, if you set one. The token never appears in a report. The need as you wrote it, the method and the report stay between you and your agent.

Starting it with npx (as the MCP server, or the skill's shell fallback) downloads the git-for-me package from the npm registry, registry.npmjs.org. Nothing is sent there but the request for the package.

Limits

  • The search finds what the forges' own searches can: topics, names, descriptions, and on GitHub README text. A repo with none of those words can still be missed.
  • "Rising" is GitHub's alone: the topic's most starred repos created in the last half year, since GitHub has no trending API, and GitLab and Codeberg can't filter by creation date.
  • GitLab's keyword search runs in any language (filtered by one, it times out on common words), and its results show no language until a pick is checked.
  • License flags read each forge's license detection, not the license text. Codeberg detects none, so a repo there is flagged to read its license file, or as unlicensed if it has none.
  • Only GitHub, GitLab.com and Codeberg are searched. Self-hosted GitLab and Gitea servers aren't, and Bitbucket can't be: it has no public search.

Security

Report a vulnerability privately through GitHub Security Advisories, not a public issue. SECURITY.md lists what it touches: GETs to the three forges, and nothing on your machine.

Development

sh
npm install          # also builds build/, which is what npx runsnode src/server.ts   # the server, straight from sourcenpm test             # offline: the forges are mocked, and the server is driven over stdio and HTTPnpm run check        # types

From a clone, add it to your agent with claude mcp add --scope user git-for-me -- node /path/to/git-for-me/src/server.ts. npm install builds JavaScript into build/ because Node won't strip types from a package inside node_modules, which is where npx puts it.

License

MIT. Not affiliated with the Git project, GitHub, GitLab or Codeberg.

Source: README.md at commit 555a3d7

Tools

3

git_for_me

Git for me!

Step 1 of 3, before recommending any open-source repo or writing something that might already exist. If stack, platform, license or upkeep is missing, returns the questions to ask the user first: call again with the answers ("unknown" is fine). Then returns the method: split what the user wants to build into parts, search GitHub, GitLab and Codeberg for each with git_for_me_search, and decide from what it finds which parts an existing repo covers (use it as is or adapt it), which nothing covers (build it), and which are not worth a dependency (write them). Follow it.

Parametersneedrequiredstackupkeeplicenseplatform

git_for_me_verify

Git for me! (checked live)

Step 3 of 3: checks every picked repo live on its forge, drops the ones that are not there, flags no license, copyleft, archived, stale, little used, forks and mirrors, marks picks the search didn't turn up as from memory, shows what it found that wasn't picked, and returns the report to show the user. If nextAction is SEARCH_FIRST or RECALL_REPLACEMENTS, do what its instructions say and call again.

Parametersneedrequiredcomponentsrequired

Version history

3
  1. v0.1.3LatestOct 23, 2026
  2. v0.1.1Oct 15, 2026
  3. v0.1.0Oct 15, 2026

Score

90% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts
  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts