Browse and search JVM library source code by Maven coordinate
Project description
Jarscope
Browse and search JVM library source code by Maven coordinate.
Jarscope is an MCP server that gives coding agents fast, reliable access to JVM library APIs. Instead of guessing or searching the filesystem, agents can look up classes, functions, and usage patterns directly in a library's published source code.
Install
uvx jarscope
Configure
Claude Code
claude mcp add jarscope -- uvx jarscope
Claude Desktop / Cursor / etc.
Add to your MCP config:
{
"mcpServers": {
"jarscope": {
"command": "uvx",
"args": ["jarscope"]
}
}
}
Tools
jar_search
Search a library's source code for a regex pattern. Returns matching lines with surrounding context.
jar_search("org.jetbrains.kotlinx:kotlinx-serialization-json:1.6.0", "class Json")
jar_read
Read the full source of a specific file in a library.
jar_read("org.jetbrains.kotlinx:kotlinx-serialization-json:1.6.0", "commonMain/kotlinx/serialization/json/Json.kt")
jar_list
List files in a library's source JAR, optionally filtered by package path.
jar_list("org.jetbrains.kotlinx:kotlinx-serialization-json:1.6.0", prefix="commonMain/kotlinx/serialization/json")
How it works
All three tools take a Maven coordinate (groupId:artifactId:version), which agents can find in build.gradle.kts, pom.xml, or gradle/libs.versions.toml.
Jarscope resolves coordinates to source JARs by checking, in order:
- Gradle cache (
~/.gradle/caches/) - Maven local repo (
~/.m2/repository/) - Maven Central (downloaded and cached locally)
JARs are read directly as ZIP files — no extraction needed. Sources JARs are preferred; javadoc JARs are used as fallback.
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file jarscope-0.1.0.tar.gz.
File metadata
- Download URL: jarscope-0.1.0.tar.gz
- Upload date:
- Size: 10.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
82cf5f6d5e167560855113979e0b8969b3d0c1036ffa4d49a574edcd9f9366dc
|
|
| MD5 |
db6cfa62fc978965aba35871d725845d
|
|
| BLAKE2b-256 |
0ec2d21e531667d51667d4c3a22a5ddedfda7226f00a5837ec6fed1481edf6c5
|
File details
Details for the file jarscope-0.1.0-py3-none-any.whl.
File metadata
- Download URL: jarscope-0.1.0-py3-none-any.whl
- Upload date:
- Size: 9.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
77596a3b28fc5750b4547884d630c3378acd17b74a02b0636bf0367000c8102e
|
|
| MD5 |
aafe0d2b2d4eac4c1e02b6ca4d52de85
|
|
| BLAKE2b-256 |
4d4102fdf3aa8cc6e7c3c2ca560a852be6a5062a6cbd8b24182d75a316adceb4
|