Standalone MCP server for Clojure development tools. Wraps clojure-mcp-light (by Bruce Hauman) as an IAddon. Runs on Babashka via the modex-bb framework.
Provides 5 tools: delimiter error detection/repair, code formatting, nREPL evaluation, and nREPL server discovery.
- Babashka v1.3.0+
bb --config bb.edn run serverAdd to ~/.claude/settings.json:
{
"mcpServers": {
"basic-tools": {
"command": "bb",
"args": ["--config", "/path/to/basic-tools-mcp/bb.edn", "run", "server"]
}
}
}| Tool | Description |
|---|---|
check |
Check Clojure code for delimiter errors (mismatched parens/brackets/braces) |
repair |
Repair delimiter errors using parinfer (edamame + parinferish) |
format_code |
Format Clojure code with cljfmt |
eval_code |
Evaluate Clojure code via nREPL (requires running nREPL server) |
discover |
Discover nREPL servers running on this machine |
All tools accept either code (inline string) or file_path (reads from disk, writes back for repair/format).
basic-tools-mcp implements the IAddon protocol for dynamic registration in hive-mcp. When loaded as an addon, it registers the clojure supertool.
(require '[basic-tools-mcp.init :as init])
(init/init-as-addon!)
;; => {:registered ["clojure"] :total 1}Direct handler usage:
(require '[basic-tools-mcp.tools :as tools])
(tools/handle-clojure {:command "check" :code "(defn foo [x] (+ x 1)"})
;; => {:content [{:type "text" :text "{:has-error true, :source \"inline\"}"}]}This project wraps clojure-mcp-light v0.2.1, which provides:
- Delimiter repair — edamame parser + parinfer (parinfer-rust when available, parinferish fallback)
- nREPL client — evaluation with timeout handling, persistent sessions, port discovery
- cljfmt — code formatting
For local iteration against a clojure-mcp-light checkout, create local.config.edn (gitignored):
{:deps {io.github.bhauman/clojure-mcp-light {:local/root "../clojure-mcp-light"}}}src/basic_tools_mcp/
core.clj — Bridge to clojure-mcp-light (delimiter repair, nREPL eval, formatting)
tools.clj — Command handlers + MCP tool schema (IAddon interface)
init.clj — IAddon reify + nil-railway registration pipeline
server.clj — modex-bb standalone MCP server (5 tools)
log.clj — Logging shim (timbre on JVM, stderr on bb)
- modex-bb — MCP server framework
- clojure-mcp-light — Upstream Clojure dev tools
MIT