release/v1.5.6
The official siGit MCP server
siGit Code Cloud runs a hosted Model Context Protocol
server at https://sigit.si/api/v1/mcp. It's a stateless Streamable-HTTP
server (JSON-RPC 2.0 over a single POST endpoint) that exposes your
siGit-hosted git repositories — plus web search — as MCP tools, so any MCP
client can browse repos, read files, search code, and open or comment on pull
requests and issues on your behalf.
This page documents the server from a client's perspective: the siGit Code CLI is its reference consumer, but the endpoint is a standard remote MCP server that works with any compliant client. The server implementation itself is closed-source (it's part of the hosted service); only this consumer-facing description is public.
Tools
| Tool | What it does |
|---|---|
list_repositories |
List the git repositories the authenticated user can access. Use this first to discover the owner/name to pass to other tools. |
get_file_contents |
Read a file's contents at a given ref (branch, tag, or commit SHA). |
search_code |
Search file contents across a repository; returns matching files with line snippets. |
list_issues |
List issues in a repository, optionally filtered by state or a title/body search. |
get_issue |
Fetch one issue by number, including its body and comments. |
create_issue |
Open a new issue in a repository. |
list_pull_requests |
List pull requests in a repository, optionally filtered by state. |
get_pull_request |
Fetch one pull request by number. |
create_pull_request |
Open a pull request from a head branch into a base branch. |
add_issue_comment |
Post a comment on an issue or pull request by its number. |
web_search |
Search the public web; returns matching pages as title, URL, and snippet. |
All repository tools take a repo in owner/name form and only ever see
repositories the authenticated user may access.
Authentication
The server is a per-user protected resource. Every tools/call requires an
Authorization: Bearer <token> header carrying a siGit Code Cloud session
token. Unauthenticated requests get a 401 with a WWW-Authenticate header
advertising the OAuth protected-resource metadata, so MCP clients that support
OAuth can discover the sign-in flow automatically.
Being stateless, the server issues no Mcp-Session-Id and offers no
server→client SSE stream (a GET to the endpoint returns 405) — a valid,
tool-only MCP transport mode.
How the siGit Code CLI uses it
The CLI bakes this endpoint in as its official MCP server (default
https://sigit.si/api/v1/mcp, overridable via SIGIT_CLOUD_URL). When you're
signed in with sigit login, the CLI sends your cloud session token as the
bearer credential; when you're not, the server simply contributes no tools.
Its tools are namespaced mcp__sigit__<tool> inside the agent (see
src/mcp.rs). web_search is additionally re-exposed as a
first-class read-only tool rather than a raw mcp__* call.
A user-defined mcp.toml entry named sigit overrides the baked-in default,
so you can repoint the CLI at a different deployment without a code change.
MCP Registry listing
The server is published to the
official MCP Registry as
si.sigit/sigit, a remote Streamable-HTTP listing, so registry-aware
clients can add it in one click. The registry only stores metadata; the
server.json and publish workflow live in this repo, and namespace ownership is
proven by a DNS TXT record on sigit.si. The internal setup and release runbook
live with the server (private sigit-si repo).