-
-
Notifications
You must be signed in to change notification settings - Fork 54
Claude Code
While you can use these tools alongside Claude Code and other code assistants with their own tooling, we recommend trying the Clojure MCP tools independently first to experience their full capabilities.
See the README for more details.
undefined
. To work around this, you can cherry-pick a workaround which converts tool errors to MCP exceptions and allows Claude Code to see the error messages.
# Clone the official repo
git clone https://github.com/bhauman/clojure-mcp.git
# Cherry-pick the error message workaround
cd clojure-mcp
git remote add rads https://github.com/rads/clojure-mcp.git
git fetch rads
git cherry-pick fbdcc73
The following command registers the Clojure MCP server with claude
so it will connect to the nREPL in the current project. Change /path/to/clojure-mcp
to the directory where you cloned clojure-mcp
in the previous step.
claude mcp add clojure-mcp -- /bin/sh -c 'PORT=$(cat .nrepl-port); cd /path/to/clojure-mcp && clojure -X:mcp :port $PORT'
It's recommended to disable Claude Code's built-in tools when using the Clojure MCP server. This is possible using a project config:
/your/project/dir/.claude/settings.json
(project configuration)
{
"permissions": {
"allow": [],
"deny": [
"Agent",
"Bash",
"Edit",
"Glob",
"Grep",
"LS",
"MultiEdit",
"NotebookEdit",
"NotebookRead",
"Read",
"Task",
"TodoRead",
"TodoWrite",
"WebFetch",
"WebSearch",
"Write"
]
}
}
To use the Clojure MCP server, you need to start an nREPL for your project. If you don't already have a way to start an nREPL, there is an example :nrepl
alias in the README. Make sure the nREPL server is running before moving to the next step.
Run the claude
command in your project directory to start Claude Code and run the Clojure MCP server as a subprocess. Since it may take some time to start the MCP server and connect to the project's nREPL, you can check the status with the /mcp
command:
> /mcp
⎿ MCP Server Status
• clojure-mcp: connected