siGit CLI MCP server
Commit 9 Nov 2026Memungkinkan AI agent untuk mengelola repository, mereview pull request, melakukan triage issue, dan mencari kode di sigit.si melalui MCP tools.
Juga dikenal sebagai getsigit/si, si
- Stars
- 6
- Tools
- —
- Unduhan, 30 hari
- —
- Versi terbaru
- 1.3.1
- Commit terakhir
- 9 Nov 2026
- Lisensi
- —
Apa itu siGit CLI MCP?
siGit CLI adalah MCP server. Memungkinkan AI agent untuk mengelola repository, mereview pull request, melakukan triage issue, dan mencari kode di sigit.si melalui MCP tools.
Ringkasan dibuat dari README proyek
Tentang siGit CLI MCP server
MCP server ini memungkinkan AI agent untuk mengelola repository, mereview pull request, dan melakukan triage issue di sigit.si. Developer dapat menghubungkan agent ke akun sigit.si mereka menggunakan siGit CLI via stdio atau terhubung ke remote hosted server melalui HTTP. Server ini menggunakan kembali token autentikasi yang dibuat saat proses si auth login standar, sehingga agent tidak memerlukan API keys tambahan untuk berfungsi.
User dapat menyesuaikan kapabilitas agent dengan menggunakan toolset spesifik seperti repo, issue, pr, atau code untuk membatasi perintah yang tersedia. Server ini juga mendukung perpindahan environment untuk server lokal atau staging, serta menyediakan mode read-only untuk mencegah agent melakukan perubahan. Dengan mengarahkan editor ke direktori repository tertentu, agent akan secara otomatis mendeteksi owner dan nama yang tepat untuk semua tugas repository dan pull request.
Ditulis berdasarkan README proyek. Setiap use case diperiksa terhadap kutipan dari README tersebut.
Konfigurasi
SIGIT_TOKENRahasiasigit.si session token. Optional: the server otherwise reuses whatever `si auth login` stored.
SIGIT_HOSTSIGIT_TOOLSETSThe environment form of --toolsets, for clients that pass configuration as variables rather than arguments.
| Nama | Deskripsi | Tipe |
|---|---|---|
| SIGIT_TOKEN | sigit.si session token. Optional: the server otherwise reuses whatever `si auth login` stored. | Rahasia |
| SIGIT_HOST | — | |
| SIGIT_TOOLSETS | The environment form of --toolsets, for clients that pass configuration as variables rather than arguments. |
Pengecekan otomatis
Berjalan 14 Nov 2026Laporan lengkap →Belum diverifikasi. Sebuah server memerlukan skor 80, tidak ada temuan serius, dan data yang cukup untuk kami periksa. Cara kerja checks · Yang perlu diperbaiki untuk menambah poin
- Source repository terhubung dan dapat dijangkaugetsigit/si is public and reachablegithub.com/getsigit/si ↗Lolos
- Nama paket mencantumkan repositori ini sebagai sumbernyaTidak diperiksa
- Provenance build (atestasi Sigstore)Tidak diperiksa
- Lisensi open source (OSI)No licenseTemuan
- Ada commit atau release dalam satu tahun terakhirLast commit or release 2026-11-09github.com/getsigit/si ↗Lolos
- OpenSSF ScorecardTidak diperiksa
- Nama package tidak mirip dengan package populerTidak diperiksa
- Tidak ada advisory kritis pada paket atau dependensinyaTidak diperiksa
- Tidak ada instruksi tersembunyi untuk model0 tool descriptions and the README read; no override phrases, credential paths or hidden charactersLolos
- Tools yang bersifat destruktif telah diberi labelTidak diperiksa
- Endpoint remote merespons handshake MCPTidak diperiksa
README
Lihat di GitHubsigit-si-cli
si is the command line interface for sigit.si — sign in,
manage repositories, review pull requests, triage issues, search code, and
drive Cloud Sessions, all from the terminal.
Install
cargo install --path crates/cli
This installs a binary named si. On a machine with the .NET SDK there is also
a prebuilt tool:
dotnet tool install --global SiGit.Cli
Usage
si auth login # sign in with your sigit.si account
si repo list # your repositories
si repo create my-project --private
si repo clone seto/my-project # clone with your sign-in, no token in the URL
si auth setup-git # or let plain `git clone` use it too
# Inside a repo checkout, si infers OWNER/NAME from the sigit.si git remote —
# --repo is only needed when you're not standing in one.
si pr list
si pr view 42
si pr create --title "Fix the thing" --base main
si issue list --state open
si issue create --title "Bug: ..." --body "Steps to reproduce..."
si code search "TODO" --ref main
si code view README.md
si status set HEAD --state success --context ci/test
si status view # the checks on HEAD
si run start --repo seto/app "Fix the failing build"
si run list
si run view 12 # status and the end of the transcript
si site publish --wait # publish the default branch as a site
si site view
si session new --title "Refactor auth"
si models
si billing show
si auth signup # also: resend, reset-password, delete-account
si browse # open the current repo on sigit.si
si api repos # raw escape hatch for any endpoint
Pass --json to any read command for machine-readable output.
As an MCP server
si mcp serves these same commands to an AI agent as
MCP tools over stdio:
{
"mcpServers": {
"sigit": { "command": "si", "args": ["mcp"] }
}
}
There is nothing to authenticate — the server reuses the token si auth login
stored. Point your editor at the directory of a checkout and repository tools
default to the repo you're standing in, so the agent can say "list the open
pull requests" without naming one; create_pull_request likewise defaults its
head to the checked-out branch.
Trim the tool list when an agent doesn't need all of it:
si mcp --read-only # drop every tool that writes
si mcp --toolsets repo,issue,pr,code # or SIGIT_TOOLSETS=repo,issue
Toolsets are account, repo, issue, pr, code, hook, session, and
billing. sigit.si also hosts a remote MCP server at /api/v1/mcp for clients
that would rather connect over HTTP than spawn a binary.
Environments
si --environment dev repo list # a local sigit.si server (localhost:3000)
SIGIT_HOST=staging.example.com si repo list
Credentials are stored per-environment in ~/.sigit/token (or
~/.sigit-dev/token). SIGIT_TOKEN overrides the stored token, which is how
CI authenticates without an interactive login.
Workspace layout
crates/sigit-si-api— a standalone, typed Rust client for the sigit.si JSON API. No CLI dependencies (clap, dialoguer, …); usable from any Rust project that wants to talk to sigit.si.crates/cli— thesibinary: command parsing, terminal rendering, git remote resolution, and credential storage, built on top ofsigit-si-api.
Issues, pull requests, and code search have no REST surface on sigit.si yet —
they're served over the same MCP (Model Context Protocol) JSON-RPC endpoint
the AI agent uses. sigit-si-api speaks that transport internally; it's not
visible at the call site.
MCP Registry listings
This repo publishes two entries to the official MCP Registry, one per way of reaching the same tools, so registry-aware clients can add either in one click:
| Listing | File | What it is |
|---|---|---|
si.sigit/cli |
server.json |
This CLI: a cargo package listing that runs si mcp over stdio. |
si.sigit/sigit |
server-sigit.json |
The hosted server at sigit.si/api/v1/mcp, a remote Streamable-HTTP listing. The endpoint sigit-si-api talks to, and the official server siGit Code bakes in. |
The CLI holds server.json because it's what this repo ships, and that's the
filename mcp-publisher defaults to. Sibling listings are named after their
own leaf, so the file says which entry it publishes.
Both go out through the release-mcp-registry.yml workflow, and both prove
namespace ownership with a DNS TXT record on sigit.si rather than GitHub
OIDC, so one credential covers the pair. A package listing has a second hurdle:
the registry fetches the crate from crates.io and looks for the
mcp-name: si.sigit/cli marker in its README, which is why that marker sits in
this file. Crate versions are immutable, so a release that ships without the
marker can never be listed, and fixing it costs a new version. The internal
setup and release runbook live with the server (private sigit-si repo).
To cut a release, bump [workspace.package].version and the sigit-si-api
dependency in the root Cargo.toml, merge development into main, and push a
vX.Y.Z tag. release-crates.yml checks the crate versions against the tag,
publishes whichever of sigit-si-api and sigit-si-cli isn't on crates.io yet
(through Trusted Publishing, so no token is stored), then dispatches
release-mcp-registry.yml.
Development
make build # cargo build --workspace
make test # cargo test --workspace
make lint # cargo clippy --workspace --all-targets -- -D warnings
make fmt # cargo fmt --all
make check # fmt + lint + test
Disclaimer
All em dashes are written by Seto Elkahfi.
License
Apache-2.0
Pertanyaan tentang siGit CLI MCP
Bagaimana cara melakukan autentikasi MCP server?
Server ini menggunakan kembali token dari perintah 'si auth login' yang tersimpan di mesin Anda; tidak diperlukan autentikasi terpisah untuk MCP server itu sendiri.
Bagaimana cara menggunakannya di lingkungan CI?
Anda dapat menggunakan environment variable SIGIT_TOKEN untuk melakukan autentikasi tanpa perlu login secara interaktif.