Keel vs Semgrep

A side-by-side look at the Keel and Semgrep MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.

Keel logoKeelSecurity · Local subprocess (stdio)Control plane MCP for scoped recon, triage, and bounded proofs.49FairAuth: not declaredSemgrep logoSemgrepSecurity · Local subprocess (stdio)Scan code for security vulnerabilities using Semgrep.48FairAuth: no auth required

Verdict: choose Keel for security work as a local process; choose Semgrep for security as a local process. You can also run both side by side in one mcpServers block.

Which MCP server should you choose?

Keel logoChoose Keel when

  • You need dedicated capabilities in the Security domain.
  • You prefer a local stdio subprocess transport.
  • You want tools like begin_engagement, draft_waves, execute_wave.
Explore Keel

Semgrep logoChoose Semgrep when

  • You need dedicated capabilities in the Security domain.
  • You prefer a local stdio subprocess transport.
  • Its auth model fits you: No auth required.
Explore Semgrep

Feature & specification comparison

Rows where the two servers differ are marked.

SpecKeel logoKeelSemgrep logoSemgrep
CategorySecuritySecurity
Quality signal49/100 · Fair48/100 · Fair
Install commandConfirmedConfirmed
TransportLocal subprocess (stdio)Local subprocess (stdio)
AuthNot declaredNo auth required
PricingNot declaredFree
Required env varsNone listedNone listed
Verified ownerCommunity listingCommunity listing
GitHub stars217,235
Directory activity 0 views 0 installs 0 upvotes 1 views 0 installs 0 upvotes
Tools13Not listed

Tools & capabilities

Keel tools 13

  • begin_engagementRegister scope and traffic ceilings
  • draft_wavesPropose reachability + template micro-waves; no traffic
  • execute_waveQueue one background job
  • wave_statusStage, progress, result; omit `job_id` to list
  • cancel_waveStop a queued or running scanner
  • query_cardsPrioritized semantic cards
  • second_lookRe-run only the originating Nuclei template
  • assess_exploitabilityCandidate impact, missing evidence, negative control, playbooks
  • state_impactRecord a hunter hypothesis
  • draft_proofAllowlisted proof plan; no traffic
  • execute_proofRun the GET-only playbook
  • engagement_healthCooldowns, budgets, pending waves
  • +1 more on the listing page

Semgrep tools

No tool names declared yet. Check the project README from the listing page.

Ready-to-paste client configs

Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.

Keel

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "keel": {
      "command": "uvx",
      "args": [
        "keel"
      ]
    }
  }
}

Semgrep

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "semgrep-semgrep": {
      "command": "uvx",
      "args": [
        "semgrep"
      ]
    }
  }
}

Frequently asked questions

Keel is categorized under Security and uses a local stdio subprocess. Semgrep belongs to Security and uses a local stdio subprocess. Pick Keel for security work and Semgrep for security.

Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.

Keel has no declared pricing — check the project's own site. Semgrep is listed as free. Auth: no auth required. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.

Yes. MCP clients support multiple servers: add keel and semgrep-semgrep as separate keys in the same mcpServers object, and your assistant will call tools from either one.

On AllMCPs, Keel has a quality signal of 49/100 (Fair) with 0 views, 0 installs and 2 GitHub stars. Semgrep has 48/100 (Fair) with 1 views, 0 installs and 17,235 GitHub stars.