game-dev-resource-mcp
This server is a license-aware Model Context Protocol (MCP) server that helps AI coding agents discover, evaluate, and safely install game-development resources.
Recommend resource stacks:
recommend_stackturns a game description into a multi-category stack with primary candidates, alternatives, gaps, and a license/risk summary.Search game assets:
find_game_assetssearches across supported providers (Poly Haven, Kenney, Quaternius) with ranked results and license filters;search_game_assetsqueries a curated local registry;search_live_assetssearches a single supported provider directly.Filter searches: apply filters based on commercial use, attribution, share-alike, engine, 2D/3D/audio/font/code, style, format, asset type, genre, and animation state.
List providers:
list_asset_providerslists supported asset providers and whether each operates as a live API or verified catalog.Manage asset files:
get_asset_filesretrieves official provider-hosted download links and file metadata;plan_asset_installplans a safe installation without writing to disk;install_asset_filesafely installs selected and verified files with path traversal protection, host allowlisting, size limits, and hash validation.Discover open source projects:
search_open_source_projectssearches GitHub for reusable game-development repositories;inspect_repositoryretrieves repository metadata and detected license.License management:
check_licenseclassifies licenses conservatively for commercial game use, and search/filtering can usecommercialOnly,allowAttribution, andallowShareAlikecriteria.Attribution generation:
generate_attributionproduces attribution entries for individual resources;generate_project_attributioncreates project-levelTHIRD_PARTY_ASSETS.mdandCREDITS.mdcontent.
Provides tools for searching GitHub for reusable game-development repositories and inspecting repository metadata and detected licenses.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@game-dev-resource-mcpFind commercially usable pixel vehicle assets, no share-alike."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
GameDev Resource MCP
A license-aware game-development resource search engine for AI coding agents.
GameDev Resource MCP gives Codex, Claude Code, Trae and other MCP-capable agents one place to search for game assets, reusable starter projects, and game-development code while keeping provenance, commercial-use rules, attribution requirements and bundled-asset risks visible.
It does not host or relicense third-party assets. It helps an agent find relevant resources, understand what can safely be reused, and keep source/license evidence attached to the recommendation.
What it does
Need | MCP tool | Result |
“Find everything I need for this game idea” |
| Starter/project + art + audio + font + code stack, alternatives, gaps and license summary |
“Find commercially usable low-poly 3D enemies” |
| Ranked cross-provider results with semantic fallback and license filters |
“Find a reusable Godot/Phaser/Raylib/Unity/Unreal project” |
| Project candidates with explicit reuse scope and bundled-asset status |
“Can I actually build on this project?” |
| Keep/replace/review actions, license obligations and unresolved resource needs |
“Where did this asset come from?” | search + attribution tools | Creator/source/license metadata and project-level credits |
“Install the selected file safely” |
| Narrow allowlisted acquisition with path/size/hash checks where supported |
The project currently integrates 15 providers across 2D, 3D, audio, fonts, icons, starter projects and reusable code.
Related MCP server: mcdev-mcp
Why this exists
Game-development resources are unusually easy for coding agents to misuse. These statements are not equivalent:
“free”;
“open source”;
“downloadable”;
“commercial use allowed”;
“redistribution allowed”;
“the repository is MIT licensed”;
“every bundled image, sound, font and dependency is also cleared for reuse.”
GameDev Resource MCP keeps those distinctions explicit. Search relevance can broaden through semantic fallback, but hard constraints such as commercial-use policy, attribution/share-alike policy, dimension, engine-specific code scope and project reuse scope remain hard filters.
One-command Codex setup
Requires Node.js 20+, npm and Git.
codex mcp add game-dev-resource-mcp -- npx -y github:dsaewkfiush03-debug/game-dev-resource-mcpVerify the server is registered:
codex mcp listThat is the recommended install path. The package builds automatically when npm installs it from GitHub, so users do not need to clone the repository or manage an absolute dist/index.js path.
If you already expose a GITHUB_TOKEN, forward it for higher GitHub API limits:
codex mcp add game-dev-resource-mcp --env GITHUB_TOKEN="$GITHUB_TOKEN" -- npx -y github:dsaewkfiush03-debug/game-dev-resource-mcpGITHUB_TOKEN is optional. Never commit tokens or API keys.
Generic MCP client configuration
For clients that accept a JSON-style STDIO server configuration:
{
"mcpServers": {
"game-dev-resource-mcp": {
"command": "npx",
"args": ["-y", "github:dsaewkfiush03-debug/game-dev-resource-mcp"]
}
}
}Codex config, Claude Code, Trae and manual source-install examples are in docs/client-setup.md.
Try these prompts
After adding the MCP server, ask your coding agent for something concrete:
Find commercially usable low-poly 3D turret, enemy and environment assets.
Prefer CC0 where possible and explain any attribution obligations.I am building a Godot 2D survival game with inventory, combat, save/load,
UI, sound and music. Recommend a starter/resource stack and identify gaps.Find reusable Raylib project bases for a 2D action game.
Do not assume the repository license clears bundled media.Find a reusable project for my game, then produce an adoption plan showing
what I can keep, what should be replaced, and what still needs verification.Recommended agent workflow
For a whole game or large feature, start from the strongest reusable base that can be verified instead of assembling everything from zero:
user game description
↓
recommend_stack / find_reusable_projects
↓
choose project candidate
↓
plan_project_adoption
↓
keep / replace / review actions
↓
license obligations + resource gaps
↓
find_game_assets for unresolved slots
↓
plan_asset_install / install_asset_file when supported
↓
engine-specific implementation by the coding agent
↓
generate_project_attributionFor one known asset/code need, call find_game_assets directly.
Search quality
The search layer is designed for coding-agent queries rather than exact catalog keywords.
Bounded semantic fallback expands game-development concepts without removing hard constraints.
Provider capability routing avoids calling sources that cannot satisfy explicit dimension/engine needs.
Multi-concept ranking prefers candidates that cover more of the actual request instead of broad but weak matches.
Diagnostics expose attempted queries, fallback level, provider pruning and suggested alternatives instead of returning an opaque zero-result response.
Real regressions protect practical queries such as UrhoX 3D tower-defense searches, cyberpunk low-poly asset ranking and medieval environment ranking.
Reusable-project safety
A repository license does not automatically clear bundled art, audio, fonts, logos, sample media or dependencies.
GameDev Resource MCP models project reuse separately:
| Meaning |
| Maintained evidence supports project-wide starter use under the stated obligations |
| Reuse code/structure; bundled media must be replaced or independently verified |
| Study the implementation; direct copying remains blocked pending review |
| Reuse is scoped to media/assets rather than a project skeleton |
And bundled content separately:
| Meaning |
| No material bundled asset set needs separate clearance for intended starter use |
| Maintained evidence covers relevant project/demo content under the same license |
| Components have explicit separate licenses that must be followed |
| Bundled media is not sufficiently established for blanket reuse |
An agent must never upgrade code-only or reference-only to whole-project using model judgment alone.
See docs/project-reuse.md and docs/project-adoption.md.
MCP tools
Tool | Purpose |
| Turn a game description into a starter + media + code stack with license summary and gaps |
| Preferred targeted cross-provider search with relevance, license and reuse filters |
| Find starter/complete-game references and expose reuse scope plus bundled-asset status |
| Turn one selected project into a non-mutating adoption manifest |
| Benchmark required-slot/depth-3 coverage and rank weak resource categories |
| Search the broader source registry |
| Search one provider directly |
| Resolve official provider-hosted file metadata where available |
| Plan a safe installation without writing to disk |
| Download one explicitly selected verified file into a local project |
| List provider modes and capability metadata |
| Audit freshness of maintained verified catalogs |
| Compatibility tool for targeted GitHub repository search |
| Inspect repository metadata and detected license |
| Classify common licenses conservatively |
| Generate attribution for one resource |
| Generate project-level third-party asset and credits manifests |
Providers
Provider | Mode | Typical content | License/reuse posture | Auto-install |
Poly Haven | Live API | HDRIs, PBR textures, 3D models | CC0 | Yes, allowlisted official files |
ambientCG | Live API | PBR materials, HDRIs, terrain, decals, atlases, 3D models | CC0 | No |
Openverse | Live API | Open images and audio | Per-item CC/public-domain metadata | No |
Godot Asset Library | Live API | Godot addons, tools, projects, shaders | Per-item license | No |
GitHub Open-Source Code | Live API | Inventory, combat, networking, AI, save, procedural and other code | Detected repository SPDX; bundled components remain separate | No |
KayKit | Live official index | CC0 3D packs | Official CC0 pack repositories | No |
Game Icons | Live official index | Individual game/UI SVG icons | CC BY 3.0 + creator attribution | Yes, exact official-repo SVG only |
Tabler Icons | Live official index | Individual outline/filled SVG icons | MIT | Yes, exact official-repo SVG only |
Kenney | Verified catalog | 60+ 2D/3D/UI/VFX/audio packs | CC0 | No |
Quaternius | Verified catalog | 35+ structured 3D packs | CC0 | No |
Google Fonts | Verified catalog | Game-oriented fonts including CJK | SIL OFL 1.1 per family | No |
Godot demos | Verified catalog | Concrete 2D/3D games and system demos | Maintained entries | No |
Phaser starters | Verified catalog | Official web-game templates + | Conservatively | No |
Raylib projects | Verified catalog | Official game template + complete-game source references | Template can be whole-project; game references remain source-specific | No |
Verified Community Starters | Verified catalog | Unity and Unreal community templates | Conservatively | No |
The broader discovery registry also contains marketplaces and community libraries such as OpenGameArt, itch.io, Sketchfab, Fab, Unity Asset Store and Freesound. Those are discovery sources, not blanket commercial-use approvals.
License model
Default cross-provider filtering is conservative:
commercialOnly = true
allowAttribution = true
allowShareAlike = falseThe project tracks commercial use, modification, redistribution, attribution, share-alike, creator provenance, source/license URLs, reuseScope, bundledAssetStatus, component licenses and service-level obligations separately.
Recognized licenses include CC0, Public Domain Mark, MIT, MIT/Apache dual licensing, BSD, Apache-2.0, Zlib, Boost, CC BY, CC BY-SA, GPL/LGPL families, OpenGameArt attribution licenses and SIL OFL 1.1. Unknown, custom, missing or non-commercial licenses fail closed to manual review/rejection.
Search/ranking signals never override license filtering.
Coverage benchmark
The maintained benchmark contains 39 representative game scenarios across Godot, Phaser, Raylib, Unity, Unreal and engine-agnostic concepts.
The timestamped V1.13 full run on 2026-08-20 reported:
39/39 complete scenarios;
357/357 required slots covered (100%);
353/357 required slots with at least three candidates (98.9% depth-3);
0 unsupported required slots;
0 provider errors.
V1.14 then specifically closed the remaining shallow Unreal starter-depth gap with an accurately modeled CC0 entry instead of relabeling it as MIT.
Benchmark scores measure retrieval health. They do not override license rules or prove semantic relevance/engine compatibility by themselves.
See docs/coverage-benchmark.md.
Safe installation boundary
Automatic acquisition is intentionally narrow. Current allowlisted paths are:
Poly Haven verified provider files;
individual Game Icons SVGs from
game-icons/icons;individual Tabler SVGs from
tabler/tabler-icons/icons.
install_asset_file validates provider-specific hosts/paths, blocks path traversal, rejects pre-existing symlink/junction destination components, validates redirects, enforces size/hash checks where available, does not overwrite unless explicitly requested, and never executes downloaded content, extracts archives, runs package managers or automatically clones third-party repositories.
See docs/installation.md.
Attribution
After selecting resources, generate_project_attribution can generate project-level content for:
THIRD_PARTY_ASSETS.md
CREDITS.mdPreserve creator and source/license metadata when passing adopted resources into the attribution workflow.
Manual source install
If you prefer a pinned local checkout instead of the one-command GitHub runner:
git clone https://github.com/dsaewkfiush03-debug/game-dev-resource-mcp.git
cd game-dev-resource-mcp
npm ci
npm run build
node dist/index.jsThen point your MCP client at the absolute path to dist/index.js.
Development
npm ci
npm run validateCI validates Node.js 20 and 22, packs the npm tarball, installs it into a clean temporary project and smoke-starts the installed MCP binary.
Design principles
Correctness over coverage.
Registry first; asset hosting last.
Primary-source licensing evidence over AI inference.
Commercial use and redistribution are separate questions.
Repository code licensing and whole-project/bundled-media clearance are separate questions.
Adoption planning is separate from project mutation or code execution.
Exact project paths require explicit maintained evidence; never invent directory structure.
Unknown rights fail closed.
Recommendation and adoption reuse the same conservative metadata/license boundaries.
code-only/reference-onlymust never be silently upgraded towhole-project.Shared download/CDN hosts require provider-specific path restrictions, not host-only trust.
See AGENTS.md and CONTRIBUTING.md.
Scope and limitations
This project is a resource discovery, evaluation and adoption-planning layer. It deliberately does not become an engine asset-conversion/import platform. The coding agent remains responsible for integrating selected resources into the target project.
Some sources expose only canonical links because a stable safe acquisition API is unavailable or service terms are unsuitable for automated commercial workflows.
The project provides technical metadata and conservative automated classification, not legal advice. Before shipping a commercial game, verify the original license text and provenance of every incorporated resource.
Release notes
See RELEASE_NOTES.md.
Contributing
Provider fixes, search-quality regressions, license-evidence improvements and reproducible real-agent failure cases are especially useful. See CONTRIBUTING.md.
If the project helps your coding-agent workflow, starring the repository makes it easier for other developers to discover.
License
Project source code is MIT licensed. Third-party resources discovered through this project retain their original licenses.
Available Tools
9 toolscheck_licenseB
Classify a known license using conservative game-commercial-use rules.
| Name | Required | Description | Default |
|---|---|---|---|
| license | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description must fully disclose behavior. It mentions the conservative nature of the rules but fails to state what the output is (e.g., allowed/denied, risk level), how unknown licenses are handled, or what exactly 'known license' means. This leaves significant behavioral aspects undisclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence that immediately communicates the tool's core function without unnecessary words. It is appropriately sized for the tool's simplicity and front-loads the essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite the tool's low complexity, the description is incomplete in context. With no output schema or annotations, the description should explain return values, edge cases (e.g., unknown licenses), and how the 'conservative' rules affect classification. The current description leaves these operational details unspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has one required string parameter 'license' with no description (0% schema coverage). The description only mentions 'a known license', which implies the input is a license identifier but does not clarify the expected format (e.g., SPDX ID, full name) or provide examples. The description does not adequately compensate for the missing schema documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Classify a known license using conservative game-commercial-use rules' clearly states the verb (classify), the resource (license), and the specific criteria (game-commercial-use rules). It distinguishes itself from sibling tools like search_open_source_projects or generate_attribution by focusing on license classification for a particular use case.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 classify a license under game-commercial rules) but does not explicitly mention alternatives, exclusions, or a preferred context. It is not devoid of guidance, but it lacks clear differentiation from sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_game_assetsA
Search all supported asset providers at once, apply commercial/license filters, and return ranked results with explainable match reasons. This is the preferred tool when the user describes the asset they need without naming a source site.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | Yes | ||
| providers | No | ||
| categories | No | ||
| commercialOnly | No | ||
| allowShareAlike | No | ||
| allowAttribution | No | ||
| perProviderLimit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It adds context like commercial/license filters and explainable match reasons, but doesn't cover side effects, rate limits, pagination, or authentication. The read-only nature is implied but not explicit, and there's no mention of how results are ranked or what the response format is.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no fluff. The first sentence states the core function, and the second gives usage context. Every word earns its place, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (8 parameters, no output schema, no annotations), the description covers the primary purpose and usage context but leaves out details about return format, ranking explanation, pagination, and parameter specifics. It's adequate for a basic understanding but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It hints at 'commercial/license filters' (mapping to commercialOnly, allowShareAlike, allowAttribution) and 'all supported asset providers' (mapping to providers), but it fails to explain key parameters like limit, perProviderLimit, categories, and query. For an 8-parameter tool, this is insufficient.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it searches across all supported asset providers, applies filters, and returns ranked results. It further differentiates itself from sibling tools by noting it's the preferred tool when the user doesn't name a source site, which distinguishes it from provider-specific search tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear use case: 'preferred when the user describes the asset they need without naming a source site.' This implies when a source is named, other tools are more appropriate, but it doesn't explicitly name alternatives or state exclusions, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_attributionB
Generate a conservative attribution/CREDITS entry for a resource after its license has been identified.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| author | No | ||
| license | Yes | ||
| modified | No | ||
| sourceUrl | Yes | ||
| licenseUrl | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It only says 'conservative attribution/CREDITS entry', which hints at a cautious approach, but does not state whether this writes/modifies files, what permissions are needed, whether it is reversible, or what the output format is.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The entire description is one focused sentence, action-first, with no filler or repetition. It earns every word and immediately communicates the tool's core function.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While purpose and timing are clear, the missing behavioral and parameter information leaves significant gaps. Without annotations or an output schema, the description should provide more detail about return values, side effects, and parameter usage to be fully actionable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description provides no parameter-level details. It references 'a resource' generically without mapping to the actual parameters (name, sourceUrl, license, etc.) or explaining their roles, leaving the agent to rely solely on parameter names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Generate') with a clear object (attribution/CREDITS entry) and a temporal condition ('after its license has been identified'). This clearly distinguishes it from sibling search, inspection, and license-checking tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'after its license has been identified' provides explicit sequencing guidance, implying this tool should be used only after license identification. It does not name alternatives or exclusions, but the timing context is clear and useful.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_asset_filesA
Return official provider-hosted download links and file metadata for a selected asset without mirroring it.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| format | No | ||
| assetId | Yes | ||
| provider | No | polyhaven | |
| resolution | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of disclosing behavior. It states that the tool 'returns' links and metadata, implying a read-only operation, and clarifies it does not mirror the asset. However, it does not disclose potential side effects, authentication requirements, rate limits, or error handling. The transparency is adequate for a simple retrieval but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence (14 words), front-loaded with the verb 'Return' and immediately stating the object. Every word adds value: 'official provider-hosted' specifies source, 'for a selected asset' indicates prerequisite, and 'without mirroring it' clarifies behavior. No redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 5 parameters, no output schema, and no annotations, the description is incomplete. It does not explain what 'file metadata' includes, what format/resolution options are available, how limit works, or what the response structure looks like. The high-level description is insufficient for an agent to confidently invoke the tool with correct parameter values and interpret the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 5 parameters (assetId, limit, format, provider, resolution) with 0% schema description coverage. The description mentions 'file metadata' and 'download links' but does not explain the meaning or usage of any parameter. It fails to compensate for the lack of schema descriptions, leaving the agent to infer parameter semantics from names alone. This is a significant gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Return official provider-hosted download links and file metadata for a selected asset without mirroring it.' It identifies the specific verb (Return), the resource (download links and metadata), and the scope (selected asset), distinguishing it from sibling tools like search_game_assets or list_asset_providers. The additional qualifier 'without mirroring it' adds a semantic boundary that prevents confusion with potential download/copy operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly state when to use this tool versus alternatives, but it implies a workflow: 'for a selected asset' suggests it follows an asset selection step (likely from a search tool). There is no mention of exclusions or alternatives, so the usage context is implied rather than clearly articulated. This meets the minimum viable standard but lacks explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
inspect_repositoryA
Inspect a GitHub repository's public metadata and detected license. Accepts owner/name.
| Name | Required | Description | Default |
|---|---|---|---|
| repository | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must convey behavioral traits. It indicates 'public metadata', implying a read-only operation, but does not disclose error behavior, rate limits, or what happens if the repository does not exist. It also doesn't clarify what 'detected license' means or how detection works, leaving uncertainty for the agent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that directly states the tool's purpose and input format. There is no filler or repetition, making it highly concise and easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and no output schema, the description covers the essentials: what the tool returns (public metadata and license) and the input format. It could be improved by mentioning the read-only nature or typical use cases, but given the simplicity, it is reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage, but the description mentions 'Accepts owner/name', which clarifies the expected format for the repository parameter. This adds meaning beyond the schema's regex pattern. However, it doesn't explain the exact pattern or edge cases (e.g., leading/trailing whitespace), so it partially compensates.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: inspecting a GitHub repository's public metadata and detected license. The verb 'inspect' is specific, and the resource (GitHub repository) is explicit, distinguishing it from sibling tools like check_license that focus solely on license checking.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use it (when you need repository metadata and license) but does not explicitly discuss alternatives or exclusions. With sibling tools like check_license available, explicit guidance on choosing between them would be beneficial, but the context is clear enough for a basic use case.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_asset_providersA
List supported asset providers and whether each is a live API or verified catalog.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It adds context about output (classification of providers), but does not state whether the list is static/dynamic, if any network calls occur, or authentication needs. At least it does not contradict anything.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted words or filler. It front-loads the verb and resource and packs useful categorization info into the remainder.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter listing tool with no output schema, the description covers the essential purpose and distinguishing output attribute. It could mention the return format more explicitly, but the core is clear and sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema coverage is 100%, so the description has nothing to add. Baseline 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource ('List supported asset providers') and adds clarifier ('whether each is a live API or verified catalog'). It clearly distinguishes from sibling search tools by focusing on enumeration rather than searching.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives like search_live_assets or find_game_assets. The use case is only implied by the word 'list', but no explicit context or exclusions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_game_assetsC
Search the local registry of game-development resource sources.
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | ||
| query | No | ||
| commercialOnly | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only adds the 'local registry' detail, implying an offline search, but does not disclose return format, limitations, or any side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence with no redundant wording. It is extremely concise and gets the core purpose across immediately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of annotations and output schema, the description leaves significant gaps: it does not explain parameter semantics, result format, or how to construct an effective search. This is insufficient for a multi-parameter search tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema shows three parameters (tags, query, commercialOnly) with 0% description coverage. The description does not explain how these parameters interact or what each one filters, leaving the agent to infer entirely from their names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Search the local registry of game-development resource sources,' giving a specific verb and resource. The 'local registry' qualifier effectively distinguishes it from sibling tools like 'search_live_assets'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as 'search_live_assets' or 'find_game_assets'. The description does not mention exclusions, prerequisites, or a preferred context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_live_assetsA
Search one supported asset provider. Providers may be live APIs or maintained verified catalogs; results preserve source and license provenance.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | No | ||
| provider | No | polyhaven | |
| categories | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden. It discloses that providers may be live APIs or curated catalogs and that results preserve source and license provenance, adding useful context. But it omits details like rate limits, error behavior, or whether any side effects exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences, front-loaded with the primary action, and contains no redundant information. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 4 parameters, no output schema, and no annotations, the description is too brief. It covers purpose and provenance but lacks return format, parameter semantics, and usage nuances, leaving an agent with significant gaps for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It only hints at the provider parameter ('one supported asset provider') and does not explain limit, query, or categories. This adds minimal value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description specifies the action 'Search' and the resource 'one supported asset provider', adding context about live APIs/verified catalogs and provenance. This clearly distinguishes it from sibling search tools like search_game_assets and search_open_source_projects.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It states the tool searches a single provider, implying the user must specify one provider, and the provider enum reinforces this. However, it does not explicitly mention when to use this tool over alternatives like search_game_assets or find_game_assets.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_open_source_projectsB
Search GitHub repositories for reusable game-development code. Inspect the explicit repository license before reuse.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | Yes | ||
| language | No | ||
| minStars | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It only advises the user to inspect the license before reuse, which is a human action, not a tool behavior. It does not disclose search sorting, result format, return values, or any limitations of the tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences. The first front-loads the core purpose, and the second adds a relevant license-reminder warning. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and four undocumented parameters, this description is insufficient. It doesn't explain return values or parameter semantics, and the license advice doesn't compensate for the missing contextual information. The tool likely pairs with siblings like inspect_repository and check_license, but that relationship is not mentioned.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description provides no explanation of the query, limit, language, or minStars parameters. With no parameter semantics in the description, users must infer or experiment with the meaning of each field, which is inadequate for a 4-parameter tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (search) and resource (GitHub repositories) with a specific scope (game-development code), distinguishing it from asset-focused sibling tools like search_game_assets. The verb 'search' is specific and the resource is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies a clear usage context: searching for reusable game-development code. It doesn't explicitly state when not to use it or name alternative tools, but the purpose is distinct enough that the context is clear. The license warning also provides a practical usage guideline.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Most tools have clearly distinct purposes, but there is some overlap between search_game_assets and find_game_assets, and between check_license and inspect_repository. Descriptions help resolve these, but the boundaries could be sharper.
All tool names follow a consistent verb_noun pattern (e.g., search_open_source_projects, check_license, get_asset_files). No mixed conventions or vague verbs.
9 tools is well-scoped for a game development resource server. Each tool covers a distinct step in the workflow without redundancy or bloat.
The tool set covers the full lifecycle: searching for code and assets, inspecting licenses, retrieving file links, listing providers, and generating attribution. No significant gaps for the stated purpose.
Maintenance
Related MCP Connectors
Capability registry for the agentic economy. Semantic search over verified MCP server listings.
An MCP server that gives your AI access to the source code and docs of all public github repos
Generate game-ready 3D models, textures, and audio from natural language, over MCP.
Personal MCP server for humans who create. Proof of authorship, license control.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceLocal MCP server that gives AI agents 44 engine tools to build, run, and debug real 2D and 3D games through conversation.MIT
- AlicenseAqualityAmaintenanceAn MCP server that empowers AI coding agents to work effectively with Minecraft mod development, providing static analysis of decompiled source code and runtime interaction with a running Minecraft instance.314213MIT
- AlicenseNot gradedqualityAmaintenanceAn AI-native game engine MCP server that enables AI agents to create, modify, and run games using 53 tools for scene creation, physics, audio, 3D rendering, and AI-generated images and music.1MIT

GitHitsofficial
AlicenseNot gradedqualityAmaintenanceEnables AI coding agents to search and access open-source code, documentation, and package information via a local MCP server.3,79090Apache 2.0
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/dsaewkfiush03-debug/game-dev-resource-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server