clj-kondo-MCP
Clojure linter
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
Related Servers
MCP Server Executable
An executable server for running MCP services, featuring tool chaining, multi-service management, and plugin support.
Starknet MCP
An MCP server providing access to various Starknet RPC methods.
Replicate FLUX.1 Kontext [Max]
Image generation and editing using the FLUX.1 Kontext [Max] model via the Replicate API, featuring advanced text rendering and contextual understanding.
Gemini MCP
An MCP server that orchestrates Google Gemini and Claude Code models via the OpenRouter API.
Grafana
Access and manage Grafana resources, including dashboards, datasources, Prometheus, Loki, and alerting.
MCP Code Executor
Allows LLMs to execute Python code within a specified and configurable Python environment.
MCP Experiments
An experimental dotnet MCP server that returns the current time, based on Laurent Kempé's tutorial.
MKP
Model Kontext Protocol Server for Kubernetes that allows LLM-powered applications to interact with Kubernetes clusters through native Go implementation with direct API integration and comprehensive resource management.
Inoyu Apache Unomi
Maintains user context and manages profiles using the Apache Unomi Customer Data Platform.
Apple Developer Documentation
Search Apple's official developer documentation for iOS, macOS, SwiftUI, WWDC videos, and more.