Memungkinkan AI agent untuk melakukan triage issue, memperbaiki bug, memverifikasi reachability scanner SARIF, dan melakukan semantic code recall di dalam sebuah repository.
Juga dikenal sebagai thyn-ai/codna-cli, codna-cli, codna
- Stars
- 0
- Tools
- —
- Unduhan, 30 hari
- 13.218
- Versi terbaru
- 0.2.113
- Commit terakhir
- 14 Nov 2026
- Lisensi
- Apache-2.0
Apa itu Codna MCP?
Codna adalah MCP server. Memungkinkan AI agent untuk melakukan triage issue, memperbaiki bug, memverifikasi reachability scanner SARIF, dan melakukan semantic code recall di dalam sebuah repository.
Ringkasan dibuat dari README proyek
Tentang Codna MCP server
Codna menyediakan repository intelligence untuk AI agent dengan memetakan codebase guna memfasilitasi perbaikan bug dan triage issue. Codna berfungsi sebagai MCP server melalui stdio, yang memungkinkan integrasi dengan client seperti Cursor atau Claude Desktop. Developer dapat menjalankannya secara lokal maupun di cloud, menggunakan engine yang sama dengan yang ada pada CLI. Sistem ini memerlukan login komunitas gratis satu kali melalui command codna login untuk mengaktifkan eksekusi tool, sementara tugas spesifik seperti memperbaiki bug memerlukan API key dari model provider seperti Anthropic, OpenAI, atau Gemini.
Server ini menawarkan lima tool utama: codna_triage untuk menemukan kode yang relevan, codna_secure untuk memverifikasi reachability temuan scanner SARIF dari tool seperti CodeQL atau Snyk, dan codna_recall untuk pencarian kode secara semantik dan leksikal. Untuk pengembangan aktif, codna_fix dapat mengidentifikasi root cause dan bahkan membuka pull request jika Anda menyediakan GitHub token. Fitur uniknya adalah on-device memory runtime, yang memungkinkan fitur code recall berfungsi sepenuhnya secara offline tanpa panggilan jaringan setelah setup awal.
Ditulis berdasarkan README proyek. Setiap use case diperiksa terhadap kutipan dari README tersebut.
Cara menginstal Codna MCP
Format diverifikasi 10 Nov 2026Tambahkan ke CursorTambahkan ke GooseInstal Codna MCP di Claude Code
$ claude mcp add --env 'ANTHROPIC_API_KEY=<YOUR_ANTHROPIC_API_KEY>' --env 'CODNA_API_KEY=<YOUR_CODNA_API_KEY>' --env 'GEMINI_API_KEY=<YOUR_GEMINI_API_KEY>' --env 'GITHUB_TOKEN=<YOUR_GITHUB_TOKEN>' --env 'OPENAI_API_KEY=<YOUR_OPENAI_API_KEY>' codna-cli -- uvx codnaInstal Codna MCP di Cursor
~/.cursor/mcp.json
{
"mcpServers": {
"codna-cli": {
"command": "uvx",
"args": [
"codna"
],
"env": {
"ANTHROPIC_API_KEY": "<YOUR_ANTHROPIC_API_KEY>",
"CODNA_API_KEY": "<YOUR_CODNA_API_KEY>",
"GEMINI_API_KEY": "<YOUR_GEMINI_API_KEY>",
"GITHUB_TOKEN": "<YOUR_GITHUB_TOKEN>",
"OPENAI_API_KEY": "<YOUR_OPENAI_API_KEY>"
}
}
}
}Instal Codna MCP di VS Code
.vscode/mcp.json
{
"servers": {
"codna-cli": {
"type": "stdio",
"command": "uvx",
"args": [
"codna"
],
"env": {
"ANTHROPIC_API_KEY": "<YOUR_ANTHROPIC_API_KEY>",
"CODNA_API_KEY": "<YOUR_CODNA_API_KEY>",
"GEMINI_API_KEY": "<YOUR_GEMINI_API_KEY>",
"GITHUB_TOKEN": "<YOUR_GITHUB_TOKEN>",
"OPENAI_API_KEY": "<YOUR_OPENAI_API_KEY>"
}
}
}
}Instal Codna MCP di VS Code CLI
$ code --add-mcp '{"name":"codna-cli","type":"stdio","command":"uvx","args":["codna"],"env":{"ANTHROPIC_API_KEY":"<YOUR_ANTHROPIC_API_KEY>","CODNA_API_KEY":"<YOUR_CODNA_API_KEY>","GEMINI_API_KEY":"<YOUR_GEMINI_API_KEY>","GITHUB_TOKEN":"<YOUR_GITHUB_TOKEN>","OPENAI_API_KEY":"<YOUR_OPENAI_API_KEY>"}}'Instal Codna MCP di Claude Desktop
claude_desktop_config.json
{
"mcpServers": {
"codna-cli": {
"command": "uvx",
"args": [
"codna"
],
"env": {
"ANTHROPIC_API_KEY": "<YOUR_ANTHROPIC_API_KEY>",
"CODNA_API_KEY": "<YOUR_CODNA_API_KEY>",
"GEMINI_API_KEY": "<YOUR_GEMINI_API_KEY>",
"GITHUB_TOKEN": "<YOUR_GITHUB_TOKEN>",
"OPENAI_API_KEY": "<YOUR_OPENAI_API_KEY>"
}
}
}
}Instal Codna MCP di Codex
$ codex mcp add codna-cli --env 'ANTHROPIC_API_KEY=<YOUR_ANTHROPIC_API_KEY>' --env 'CODNA_API_KEY=<YOUR_CODNA_API_KEY>' --env 'GEMINI_API_KEY=<YOUR_GEMINI_API_KEY>' --env 'GITHUB_TOKEN=<YOUR_GITHUB_TOKEN>' --env 'OPENAI_API_KEY=<YOUR_OPENAI_API_KEY>' -- uvx codnaInstal Codna MCP di Codex config.toml
~/.codex/config.toml
[mcp_servers.codna-cli] command = "uvx" args = ["codna"] [mcp_servers.codna-cli.env] ANTHROPIC_API_KEY = "<YOUR_ANTHROPIC_API_KEY>" CODNA_API_KEY = "<YOUR_CODNA_API_KEY>" GEMINI_API_KEY = "<YOUR_GEMINI_API_KEY>" GITHUB_TOKEN = "<YOUR_GITHUB_TOKEN>" OPENAI_API_KEY = "<YOUR_OPENAI_API_KEY>"
Instal Codna MCP di Gemini CLI
$ gemini mcp add -s user -e 'ANTHROPIC_API_KEY=<YOUR_ANTHROPIC_API_KEY>' -e 'CODNA_API_KEY=<YOUR_CODNA_API_KEY>' -e 'GEMINI_API_KEY=<YOUR_GEMINI_API_KEY>' -e 'GITHUB_TOKEN=<YOUR_GITHUB_TOKEN>' -e 'OPENAI_API_KEY=<YOUR_OPENAI_API_KEY>' codna-cli uvx -- codnaInstal Codna MCP di Gemini settings.json
~/.gemini/settings.json
{
"mcpServers": {
"codna-cli": {
"command": "uvx",
"args": [
"codna"
],
"env": {
"ANTHROPIC_API_KEY": "<YOUR_ANTHROPIC_API_KEY>",
"CODNA_API_KEY": "<YOUR_CODNA_API_KEY>",
"GEMINI_API_KEY": "<YOUR_GEMINI_API_KEY>",
"GITHUB_TOKEN": "<YOUR_GITHUB_TOKEN>",
"OPENAI_API_KEY": "<YOUR_OPENAI_API_KEY>"
}
}
}
}Konfigurasi
ANTHROPIC_API_KEYRahasiaProvider key for codna_fix's planner — any one of ANTHROPIC_API_KEY (Anthropic), OPENAI_API_KEY (OpenAI/ChatGPT), or GEMINI_API_KEY (Gemini) works (or store one with `codna key set <provider>`). Every tool also requires the one-time free `codna login` device authorization before executing; introspection (initialize/tools/list) needs no credentials.
CODNA_API_KEYRahasiaCodna key from the one-time free `codna login` (device authorization, free community license). Required to execute any of the five tools; introspection (initialize/tools/list) needs none.
GEMINI_API_KEYRahasiaAlternative provider key (Gemini) for codna_fix's planner — see ANTHROPIC_API_KEY.
GITHUB_TOKENRahasiaWrite token, only for codna_fix with open_pr=true (opens a pull request) and codna_report_bug (files an issue).
OPENAI_API_KEYRahasiaAlternative provider key (OpenAI/ChatGPT) for codna_fix's planner — see ANTHROPIC_API_KEY.
| Nama | Deskripsi | Tipe |
|---|---|---|
| ANTHROPIC_API_KEY | Provider key for codna_fix's planner — any one of ANTHROPIC_API_KEY (Anthropic), OPENAI_API_KEY (OpenAI/ChatGPT), or GEMINI_API_KEY (Gemini) works (or store one with `codna key set <provider>`). Every tool also requires the one-time free `codna login` device authorization before executing; introspection (initialize/tools/list) needs no credentials. | Rahasia |
| CODNA_API_KEY | Codna key from the one-time free `codna login` (device authorization, free community license). Required to execute any of the five tools; introspection (initialize/tools/list) needs none. | Rahasia |
| GEMINI_API_KEY | Alternative provider key (Gemini) for codna_fix's planner — see ANTHROPIC_API_KEY. | Rahasia |
| GITHUB_TOKEN | Write token, only for codna_fix with open_pr=true (opens a pull request) and codna_report_bug (files an issue). | Rahasia |
| OPENAI_API_KEY | Alternative provider key (OpenAI/ChatGPT) for codna_fix's planner — see ANTHROPIC_API_KEY. | Rahasia |
Pengecekan otomatis
Berjalan 12 Nov 2026Laporan lengkap →Lolos checks otomatis kami. Ini bukan audit keamanan: baca kodenya dan berikan server akses paling terbatas yang dibutuhkannya. Cara kerja checks
- Source repository terhubung dan dapat dijangkauLolos
- Lisensi open source (OSI)Lolos
- Ada commit atau release dalam satu tahun terakhirLolos
- Nama package tidak mirip dengan package populerLolos
- Remote endpoint menggunakan HTTPSTidak diperiksa
- Tools yang bersifat destruktif telah diberi labelTidak diperiksa
- Tidak ada instruksi tersembunyi untuk modelLolos
- Tidak ada advisory kritis pada paket atau dependensinyaLolos
README
Lihat di GitHubCodna
Understand. Fix. Evolve.
Agents read your code. Codna understands it.
Codna maps a repository before it spends a token. It then reviews pull requests, fixes bugs and
proves which scanner findings are reachable. The same codna command runs on your machine, in the
GitHub Action and behind the GitHub App.
Runs on your machine or your cloud. Your code never leaves without your key.
Install
pip install codna # or: pipx install codna · uv tool install codna
codna --version
Python 3.12–3.13. Wheels for macOS on Apple silicon and Linux x86_64. git on your PATH.
Nothing else to install: no Node, Bun, Docker or server. The agent runtime ships inside the wheel.
Local commands need no Codna key. fix and review use your own model provider key, stored in
the OS keychain and never printed:
codna key set anthropic # also: openai, gemini, google, groq, mistral, openrouter, xai, cursor
Commands
codna triage . --issue "checkout total is wrong" # suspect files. Deterministic. 0 LLM tokens.
codna review . --pr 123 --post # findings with a verdict on the pull request
codna fix . --tests --apply --max-iterations 3 # patch, re-run your tests, re-fix until green
codna fix <git url> --ref <sha> --issue "…" --open-pr # push a branch and open a pull request
codna secure . --from-sarif results.sarif # which scanner findings are reachable. 0 LLM tokens.
codna fix prints the root cause, the impacted symbols, the blast radius, its confidence and a
regression risk. --open-pr needs a git URL and a GitHub write token. codna review posts one
inline comment per finding with severity, category and a suggestion block, and an Approve when the
diff is clean at medium and high. codna secure reads SARIF 2.1.0 from CodeQL, Semgrep, Snyk,
Trivy or any other scanner.
Other commands: init, status, doctor, login, key, impact, memory export, report.
Full reference: docs.codna.ai/reference/cli.
MCP server
Run Codna as a Model Context Protocol server over stdio — the same engine the CLI uses, inside Cursor, Claude Desktop, or your own agent:
pipx install "codna[mcp]" # or: pip install "codna[mcp]"
codna mcp # serve over stdio
codna mcp install --client cursor # optional: write the client config for you (or --client claude)
Five tools, each returning JSON; a failure comes back as codna_<tool> error: … text and never
crashes the server:
| Tool | What it does | Needs |
|---|---|---|
codna_triage |
Understand a repo and locate the code relevant to an issue. Deterministic, 0 LLM tokens. | free codna login |
codna_secure |
Prove which SARIF scanner findings (CodeQL, Semgrep, Snyk, Trivy) are reachable. Read-only, 0 LLM tokens. | free codna login |
codna_recall |
Recall code from local on-device memory — semantic + lexical search, fully offline. | free codna login (which also installs the on-device runtime) |
codna_fix |
Root-cause and plan a fix (read-only by default); with open_pr=true pushes a branch and opens a real PR. |
free codna login + provider key (BYOK; + GITHUB_TOKEN for open_pr=true) |
codna_report_bug |
File a bug, feature, or question to thyn-ai/feedback. | free codna login + GITHUB_TOKEN (else returns a pre-filled URL) |
Introspection (initialize/tools/list) needs no credentials. Executing any of the five tools
requires the one-time free community login (codna login — device authorization, free community
license) — fully offline thereafter. codna_fix additionally needs a provider key (BYOK, e.g.
ANTHROPIC_API_KEY); codna_report_bug needs GITHUB_TOKEN or it returns a pre-filled issue
URL; codna_recall additionally uses the on-device memory runtime that the same codna login
installs.
Full reference:
docs.codna.ai/guides/mcp.
Code memory
Code memory and recall run on your machine after a one-time free codna login (device
authorization), which also installs the signed on-device runtime. From then on, recall runs fully
offline: no key, no network calls. The optional
codna[memory] extra adds the on-device semantic reranker; without it, recall ranks lexically.
What leaves your machine
- Repository mapping, triage, recall and
impactrun offline. No model is involved. fixandreviewsend one issue-specific evidence bundle to the provider you chose, under your key. Not the repository.- Secret redaction is always on and cannot be turned off.
privacy.egress: fail-closedincodna.yamlrefuses to run tests without network denial and skips registry lookups during review.- Source distributions exclude runtime binaries, keys,
.envfiles and logs.
Links
- Homepage: https://codna.ai
- Documentation: https://docs.codna.ai
- Source (public mirror): https://github.com/thyn-ai/codna-cli
- Security: https://codna.ai/security
Pertanyaan tentang Codna MCP
Bagaimana cara menambahkan Codna MCP ke Claude Code?
Jalankan claude mcp add --env 'ANTHROPIC_API_KEY=<YOUR_ANTHROPIC_API_KEY>' --env 'CODNA_API_KEY=<YOUR_CODNA_API_KEY>' --env 'GEMINI_API_KEY=<YOUR_GEMINI_API_KEY>' --env 'GITHUB_TOKEN=<YOUR_GITHUB_TOKEN>' --env 'OPENAI_API_KEY=<YOUR_OPENAI_API_KEY>' codna-cli -- uvx codna di terminal Anda. Tambahkan --scope user agar tersedia di semua proyek.
Bagaimana cara menambahkan Codna MCP ke Cursor?
Buka ~/.cursor/mcp.json dan tambahkan server di bawah mcpServers, menggunakan config Cursor yang ditunjukkan di bagian instalasi di atas.
Apakah Codna mengirimkan seluruh repository saya ke LLM?
Tidak, fitur fix dan review hanya mengirimkan satu bundle bukti spesifik terkait issue tersebut ke provider pilihan Anda menggunakan API key Anda, bukan seluruh repository.
Bagaimana cara menggunakan Codna dengan Cursor atau Claude Desktop?
Anda dapat menginstal MCP server via pipx dan menggunakan command install untuk menulis konfigurasi client secara otomatis untuk Cursor atau Claude.
Bisakah saya menggunakan Codna secara offline?
Ya, tool untuk repository mapping, triage, recall, dan impact berjalan secara offline, dan fitur recall dapat berjalan sepenuhnya offline setelah melakukan login satu kali.
Temuan scanner apa saja yang bisa dianalisis oleh Codna?
Codna dapat membuktikan reachability dari temuan CodeQL, Semgrep, Snyk, Trivy, atau scanner lainnya yang menyediakan format SARIF 2.1.0.