About clj-kondo-MCP
clj-kondo-MCP is an MCP server published by Bigsy in the Developer Tools category: standalone MCP server for clj-kondo static analysis (Babashka + JVM).
The repository has 4 stars and 2 forks, with the last commit a year ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.
Install
git clone https://github.com/Bigsy/clj-kondo-MCPThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Ask AI
Ask AI about clj-kondo-MCP
Powered by Claude · Grounded in docs
Security checks
Static checks derived from the repository 5 days ago. Heuristics on the source, not an audit.
- ✓README presentThe repository ships documentation.
- ✓License declaredUsable under a stated license.
- ✓Tests presentA test suite exists in the repository.
- ✓Dependencies pinnedA lockfile pins dependency versions.
- ✓No dynamic code executionSource scan found no eval, dynamic Function, or shell execution.
- !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.
README
clj-kondo MCP Server 
A Model Context Protocol (MCP) server that provides clj-kondo linting capabilities for Clojure/ClojureScript/EDN files. Handy for Claude code and desktop where there are no built in linting capabilities. You may want to consider editing your CLAUDE.md asking it to lint after editing.
Features
- Lint Clojure files via MCP tool calls
- Supports all clj-kondo analysis capabilities
- Optional explicit configuration directory support
Installation
Quick Install
npx clj-kondo-mcp
or IDE config
{
"mcpServers": {
"clj-kondo": {
"command": "npx",
"args": ["clj-kondo-mcp"],
"disabled": false,
"autoApprove": []
}
}
}
Manual Installation
-
Install clj-kondo: Make sure you have clj-kondo installed and available on your system PATH. See the installation instructions for your platform.
-
Install dependencies:
npm install
- Build the server:
npm run build
Usage
Running the Server
node build/index.js
MCP Tool Calls
The server provides one tool:
lint_clojure - Lint Clojure/ClojureScript/EDN content
Parameters:
{
"file": "/absolute/path/to/file.clj", // Must be absolute path - can be a file, directory, or classpath
"configDir": "/absolute/path/to/config/dir", // Optional, must be absolute path if provided
"level": "warning" // Optional, defaults to error level
}
The file parameter accepts:
- A single file path (e.g. "/path/to/src/my_file.clj")
- A directory path (e.g. "/path/to/src") - will lint all .clj, .cljs and .cljc files recursively
- A classpath string - will lint all Clojure files in the classpath
- For Leiningen projects: Use output of
lein classpath - For deps.edn projects: Use output of
clojure -Spath
- For Leiningen projects: Use output of
Note: Both file and configDir parameters must be absolute paths since the MCP server runs as a separate process. Relative paths will not work correctly.
By default, clj-kondo will automatically look for configuration in the .clj-kondo directory in the current and parent directories. You can override this by specifying the configDir parameter to point to a specific configuration directory.
For more information about clj-kondo configuration, see the official documentation.
Configuration
Add to your MCP settings file (for Cline, located at ~/Library/Application Support/Code - Insiders/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json):
{
"mcpServers": {
"clj-kondo": {
"command": "npx",
"args": ["clj-kondo-mcp"],
"disabled": false,
"autoApprove": []
}
}
}
For manual builds, use:
{
"mcpServers": {
"clj-kondo": {
"command": "node",
"args": ["build/index.js"],
"disabled": false,
"autoApprove": []
}
}
}
Build
npm run build
Watch Mode
npm run dev
README fetched from the repository 5 days ago. The original is authoritative.