Purpose
jsr-mcp is a Model Context Protocol (MCP) server for accessing JSR (JavaScript Registry). It enables MCP-capable LLM clients to directly query and operate the JSR registry, such as searching for packages, viewing package details, and managing scopes and the publishing process. The project is organized as a Deno workspace monorepo and contains two packages: @wyattjoh/jsr is the core library for accessing the JSR API, and @wyattjoh/jsr-mcp is the MCP server for LLM integration.
Main Capabilities
This MCP server provides 40 tools, covering the following areas:
- Package queries: search packages, get package details, get details for a specific version, list all versions, get package metadata, get dependencies, get package quality scores, find dependents.
- Package management (authentication required): create packages, update packages, delete packages, upload new versions, update versions (for example, yank).
- Scope management: get scope details, list packages in a scope, create scopes (authentication required), update scope settings (authentication required), delete scopes (authentication required).
- Members and invitations: list scope members, invite members (authentication required), update member roles (authentication required), remove members (authentication required), list pending invitations, delete scope invitations (authentication required), accept invitations (authentication required), decline invitations (authentication required).
- User information: get the authenticated user, get user scopes, get the user's membership in a scope, get the user's pending invitations, get user details, get user scopes.
- Registry information: list all registry packages, get registry statistics.
- Authorization flow: start the authorization flow (authentication required), get authorization details, approve authorization (authentication required), deny authorization (authentication required), exchange a code for a token (authentication required).
- Publish tasks: get publish task status.
Read operations do not require authentication; write operations require a valid JSR API token. The server only accesses JSR API endpoints and does not access the local file system except for reading environment variables.
Usage
Environment requirements: Deno 2.x or later; network access to the JSR API is required; a JSR API token is required for authenticated operations (optional).
Run from source:
- Clone the repository.
- Install dependencies:
deno cache packages/*/mod.ts - Run the server:
deno run --allow-net --allow-env packages/jsr-mcp/mod.ts
When used for Claude Desktop application integration, add the corresponding configuration to claude_desktop_config.json (the specific configuration content is not provided in the materials).
Applicable Scenarios
Suitable for developers who need to query JSR package information, check versions and dependencies, view quality scores, manage scopes and members, and perform publishing-related operations in LLM conversations. It can also be used to build automation or auxiliary tools around the JSR registry.
Limitations
- Requires Deno 2.x or later.
- Requires network access to the JSR API.
- Write operations must provide a valid JSR API token.
- The server only accesses JSR API endpoints and does not access the local file system except for reading environment variables.
- The materials do not provide specific Claude Desktop configuration examples, pricing, or fee information.