Skip to main content
Glama

Find a mod's id in the Modkeel lab

search_mods
Read-onlyIdempotent

Turn a mod's display name or part of its id into the exact mod id the other lab tools take, and see which mods the Modkeel lab has data on. Use it first when you only have a name ("Entity Culling", "Sodium") or are unsure of the id; skip it when you already have the id. To download a mod, call find_mod_download with its name instead: it finds the mod itself. Matching ignores case, spaces and punctuation; best match first, then the mods with more lab data. An empty query lists every mod the lab tested. Returns each mod's id, the Minecraft versions it was tested on and how many runs and pairs it has, plus the total number of matches. No match means the lab has no data on that mod, not that it is broken (get_mod_info still finds it on Modrinth by slug). mc keeps only mods with a run on that exact version; limit caps the list, and total says how many matched.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
mcNoMinecraft version to narrow the answer to, e.g. 1.21.1, 1.20.1 or 26.2. Omit it to get every version the lab ran; with it, only runs on exactly that version count.
limitNoHow many mods to return, 1 to 100. Default 25.
queryNoMod name or part of its id, e.g. "Entity Culling", "sod" or "create". Empty or omitted: list every mod the lab tested.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
mcNo
dataYesSnapshot date and license of the lab data; attribute when quoting.
modsYesBest match first.
queryYes
totalYesMatches before the limit.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / properties / mods / items / properties / id / description
      Previous value: -"Pass this to get_mod_info, get_mod_runs or check_mod_pair."New value: +"Pass this to the other tools as mod_id."
  2. Changed1 schema field changed
    • changedOutput schema / properties / mods / items / properties / id / description
      Previous value: -"Pass this to get_mod_runs or check_mod_pair."New value: +"Pass this to get_mod_info, get_mod_runs or check_mod_pair."
  3. Added

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, non-destructive and closed-world, yet the description still adds real behavior: case/space/punctuation-insensitive matching, ordering (best match first, then most lab data), empty-query listing everything, return contents, and the important no-match semantics (absence of lab data, not a broken mod). That last point is a genuine failure-mode disclosure an agent would otherwise misread.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Dense but front-loaded: the core purpose and the primary routing decision come first, then matching rules, then result shape, then parameter notes. All sentences carry information, though the final parameter recap sentence is somewhat redundant against the schema and could be trimmed.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 3-param, zero-required search tool with an output schema present, the description covers what an agent needs: purpose, routing, matching behavior, empty/no-match edge cases, and parameter effects. It even explains the return shape, which the output schema makes optional, so completeness is not in question.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds interpretation: mc counts only runs on that exact version, limit caps the list, and total reports how many matched regardless of limit. That clarifies the mc filtering semantics and the limit/total relationship beyond the schema text.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: turning a display name or partial id into the exact mod id other lab tools consume, and revealing which mods the lab has data on. It explicitly distinguishes itself from siblings find_mod_download and get_mod_info, so an agent can route without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit when-to-use trigger (only have a name or unsure of the id), an explicit when-to-skip rule (already have the id), and names two alternatives with their selecting conditions: find_mod_download for downloading, get_mod_info for Modrinth slug lookup. Nothing is left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources