
Codebahn
io.github.codebahnPublished by GitHub account codebahnv0.4.2Updated Oct 25, 2026
Codebahn is the private GitHub alternative: fast Git and CI for developers and teams.
Overview
Codebahn's hosted MCP server connects AI coding agents to a private Git platform for repos, issues, pull requests, CI, releases and search.
- What you can do
- Create, list and read repositories, files, branches, commits, diffs and ref comparisons, and search code and repos, issues and pull requests, including creating, listing and merging pull requests with diffs, commits and reviews, and creating and listing issues with comments, labels and milestones, plus dispatching CI workflows, listing runs, reading logs and managing secrets and variables, and managing releases, attachments, tags, webhooks and branch protections.
- When to use it
- Useful when an assistant should work directly with a team's Codebahn-hosted code: reviewing pull requests commit by commit, filing or triaging issues, inspecting CI runs and logs, or cutting releases without leaving the chat.
- Requirements
- A remote endpoint at codebahn.net/mcp added to an MCP client; OAuth login approved in the browser on first use. No API key or environment variable is needed for the MCP endpoint.
Installation
In SourceWeft
- Open Codebahn in the dashboard and add it to a workspace.
- Connect the required credentials. They are stored privately and never shown on public pages.
- Enable the server for the chats that should use its tools.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
Use with an agent
Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.
Read https://sourceweft.com/mcp/io.github.codebahn%2Fcodebahn/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.Other MCP clients
Add this to your client's mcpServers config. The client completes OAuth sign-in on first connect.
{
"mcpServers": {
"codebahn": {
"type": "http",
"url": "https://codebahn.net/mcp"
}
}
}README
Codebahn CLI
Codebahn is the private GitHub alternative: fast Git and CI for developers and teams. Your code is stored and served. Not scanned, not trained on, not tracked. Swedish company, EU-only infrastructure, every sub-processor EU-incorporated. Built on Forgejo, easy to leave.
Command-line interface for Codebahn.
One binary. OAuth login. No config files.
Install
Linux and macOS
This detects your platform, downloads the latest binary, verifies its
SHA256 checksum, and installs to ~/.local/bin. Override the location
with INSTALL_DIR:
Windows
This downloads the latest binary, verifies its SHA256 checksum and GPG
signature (if gpg is installed), installs to
%LOCALAPPDATA%\Programs\codebahn, and adds it to your PATH.
Override the install location with $env:INSTALL_DIR. Restart your
terminal after install.
From source
Install from source (note: source builds skip auto-update):
Updates
The CLI checks for new versions once every 24 hours and prints a notice when one is available. To update in place:
This downloads the new binary from releases.codebahn.net, verifies its
GPG signature and SHA256 checksum, and replaces itself. No external tools
required.
To check without installing: codebahn update --check.
To silence the periodic check: set CODEBAHN_NO_UPDATE_CHECK=1 or add
"check_updates": false to the config file (~/.config/codebahn/config.json,
or %APPDATA%\codebahn\config.json on Windows).
Authentication
Log in through the browser. Tokens are saved to
~/.config/codebahn/config.json (%APPDATA%\codebahn\config.json on
Windows).
For CI, set CODEBAHN_TOKEN instead.
Commands
When you run inside a Git repo, --owner and --repo are detected from the remote.
Review a pull request commit by commit:
Every subcommand accepts --help.
MCP and AI agents
Codebahn has a built-in, hosted MCP server that connects AI coding agents to your repos, issues, pull requests, and CI:
The tools/ package in this repo is the shared source of truth for both this CLI and the MCP endpoint. 103 tools, one set of types, zero drift.
The server authenticates over OAuth, discovered via /.well-known/oauth-protected-resource. Add the URL to your MCP client and approve the OAuth prompt in your browser on first use.
Claude Code
Codex
VS Code (Copilot)
Create .vscode/mcp.json in your project root:
Cursor
Create .cursor/mcp.json in your project root:
Full docs: codebahn.net/docs/mcp/.
Release infrastructure
Codebahn is an EU-hosted Git platform. We apply that principle to our own tooling: the CLI's release artifacts are hosted on our own EU infrastructure, not on GitHub or any third-party CDN.
How releases work:
- Source code lives here on GitHub (public, for discoverability).
- When we tag a release, GitHub Actions cross-compiles binaries for Linux and macOS (amd64 and arm64).
- The workflow uploads the binaries, a SHA256 checksums file, and a
detached GPG signature to Scaleway Object Storage in
fr-par(Paris, France), served atreleases.codebahn.net. codebahn updatefetches fromreleases.codebahn.net. It never contacts GitHub.
Release artifacts are hosted on our own EU infrastructure so the CLI's update check stays within the EU. Source code is on GitHub because it's the standard home for open-source projects. GitHub Actions compiles the public source; no customer data is involved in the build.
Verifying releases
Every release includes a checksums.txt file signed with our GPG
release key. The CLI verifies both the signature and the checksum
automatically during codebahn update.
To verify manually:
The public key is also embedded in the CLI binary itself, so
codebahn update does not need to fetch it separately.
Cutting a release
Tag and push:
The GitHub Actions workflow runs tests, builds with
GoReleaser (parallel cross-compilation, GPG
signing), and uploads everything to releases.codebahn.net. The
latest.json manifest is updated so existing installs pick up the new
version within 24 hours.
For a local release (bypassing CI): ./scripts/release.sh v0.1.0.
Requires goreleaser, gpg (with the release key), and aws CLI
configured for Scaleway.
Contributing
See CONTRIBUTING.md.
License
Source: README.md at commit 1e6094f
Tools
0Version history
5- v0.4.2LatestOct 22, 2026
- v0.4.1Oct 13, 2026
- v0.4.0Oct 6, 2026
- v0.3.1Sep 23, 2026
- v0.2.2Sep 16, 2026
Score
85% 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 daysRequired25 pts
- Auth declaredRequired10 pts
- 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