关于 Clj Kondo
Clj Kondo 是基于 clj-kondo 的 MCP 服务,可检查 Clojure、ClojureScript 和 EDN 文件。编码 Agent 或其他 MCP 客户端可用它检查文件、目录或类路径。
主要功能
- 01检查 Clojure、ClojureScript 和 EDN
- 02分析文件、目录或类路径
- 03使用 clj-kondo 分析能力
- 04可指定配置目录
适用场景
- 01从 MCP 客户端检查编辑后的 Clojure 文件
- 02递归检查源代码目录
- 03检查项目类路径中的文件
MCP 相关
向 MCP 客户端提供 `lint_clojure` 工具,可接收文件、目录或类路径,并支持可选配置目录和严重级别。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
1收录的工具列表 · 更新于 3 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| file | string | 是 | 可以是:1) 文件的绝对路径,2) 目录路径(递归 lint 所有 .clj/.cljs/.cljc 文件),或 3) 类路径字符串(通过 `lein classpath` 或 `clojure -Spath` 获取) |
| level | enum | 否 | 可选的 lint 级别。默认情况下,所有 lint 结果均视为错误。设置为 "warning" 可改用警告级别。warning |
| configDir | string | 否 | 可选的 .clj-kondo 配置目录绝对路径(例如 /Users/name/project/.clj-kondo)。如果未提供,clj-kondo 将在当前目录及其父目录中查找 .clj-kondo 目录。 |
详细介绍
clj-kondo MCP 服务 
一个模型上下文协议(MCP)服务,为 Clojure/ClojureScript/EDN 文件提供 clj-kondo lint 功能。适用于没有内置 lint 功能的 Claude code 和桌面应用。你可以考虑编辑 CLAUDE.md,要求它在编辑后执行 lint。
功能
- 通过 MCP 工具调用对 Clojure 文件执行 lint
- 支持 clj-kondo 的所有分析功能
- 可选支持显式指定配置目录
安装
快速安装
npx clj-kondo-mcp
或配置 IDE
{
"mcpServers": {
"clj-kondo": {
"command": "npx",
"args": ["clj-kondo-mcp"],
"disabled": false,
"autoApprove": []
}
}
}
手动安装
npm install
- 构建服务:
npm run build
使用方法
运行服务
node build/index.js
MCP 工具调用
该服务提供一个工具:
lint_clojure - 对 Clojure/ClojureScript/EDN 内容执行 lint
参数:
{
"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
}
file 参数接受:
- 单个文件路径(例如 "/path/to/src/my_file.clj")
- 目录路径(例如 "/path/to/src")——将递归 lint 所有 .clj、.cljs 和 .cljc 文件
- classpath 字符串——将对 classpath 中的所有 Clojure 文件执行 lint
- 对于 Leiningen 项目:使用
lein classpath的输出 - 对于 deps.edn 项目:使用
clojure -Spath的输出
- 对于 Leiningen 项目:使用
注意:file 和 configDir 参数都必须是绝对路径,因为 MCP 服务作为独立进程运行。相对路径无法正常工作。
默认情况下,clj-kondo 会自动在当前目录及其父目录的 .clj-kondo 目录中查找配置。你可以通过指定 configDir 参数指向特定配置目录来覆盖此设置。
有关 clj-kondo 配置的更多信息,请参阅官方文档。
配置
添加到 MCP 设置文件中(对于 Cline,文件位于 ~/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": []
}
}
}
手动构建时,请使用:
{
"mcpServers": {
"clj-kondo": {
"command": "node",
"args": ["build/index.js"],
"disabled": false,
"autoApprove": []
}
}
}
构建
npm run build
监视模式
npm run dev
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。