logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

ArtifactRepoQuery-Clojars-Tool

Interface for retrieving metadata concerning software components hosted on the Clojars artifact registry, which serves as a central repository for Clojure-based artifacts.

Author

ArtifactRepoQuery-Clojars-Tool logo

Bigsy

MIT License

Quick Info

GitHub GitHub Stars 5
NPM Weekly Downloads 0
Tools 1
Last Updated 2026-02-19

Tags

clojureclojarsapisrepository clojureclojure librariesclojars artifact

Clojars Artifact Repository Query Engine

NPM Package Version

This implementation operates as a Model Context Protocol (MCP) service endpoint, specialized in querying Clojars—the primary repository for Clojure ecosystem libraries and projects—for tooling integration with assistants like Cody, Claude Desktop, and Cline.

Clojars-MCP-Server Service Endpoint

Deployment Instructions

Execute the service directly via npx for immediate use:

npx clojars-deps-server

Alternatively, install system-wide:

npm install -g clojars-deps-server

Integration via Smithery

To facilitate automated configuration within Claude Desktop using Smithery:

npx -y @smithery/cli install clojars-deps-server --client claude

Manual Setup Procedure

  1. Obtain the source code repository:
git clone https://github.com/yourusername/clojars-deps-server.git
cd clojars-deps-server
  1. Install necessary Node.js dependencies:
npm install
  1. Compile the project source code:
npm run build
  1. Integrate the service path into your client configuration file:

For VSCode-based Claude extensions (check cline_mcp_settings.json, commonly found in ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/ on macOS):

{
  "mcpServers": {
    "clojars-deps-server": {
      "command": "node",
      "args": ["/path/to/clojars-deps-server/build/index.js"]
    }
  }
}

For the standalone Claude Desktop application (check claude_desktop_config.json, typically in ~/Library/Application Support/Claude/ on macOS):

{
  "mcpServers": {
    "clojars-deps-server": {
      "command": "node",
      "args": ["/path/to/clojars-deps-server/build/index.js"]
    }
  }
}

Once configured, the service will be automatically discovered by Claude upon launch and its functionalities will be accessible via the use_mcp_tool mechanism, as detailed in the system prompt under "Connected MCP Servers".

Capabilities

  • Retrieve the most recent published version for any specified Clojars library.
  • Validate the existence of a particular version identifier for a given dependency.
  • Fetch and return a chronological listing of version releases, with adjustable result count limits.
  • Deliver concise, targeted response payloads.
  • Seamless operational integration with the Claude assistant framework via MCP.

Operational Flow

Upon setup within Claude's environment, this service endpoint integrates into the LLM's available toolset. Claude invokes the appropriate function when dependency resolution tasks related to Clojure artifacts are identified. The mapping is established through: - Function names clearly indicating artifact repository lookups. - Tool descriptions explicitly referencing "Clojars dependency (Maven artifact)". - Input schemas requiring standard Clojars group/artifact notation (e.g., "group/artifact").

Exposed Remote Procedures:

get_clojars_latest_version

{
  "name": "get_clojars_latest_version",
  "description": "Obtain the most current released version of a Clojars artifact (Maven coordinate)",
  "inputSchema": {
    "type": "object",
    "properties": {
      "dependency": {
        "type": "string",
        "description": "Clojars identifier in the format \"group/artifact\" (e.g., \"metosin/reitit\")"
      }
    },
    "required": ["dependency"]
  }
}

check_clojars_version_exists

{
  "name": "check_clojars_version_exists",
  "description": "Determine if a specified version tag is present for a Clojars component",
  "inputSchema": {
    "type": "object",
    "properties": {
      "dependency": {
        "type": "string",
        "description": "Clojars identifier in the format \"group/artifact\" (e.g., \"metosin/reitit\")"
      },
      "version": {
        "type": "string",
        "description": "The version string to verify (e.g., \"0.7.2\")"
      }
    },
    "required": ["dependency", "version"]
  }
}

get_clojars_history

{
  "name": "get_clojars_history",
  "description": "Retrieve the chronological list of version releases for a Clojars artifact",
  "inputSchema": {
    "type": "object",
    "properties": {
      "dependency": {
        "type": "string",
        "description": "Clojars identifier in the format \"group/artifact\" (e.g., \"metosin/reitit\")"
      },
      "limit": {
        "type": "number",
        "description": "Maximum quantity of historical versions to return (default is 15, maximum allowed is 100)",
        "minimum": 1,
        "maximum": 100
      }
    },
    "required": ["dependency"]
  }
}

The design choices for function naming and explanatory text ensure high discoverability for Claude when dependency resolution queries related to the Clojure environment arise.

See Also

`