
Branchname
io.github.CloudCorpRecordsPublished by GitHub account CloudCorpRecordsv0.1.0Updated Nov 3, 2026
Build a branch name from an issue title and number, in the repo's naming convention.
Overview
Branchname's local MCP server; no sign-in required; STDIO.
No AI overview yet: these facts come from the registry entry and the server itself.
Installation
In SourceWeft
- Open Branchname in the dashboard and add it to a workspace.
- 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
branchname
Naming a branch sounds trivial until every contributor does
it differently: fix-login, 123-login-bug, johns-branch,
and a dozen variants of the same issue, none of them greppable
in the same way. branchname takes the other approach — you
hand it the issue, and it hands back one name, built the
repo's way every time.
The title is slugified by a fixed, pinned recipe: lowercase
it, replace every maximal run of characters outside
[a-z0-9] with a single -, and strip leading and trailing
-. Punctuation clusters collapse instead of multiplying,
digits survive, and characters outside ASCII — accents,
dashes, emoji — count as separators like any other
punctuation. A title with nothing slugifiable in it at all
is an error ("title produces an empty slug"), not a branch
named -.
When the slug runs long, it is truncated: cut to exactly
max_slug_length characters (40 by default, never below 8),
then strip any trailing - the cut left behind, so a branch
never ends mid-word on a dangling hyphen.
The slug is then composed in one of four conventions:
type-issue-slug(the default) —<type>/<issue_number>-<slug>, for examplefix/123-login-redirect-loop. Requires bothtypeandissue_number.type-slug—<type>/<slug>, for exampledocs/update-install-guide. Requirestype.issue-slug—<issue_number>-<slug>, for example42-login-redirect-loop. Requiresissue_number.slug— just<slug>, for examplelogin-redirect-loop. Requires neither.
type is one of feat, fix, chore, docs, refactor,
or test. Asking a convention for a component you did not
supply is an error naming that component, and malformed
input — a missing, empty, or non-string title, an
issue_number that is not an integer of at least 1, a
type or convention outside its enum, or a
max_slug_length that is not an integer of at least 8 — is
a validation error naming the offending path, with no
partial result. The computation is pure and local: no
network, no configuration, and no repository is read or
touched — branchname only builds the name.
CLI
args.json contains the full arguments object:
convention defaults to "type-issue-slug" and
max_slug_length defaults to 40. The result is printed
as JSON:
Exit codes: 0 on success, 1 on a runtime error (including
an unreadable or invalid input file, or invalid input), 2
on a usage error.
MCP server
MCP client config:
Tools
-
make_branch_name— Build a branch name from an issue title.title(string, required, non-empty) — the issue title to slugifyissue_number(integer, optional, at least 1) — the issue numbertype(string, optional) — change type prefix, one offeat,fix,chore,docs,refactor,testconvention(string, optional, default"type-issue-slug") — one oftype-issue-slug,type-slug,issue-slug,slugmax_slug_length(integer, optional, default 40, at least 8) — maximum slug length before truncation
Returns
{branch, slug, convention}, whereslugis the final (possibly truncated) slug andconventionechoes the resolved convention.
Docker
Development
License
MIT — Copyright (c) 2026 Rene Turcios
Source: README.md at commit f658c17
Tools
0Version history
1- v0.1.0LatestNov 3, 2026
Score
50% 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
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- 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 listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts