Permet aux agents IA de trier les problèmes, de corriger des bugs, de vérifier la joignabilité des scanners SARIF et d'effectuer de la recherche sémantique de code au sein d'un dépôt.
Aussi connu sous thyn-ai/codna-cli, codna-cli, codna
- Étoiles
- 0
- Outils
- —
- Téléchargements, 30 jours
- 13 218
- Dernière version
- 0.2.113
- Dernier commit
- 14 nov. 2026
- Licence
- Apache-2.0
Qu'est-ce que Codna MCP ?
Codna est un serveur MCP. Permet aux agents IA de trier les problèmes, de corriger des bugs, de vérifier la joignabilité des scanners SARIF et d'effectuer de la recherche sémantique de code au sein d'un dépôt.
Résumé généré à partir du README du projet
À propos du MCP server Codna
Codna fournit une intelligence de dépôt pour les agents IA en cartographiant les bases de code afin de faciliter la correction de bugs et le triage de problèmes. Il fonctionne comme un MCP server via stdio, permettant une intégration avec des clients comme Cursor ou Claude Desktop. Les développeurs peuvent l'exécuter localement ou dans le cloud, en utilisant le même moteur que celui présent dans le CLI. Le système nécessite une connexion communautaire gratuite unique via codna login pour activer l'exécution des outils, tandis que des tâches spécifiques comme la correction de bugs nécessitent une clé de fournisseur de modèle provenant de services tels qu'Anthropic, OpenAI ou Gemini.
Le serveur propose cinq outils principaux : codna_triage pour localiser le code pertinent, codna_secure pour vérifier la joignabilité des résultats de scanners SARIF provenant d'outils comme CodeQL ou Snyk, et codna_recall pour la recherche de code sémantique et lexicale. Pour le développement actif, codna_fix peut identifier les causes racines et même ouvrir des pull requests si un token GitHub est fourni. Une fonctionnalité unique est le runtime de mémoire sur l'appareil, qui permet au recall de fonctionner entièrement hors ligne sans appels réseau après la configuration initiale.
Extrait du README du projet. Chaque cas d'utilisation est vérifié par rapport à une citation du document.
Comment installer Codna MCP
Formats vérifiés le 10 nov. 2026Ajouter à CursorAjouter à GooseInstaller Codna MCP dans 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 codnaInstaller Codna MCP dans 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>"
}
}
}
}Installer Codna MCP dans 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>"
}
}
}
}Installer Codna MCP dans 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>"}}'Installer Codna MCP dans 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>"
}
}
}
}Installer Codna MCP dans 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 codnaInstaller Codna MCP dans 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>"
Installer Codna MCP dans 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 -- codnaInstaller Codna MCP dans 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>"
}
}
}
}Configuration
ANTHROPIC_API_KEYSecretProvider 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_KEYSecretCodna 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_KEYSecretAlternative provider key (Gemini) for codna_fix's planner — see ANTHROPIC_API_KEY.
GITHUB_TOKENSecretWrite token, only for codna_fix with open_pr=true (opens a pull request) and codna_report_bug (files an issue).
OPENAI_API_KEYSecretAlternative provider key (OpenAI/ChatGPT) for codna_fix's planner — see ANTHROPIC_API_KEY.
| Nom | Description | Type |
|---|---|---|
| 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. | Secret |
| 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. | Secret |
| GEMINI_API_KEY | Alternative provider key (Gemini) for codna_fix's planner — see ANTHROPIC_API_KEY. | Secret |
| GITHUB_TOKEN | Write token, only for codna_fix with open_pr=true (opens a pull request) and codna_report_bug (files an issue). | Secret |
| OPENAI_API_KEY | Alternative provider key (OpenAI/ChatGPT) for codna_fix's planner — see ANTHROPIC_API_KEY. | Secret |
Vérifications automatisées
Exécuté le 12 nov. 2026Rapport complet →A passé nos vérifications automatisées. Il ne s'agit pas d'un audit de sécurité : lisez le code et donnez au serveur l'accès le plus restreint dont il a besoin. Fonctionnement des vérifications
- Dépôt source lié et accessibleRéussi
- Licence open source (OSI)Réussi
- Commit ou version publiée au cours de l'année écouléeRéussi
- Nom du package non proche d'un package populaireRéussi
- L'endpoint distant utilise HTTPSNon vérifié
- Les outils destructifs sont étiquetésNon vérifié
- Aucune instruction cachée destinée au modèleRéussi
- Aucun avis critique dans le package ou ses dépendancesRéussi
README
Voir sur 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
Questions sur Codna MCP
Comment ajouter Codna MCP à Claude Code ?
Exécutez 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 dans votre terminal. Ajoutez --scope user pour le rendre disponible dans tous les projets.
Comment ajouter Codna MCP à Cursor ?
Ouvrez ~/.cursor/mcp.json et ajoutez le serveur sous mcpServers, avec la configuration Cursor indiquée dans la section d'installation ci-dessus.
Est-ce que Codna envoie l'intégralité de mon dépôt à un LLM ?
Non, les fonctions fix et review n'envoient qu'un bundle de preuves spécifique au problème à votre fournisseur choisi via votre clé, et non l'intégralité du dépôt.
Comment utiliser Codna avec Cursor ou Claude Desktop ?
Vous pouvez installer le MCP server via pipx et utiliser la commande install pour écrire automatiquement la configuration client pour Cursor ou Claude.
Puis-je utiliser Codna hors ligne ?
Oui, les outils de mapping de dépôt, de triage, de recall et d'impact fonctionnent hors ligne, et le recall fonctionne entièrement hors ligne après une connexion unique.
Quels résultats de scan Codna peut-il analyser ?
Codna peut prouver la joignabilité des résultats provenant de CodeQL, Semgrep, Snyk, Trivy ou de tout autre scanner fournissant du SARIF 2.1.0.