Maven Central Scraper
Search Maven Central packages or list version-history rows through the official Maven Central Solr JSON API, returning normalized JVM coordinates, package URLs, latest versions, packaging types, version counts, repository IDs, timestamps, file extensions, and tags.
Workspace
Configure
Inputs stay here while results become exportable artifacts.
Start from an example
Results
Preview, inspect, copy, or export the complete output.
Your result will become an artifact
Run the tool to inspect structured rows, raw JSON, execution details, and downloadable JSON, CSV, and Markdown files.
Overview
Maven Central Scraper gives agents and developer tooling a structured route into the public JVM package index. Search by keyword, Maven group ID, artifact ID, packaging type, classifier, or SHA-1 checksum, or list recent version rows for one exact package. The tool normalizes group IDs, artifact IDs, coordinates, package URLs, latest versions, packaging labels, version counts, repository IDs, last-updated timestamps, file extensions, tags, version-specific URLs, POM URLs, and JAR URLs when available. It is designed for dependency discovery, Java and Kotlin ecosystem research, software supply-chain inventory, SBOM enrichment, stale dependency checks, package recommendation systems, and agent-readable JVM package context.
Last validated: Jul 4, 2026
Input
mode"search" | "versions"default: "search"search = package search; versions = recent version rows for one exact group_id and artifact_id.
sha1stringOptional SHA-1 checksum lookup. When supplied, other search filters are ignored.
limitintegerdefault: 10Maximum package or version rows to return.
querystringKeyword query for package search, such as spring, jackson, logging, kafka, or junit.
group_idstringOptional Maven group ID filter, such as org.springframework.boot or com.fasterxml.jackson.core.
packagingstringOptional packaging filter such as jar, pom, aar, war, or bundle.
classifierstringOptional classifier filter such as sources or javadoc.
artifact_idstringOptional Maven artifact ID filter, such as spring-boot-starter-web or jackson-databind.
Output
modestringrequiredMode used for this run
countintegerrequiredNumber of package or version rows returned
querystringSolr query used
group_idstringGroup ID filter used
versionsobject[]Version-history rows for one artifact
artifactsobject[]Package search rows
source_urlstringrequiredMaven Central Solr JSON URL fetched
artifact_idstringArtifact ID filter used
total_matchesintegerTotal matching rows reported by Maven Central
Examples
spring-search
{
"mode": "search",
"limit": 3,
"query": "spring",
"group_id": "org.springframework"
}jackson-versions
{
"mode": "versions",
"limit": 3,
"group_id": "com.fasterxml.jackson.core",
"artifact_id": "jackson-databind"
}Use cases
FAQ
Does Maven Central Scraper require an API key?
No. Version 0.1 uses Maven Central's public Solr search API through Better Fetch and only returns package metadata that is publicly visible.
Can it list versions for one artifact?
Yes. Use versions mode with group_id and artifact_id to fetch bounded version-history rows from the Maven Central gav core.
Does it download package files or inspect dependencies?
No. It returns metadata, package URLs, and direct POM or JAR URLs when those can be derived. It does not download artifacts, parse POM dependency graphs, or scan binaries.
Use it anywhere
MCP (Claude, ChatGPT, Codex)
# After connecting https://betterfetch.co/api/mcp, ask your AI to:
1. Call search_tools for "Maven Central Scraper"
2. Call run_tool with:
name: "maven_central_scraper"
input: {"mode":"search","limit":3,"query":"spring","group_id":"org.springframework"}REST
curl -sS -X POST "https://betterfetch.co/api/tools/maven_central_scraper/run" \
-H "Authorization: Bearer bf_your_key_here" \
-H "Content-Type: application/json" \
-d '{"input": {"mode":"search","limit":3,"query":"spring","group_id":"org.springframework"}}'Run locally
git clone https://github.com/better-fetch/tools/tree/main/tools/maven-central-scraper && cd maven-central-scraper && npm i
BETTER_FETCH_API_KEY=bf_your_key_here npx bf-tool run --input '{"mode":"search","limit":3,"query":"spring","group_id":"org.springframework"}'