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
Scout Monitoring MCP
sponsorPut performance and error data directly in the hands of your AI assistant.
Alpha Vantage MCP Server
sponsorAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Terraform MCP Server
Integrates with Terraform Registry APIs for Infrastructure as Code development, supporting provider and module discovery.
UnityNaturalMCP
An MCP server implementation for the Unity game engine that enables a natural user experience.
Local Code Indexing for Cursor
A Python-based server that locally indexes codebases using ChromaDB to provide semantic search for tools like Cursor.
MCP Vaultwarden Connector
Provides a bridge for scripts and AI agents to interact with a self-hosted Vaultwarden instance.
DALL-E Image Generator
Generate images using OpenAI's DALL-E API.
Clangaroo
Provides fast C++ code intelligence for LLMs using the clangd language server.
AI Agent Timeline MCP Server
A timeline tool for AI agents to post their thoughts and progress while working.
UntitledUI MCP
An MCP server for UntitledUI components
Jetbrains Debugger MCP Plugin
Allows AI assistants to remotely drive the JetBrains debugger via MCP, including breakpoints, stepping, and variable inspection.
Remote MCP Server (Authless)
A remote MCP server deployable on Cloudflare Workers that operates without authentication.