Skip to main content
Glama
UberMorgott

nexusmods-mcp-server

by UberMorgott

Search Mods (GraphQL)

search_mods
Read-onlyIdempotent

Search Nexus Mods by mod name with wildcard support, optionally within a specific game. Returns game and mod IDs needed by other tools.

Instructions

Search mods by name (wildcard), optionally within one game, sorted. No API key needed. Returns game/modId pairs usable by every other tool.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
gameNoGame domain name, e.g. "skyrimspecialedition"
sortNorelevance
countNo
queryNoText to find in the mod name
authorNoExact author name
offsetNo
directionNoDESC
include_adultNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false. The description adds valuable behavior beyond those: no authentication is required, the results are game/modId pairs, and those pairs are directly consumable by other tools. It does not mention pagination or adult-content filtering, but the annotation coverage is strong and the added context is meaningful.

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

Conciseness5/5

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

Two sentences, zero filler. The core action is front-loaded, and the second sentence delivers the two most important operational facts: no API key required and output suitability for other tools. Every word earns its place.

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

Completeness3/5

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

For a read-only search endpoint, the description covers the essentials: wildcard search, optional game filter, sorting, no auth, and reusable output. But with no output schema and several undocumented parameters, the agent is left guessing about response structure beyond the ID pair and how pagination/adult parameters behave. It is adequate but not fully complete for a tool with 8 parameters.

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

Parameters2/5

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

Schema description coverage is only 38%, so the description must compensate for the many undocumented parameters. It addresses query via 'by name (wildcard)' and game via 'optionally within one game', but count, offset, direction, author, and include_adult are not explained anywhere in the description. The description adds some meaning but leaves most parameters unexplained.

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

Purpose4/5

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

The description states a specific verb and resource: search mods by name with wildcard support, optionally scoped to a game, with sorting. This clearly differentiates it from get_mod (single lookup) and list_mods (listing). However, it does not explicitly name a sibling tool or address the overlap with list_mods, so it stops just short of full differentiation.

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

Usage Guidelines3/5

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

The description implies when to use the tool: when you need to discover mods by name and obtain IDs for subsequent calls. It explicitly says no API key is needed, which is a useful access condition. However, it gives no explicit guidance on when not to use it or which sibling alternative to prefer, such as list_mods for browsing all mods or get_mod for a known ID.

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