mcpbeat

Search M2

azure/search-m2

Search for Java classes inside Maven dependencies in ~/.m2. Use when the user asks to locate classes or inspect JARs. Cross-reference pom.xml files in the current directory to resolve dependency names/versions.

569 tokens
context cost
the whole folder, loaded on every use
1
files
instructions only
0
copies elsewhere
how many repositories repackaged it
2566
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/Azure/azure-sdk-for-java --skill search-m2

The instruction itself

8 sections, as written by the author

Search Maven Local Repository (search-m2)

Use this skill to find which dependency JAR contains a class and to inspect JAR contents in ~/.m2/repository.

Preconditions

  • Work from the user’s current directory.
  • Look for pom.xml files in the current directory tree and use them to resolve dependency names and versions.

Key paths

  • Maven local repo: ~/.m2/repository
  • Dependency JAR path pattern:

~/.m2/repository/<groupId path>/<artifactId>/<version>/<artifactId>-<version>.jar

Steps

  • Discover pom files: run find . -name pom.xml from the current directory.
  • If multiple poms exist, prefer the closest one to the current directory or ask the user which project/module to use.
  • Extract dependency coordinates:
  • If the user provides a group/artifact, search the poms for that dependency and read its version.
  • If versions are defined via properties (e.g., ${foo.version}), resolve the property from the same pom (or parent if obvious).
  • Resolve the JAR path using the groupId/artifactId/version mapping above.
  • If the version is not found, list available versions in ~/.m2/repository/<groupId path>/<artifactId>/ and ask the user which to inspect.
  • Search for classes:
  • List classes: jar tf <jar> | rg '\.class$'
  • Find a specific class: jar tf <jar> | rg '<ClassName>(\.class)?$'
  • Inspect class details (if requested):
  • javap -classpath <jar> <fully.qualified.ClassName>

Useful commands

Find a class across all jars (fallback)

rg -g '*.jar' --files ~/.m2/repository | while read -r jar; do
  jar tf "$jar" | rg -q 'com/example/MyClass.class' && echo "$jar"
done

Resolve versions for a dependency

ls ~/.m2/repository/<groupId path>/<artifactId>/

Notes

  • If the user is vague, start by identifying the relevant pom.xml and extracting dependency coordinates.
  • If the dependency is transitive and not in the pom, check mvn -q -DskipTests dependency:tree (only if needed and the user agrees).

How to use it

Copy the folder

Take azure/search-m2 from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.