Claude Code is Anthropic's CLI tool for Claude. It supports MCP servers via the claude mcp add command or a .mcp.json project file.
The general form of claude mcp add is (see Claude Code MCP docs):
claude mcp add [options] <name> <commandOrUrl> [args...]
The server <name> comes first. For a STDIO server, pass any -e KEY=value options (repeatable) after the name, then --, then the launch command. The -- stops Claude Code from reparsing the server's own flags as its own options, and -e stops consuming tokens at the --:
claude mcp add <name> -e KEY=value -- <command> [args...]
For an HTTP server, no -- is needed — pass the URL with --transport http:
claude mcp add --transport http <name> <url>
# JAR claude mcp add solr-mcp \ -e SOLR_URL=http://localhost:8983/solr/ \ -- java -jar /absolute/path/to/solr-mcp-1.0.0-SNAPSHOT.jar # Docker (local image — build first with ./gradlew jibDockerBuild) claude mcp add solr-mcp \ -- docker run -i --rm -e SOLR_URL=http://host.docker.internal:8983/solr/ \ solr-mcp:latest
.mcp.jsonAdd to your project root:
JAR:
{ "mcpServers": { "solr-mcp": { "type": "stdio", "command": "java", "args": ["-jar", "/absolute/path/to/solr-mcp-1.0.0-SNAPSHOT.jar"], "env": { "SOLR_URL": "http://localhost:8983/solr/" } } } }
Docker (local image):
{ "mcpServers": { "solr-mcp": { "type": "stdio", "command": "docker", "args": ["run", "-i", "--rm", "-e", "SOLR_URL=http://host.docker.internal:8983/solr/", "solr-mcp:latest"] } } }
Linux users: add "--add-host=host.docker.internal:host-gateway" to the args array.
Start the server in HTTP mode first (PROFILES=http java -jar build/libs/solr-mcp-1.0.0-SNAPSHOT.jar, or PROFILES=http ./gradlew bootRun), then:
claude mcp add --transport http solr-mcp http://localhost:8080/mcp
.mcp.json{ "mcpServers": { "solr-mcp": { "type": "http", "url": "http://localhost:8080/mcp" } } }
Claude Code detects the OAuth2 challenge from the server and initiates the authorization flow automatically. The configuration is the same as unsecured HTTP.
See the HTTP security model for server-side OAuth2 setup.