|
3 | 3 | "name": "codeant", |
4 | 4 | "display_name": "CodeAnt AI", |
5 | 5 | "version": "0.5.3", |
6 | | - "description": "Drive CodeAnt AI security scans and code review from Claude — org-wide secret triage, cross-repo SAST/SCA findings, on-demand scans, and local PR review.", |
7 | | - "long_description": "CodeAnt AI inside Claude. Ask things like \"show my highest-priority Hotlist findings\", \"list AWS cloud findings\", \"show this pentest report\", or \"review my staged changes\" — Claude calls the CodeAnt API directly via this MCP server.\n\nIncludes 22 read-only tools, covering repository, Hotlist, cloud security, anti-pattern, and pentest findings plus an authenticated GET escape hatch for new APIs, 2 sign-in tools, and 3 opt-in write tools gated behind a setting.\n\nRequires a CodeAnt account. Sign up at https://codeant.ai. To authenticate, call the `codeant_login` tool — it returns a sign-in link (and opens it in your browser when it can), then saves the token once you finish.\n\nCollects usage telemetry via PostHog by default (events are tied to your CodeAnt token); turn on \"Disable telemetry\" in the extension settings to opt out.", |
| 6 | + "description": "Drive CodeAnt AI security scans and code review from Claude \u2014 org-wide secret triage, cross-repo SAST/SCA findings, on-demand scans, and local PR review.", |
| 7 | + "long_description": "CodeAnt AI inside Claude. Ask things like \"show my highest-priority Hotlist findings\", \"list AWS cloud findings\", \"show this pentest report\", or \"review my staged changes\" \u2014 Claude calls the CodeAnt API directly via this MCP server.\n\nIncludes 23 read-only tools, covering repository, Hotlist, cloud security, anti-pattern, and pentest findings plus an authenticated GET escape hatch for new APIs, 2 sign-in tools, and 3 opt-in write tools gated behind a setting.\n\nRequires a CodeAnt account. Sign up at https://codeant.ai. To authenticate, call the `codeant_login` tool \u2014 it returns a sign-in link (and opens it in your browser when it can), then saves the token once you finish.\n\nCollects usage telemetry via PostHog by default (events are tied to your CodeAnt token); turn on \"Disable telemetry\" in the extension settings to opt out.", |
8 | 8 | "author": { |
9 | 9 | "name": "CodeAnt AI", |
10 | 10 | "email": "support@codeant.ai", |
|
32 | 32 | "entry_point": "server/index.js", |
33 | 33 | "mcp_config": { |
34 | 34 | "command": "node", |
35 | | - "args": ["${__dirname}/server/index.js"], |
| 35 | + "args": [ |
| 36 | + "${__dirname}/server/index.js" |
| 37 | + ], |
36 | 38 | "env": { |
37 | 39 | "CODEANT_API_TOKEN": "${user_config.api_token}", |
38 | 40 | "CODEANT_API_URL": "${user_config.base_url}", |
|
57 | 59 | }, |
58 | 60 | "tools_generated": false, |
59 | 61 | "tools": [ |
60 | | - { "name": "codeant_scans_orgs", "description": "List the CodeAnt organizations the current user is authenticated to." }, |
61 | | - { "name": "codeant_scans_repos", "description": "List repositories connected to CodeAnt for an organization." }, |
62 | | - { "name": "codeant_scans_history", "description": "Show recent scan runs for a single repository." }, |
63 | | - { "name": "codeant_scans_get", "description": "Get summary metadata for a single scan (no findings)." }, |
64 | | - { "name": "codeant_scans_results", "description": "Fetch full findings (SAST, SCA, secrets, IaC, etc.) for a scan." }, |
65 | | - { "name": "codeant_scans_dismissed", "description": "List dismissed alerts for a repository." }, |
66 | | - { "name": "codeant_scans_overrides", "description": "List user false-positive, confidence, and severity overrides for a repository." }, |
67 | | - { "name": "codeant_hotlist_list", "description": "List prioritized organization-wide Hotlist findings with stable IDs." }, |
68 | | - { "name": "codeant_hotlist_get", "description": "Fetch one complete Hotlist finding by its stable ID." }, |
69 | | - { "name": "codeant_findings_antipatterns", "description": "List anti-pattern findings across selected or all organization repositories." }, |
70 | | - { "name": "codeant_cloud_scan_history", "description": "List AWS, Azure, or GCP CSPM, VM, or container scan history." }, |
71 | | - { "name": "codeant_cloud_findings_list", "description": "List findings for a CSPM, VM, or container security scan." }, |
72 | | - { "name": "codeant_cloud_finding_get", "description": "Fetch complete detail for one cloud security finding." }, |
73 | | - { "name": "codeant_pentest_history", "description": "List pentest engagements visible in CodeAnt." }, |
74 | | - { "name": "codeant_pentest_issues", "description": "List all available issues for a pentest engagement." }, |
75 | | - { "name": "codeant_pentest_report", "description": "Fetch a complete pentest customer report." }, |
76 | | - { "name": "codeant_api_get", "description": "Call any authenticated GET endpoint on the configured CodeAnt API host." }, |
77 | | - { "name": "codeant_pr_list", "description": "List pull requests / merge requests across GitHub, GitLab, Bitbucket, Azure DevOps." }, |
78 | | - { "name": "codeant_pr_get", "description": "Fetch detailed information for a single PR/MR." }, |
79 | | - { "name": "codeant_pr_comments", "description": "List comments on a PR/MR with optional filters." }, |
80 | | - { "name": "codeant_comments_search", "description": "Search across CodeAnt review comments by free-text query." }, |
81 | | - { "name": "codeant_review_local", "description": "Run a CodeAnt AI review on local working-copy changes." }, |
82 | | - { "name": "codeant_login", "description": "Start browser sign-in to CodeAnt AI and return the sign-in link; saves the API token once sign-in completes." }, |
83 | | - { "name": "codeant_logout", "description": "Clear the saved API token and sign out of CodeAnt AI." }, |
84 | | - { "name": "codeant_scans_start", "description": "Trigger a new scan run (write — gated behind read_only=false)." }, |
85 | | - { "name": "codeant_pr_resolve", "description": "Resolve a PR conversation thread (write — gated behind read_only=false)." }, |
86 | | - { "name": "codeant_api_request", "description": "Call an authenticated POST, PUT, PATCH, or DELETE API (write — gated behind read_only=false)." } |
| 62 | + { |
| 63 | + "name": "codeant_scans_orgs", |
| 64 | + "description": "List the CodeAnt organizations the current user is authenticated to." |
| 65 | + }, |
| 66 | + { |
| 67 | + "name": "codeant_scans_repos", |
| 68 | + "description": "List repositories connected to CodeAnt for an organization." |
| 69 | + }, |
| 70 | + { |
| 71 | + "name": "codeant_scans_history", |
| 72 | + "description": "Show recent scan runs for a single repository." |
| 73 | + }, |
| 74 | + { |
| 75 | + "name": "codeant_scans_get", |
| 76 | + "description": "Get summary metadata for a single scan (no findings)." |
| 77 | + }, |
| 78 | + { |
| 79 | + "name": "codeant_scans_results", |
| 80 | + "description": "Fetch full findings (SAST, SCA, secrets, IaC, etc.) for a scan." |
| 81 | + }, |
| 82 | + { |
| 83 | + "name": "codeant_scans_dismissed", |
| 84 | + "description": "List dismissed alerts for a repository." |
| 85 | + }, |
| 86 | + { |
| 87 | + "name": "codeant_scans_overrides", |
| 88 | + "description": "List user false-positive, confidence, and severity overrides for a repository." |
| 89 | + }, |
| 90 | + { |
| 91 | + "name": "codeant_hotlist_list", |
| 92 | + "description": "List prioritized organization-wide Hotlist findings with stable IDs." |
| 93 | + }, |
| 94 | + { |
| 95 | + "name": "codeant_hotlist_get", |
| 96 | + "description": "Fetch one complete Hotlist finding by its stable ID." |
| 97 | + }, |
| 98 | + { |
| 99 | + "name": "codeant_findings_antipatterns", |
| 100 | + "description": "List anti-pattern findings across selected or all organization repositories." |
| 101 | + }, |
| 102 | + { |
| 103 | + "name": "codeant_cloud_scan_history", |
| 104 | + "description": "List AWS, Azure, or GCP CSPM, VM, or container scan history." |
| 105 | + }, |
| 106 | + { |
| 107 | + "name": "codeant_cloud_findings_list", |
| 108 | + "description": "List findings for a CSPM, VM, or container security scan." |
| 109 | + }, |
| 110 | + { |
| 111 | + "name": "codeant_cloud_finding_get", |
| 112 | + "description": "Fetch complete detail for one cloud security finding." |
| 113 | + }, |
| 114 | + { |
| 115 | + "name": "codeant_pentest_history", |
| 116 | + "description": "List pentest engagements visible in CodeAnt." |
| 117 | + }, |
| 118 | + { |
| 119 | + "name": "codeant_pentest_issues", |
| 120 | + "description": "List all available issues for a pentest engagement." |
| 121 | + }, |
| 122 | + { |
| 123 | + "name": "codeant_pentest_report", |
| 124 | + "description": "Fetch a complete pentest customer report." |
| 125 | + }, |
| 126 | + { |
| 127 | + "name": "codeant_api_get", |
| 128 | + "description": "Call any authenticated GET endpoint on the configured CodeAnt API host." |
| 129 | + }, |
| 130 | + { |
| 131 | + "name": "codeant_pr_list", |
| 132 | + "description": "List pull requests / merge requests across GitHub, GitLab, Bitbucket, Azure DevOps." |
| 133 | + }, |
| 134 | + { |
| 135 | + "name": "codeant_pr_get", |
| 136 | + "description": "Fetch detailed information for a single PR/MR." |
| 137 | + }, |
| 138 | + { |
| 139 | + "name": "codeant_pr_comments", |
| 140 | + "description": "List comments on a PR/MR with optional filters." |
| 141 | + }, |
| 142 | + { |
| 143 | + "name": "codeant_comments_search", |
| 144 | + "description": "Search across CodeAnt review comments by free-text query." |
| 145 | + }, |
| 146 | + { |
| 147 | + "name": "codeant_review_local", |
| 148 | + "description": "Run a CodeAnt AI review on local working-copy changes." |
| 149 | + }, |
| 150 | + { |
| 151 | + "name": "codeant_login", |
| 152 | + "description": "Start browser sign-in to CodeAnt AI and return the sign-in link; saves the API token once sign-in completes." |
| 153 | + }, |
| 154 | + { |
| 155 | + "name": "codeant_logout", |
| 156 | + "description": "Clear the saved API token and sign out of CodeAnt AI." |
| 157 | + }, |
| 158 | + { |
| 159 | + "name": "codeant_scans_start", |
| 160 | + "description": "Trigger a new scan run (write \u2014 gated behind read_only=false)." |
| 161 | + }, |
| 162 | + { |
| 163 | + "name": "codeant_pr_resolve", |
| 164 | + "description": "Resolve a PR conversation thread (write \u2014 gated behind read_only=false)." |
| 165 | + }, |
| 166 | + { |
| 167 | + "name": "codeant_api_request", |
| 168 | + "description": "Call an authenticated POST, PUT, PATCH, or DELETE API (write \u2014 gated behind read_only=false)." |
| 169 | + }, |
| 170 | + { |
| 171 | + "name": "codeant_scans_status", |
| 172 | + "description": "Read a history scan run status." |
| 173 | + } |
87 | 174 | ], |
88 | 175 | "user_config": { |
89 | 176 | "api_token": { |
|
0 commit comments