GameDev.net
Search and cite GameDev.net forums, tutorials, postmortems, and game-industry news.
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"mcp": {
"url": "https://gamedev.net/mcp/"
}
}
}Puntos de conexión remotos
https://gamedev.net/mcp/streamable-httpQué puede hacer
Inventario de herramientas
Herramientas (10)
🟢search_site(query, content_types, sort, page, per_page)
Unified full-text search across all public GameDev.net content — forum discussions, tutorials, blogs, projects, portfolios, and game-industry news. Filter to specific kinds with content_types (e.g. ["forum_topic","forum_post"] for forums, or ["news","news_item"] for news) and order by relevance or date. Returns titles, URLs, excerpts, authors, and ids for follow-up with get_content.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Search query"
},
"content_types": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional filter: forum_topic, forum_post, blog_entry, tutorial, project, portfolio, shader_project, news, news_item, answer_page, thread_digest"
},
"sort": {
"type": "string",
"enum": [
"relevance",
"date"
],
"default": "relevance",
"description": "Order results by relevance (default) or recency"
},
"page": {
"type": "integer",
"minimum": 1,
"default": 1
},
"per_page": {
"type": "integer",
"minimum": 1,
"maximum": 25,
"default": 10
}
},
"required": [
"query"
]
}🟢get_thread(topic_id, max_posts)
Fetch one GameDev.net forum thread with its posts (plain text), including which reply is the accepted answer.
Esquema de entrada
{
"type": "object",
"properties": {
"topic_id": {
"type": "integer",
"description": "Forum topic ID"
},
"max_posts": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"default": 20
}
},
"required": [
"topic_id"
]
}🟢get_content(content_type, id)
Fetch the full public text of a specific item (tutorial, blog, news, project, portfolio, ShaderLab project, forum topic, canonical answer, or thread digest) using the content_type + id from a search result. Use this to ground deeply after a search. For news_item (aggregated news) this returns GameDev.net's own AI summary and enrichment with a citation link, not the source's full article text.
Esquema de entrada
{
"type": "object",
"properties": {
"content_type": {
"type": "string",
"description": "content_type from a search result"
},
"id": {
"type": "integer",
"description": "id from a search result"
}
},
"required": [
"content_type",
"id"
]
}🟢list_recent(content_type, limit)
List the most recent GameDev.net content of a given kind. Useful for "what is new" / roundup queries. Includes the curated canonical answers and "best of" thread digests.
Esquema de entrada
{
"type": "object",
"properties": {
"content_type": {
"type": "string",
"enum": [
"answers",
"blogs",
"digests",
"forums",
"news",
"portfolios",
"projects",
"shaders",
"tutorials"
],
"description": "Kind of content to list"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 25,
"default": 10
}
},
"required": [
"content_type"
]
}🟢search_shaders(query, runtime, topics, difficulty, licenses, ...)
Search public, published ShaderLab projects with structured runtime, topic, difficulty, license, and explanation filters.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"type": "string",
"maxLength": 100,
"description": "Optional title, description, author, or tag search text."
},
"runtime": {
"type": "string",
"enum": [
"glsl",
"webgpu",
"webgpu_compute"
]
},
"topics": {
"type": "array",
"items": {
"type": "string"
},
"description": "Curated slugs returned by list_shader_topics; matches confirmed techniques or equivalent author tags."
},
"difficulty": {
"type": "string",
"enum": [
"beginner",
"intermediate",
"advanced"
]
},
"licenses": {
"type": "array",
"description": "Only projects using one of these license keys.",
"items": {
"type": "string",
"enum": [
"cc-by-nc-sa-3.0",
"cc-by-4.0",
"cc-by-sa-4.0",
"cc0",
"mit",
"all-rights-reserved"
]
}
},
"explained_only": {
"type": "boolean",
"default": false,
"description": "Only projects with annotations for the current revision."
},
"sort": {
"type": "string",
"enum": [
"relevance",
"new",
"top"
],
"default": "relevance",
"description": "Relevance for text queries, publication recency, or all-time engagement."
},
"page": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 1
},
"per_page": {
"type": "integer",
"minimum": 1,
"maximum": 25,
"default": 10
}
}
}🟢get_shader_project(project_id, max_source_chars)
Fetch one public, published ShaderLab project as structured passes, channel bindings, parameters, annotations, provenance, and confirmed techniques. Source defaults to 20,000 characters and can be bounded up to 100,000.
Esquema de entrada
{
"type": "object",
"properties": {
"project_id": {
"type": "integer",
"description": "ShaderLab project id"
},
"max_source_chars": {
"type": "integer",
"minimum": 0,
"maximum": 100000,
"default": 20000,
"description": "Maximum source characters across all passes; 0 returns pass metadata without source."
}
},
"required": [
"project_id"
]
}🟢list_shader_topics(include_counts, include_examples)
List the human-curated ShaderLab topic taxonomy with optional public project counts and representative examples.
Esquema de entrada
{
"type": "object",
"properties": {
"include_counts": {
"type": "boolean",
"default": true,
"description": "Include counts of public projects matched by each topic taxonomy entry."
},
"include_examples": {
"type": "integer",
"minimum": 0,
"maximum": 5,
"default": 0,
"description": "Representative public projects per topic, from 0 to 5."
}
}
}🟢get_shader_portability_report(project_id, target)
Run ShaderLab deterministic E1 portability analysis for a public project and optional three.js, Godot, Unity, or WebGL target.
Esquema de entrada
{
"type": "object",
"properties": {
"project_id": {
"type": "integer",
"description": "Public ShaderLab project id."
},
"target": {
"type": "string",
"enum": [
"threejs",
"godot",
"unity",
"webgl"
],
"description": "Optional engine target; omit for a general E1 portability report."
}
},
"required": [
"project_id"
]
}🟢list_trending_content(mode, limit, tag)
What is currently trending in game-industry news on GameDev.net. mode="stories" (default) returns deduplicated multi-source story clusters (with aggregated tags, source count, and when the story broke/last updated — use get_story for the full timeline); mode="items" returns individual trending articles. Each result carries GameDev.net's owned AI summary and a source citation. Optionally filter by tag.
Esquema de entrada
{
"type": "object",
"properties": {
"mode": {
"type": "string",
"enum": [
"stories",
"items"
],
"default": "stories",
"description": "Clustered stories (default) or individual articles"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 25,
"default": 10
},
"tag": {
"type": "string",
"description": "Optional tag filter (e.g. \"unreal\", \"funding\")"
}
}
}🟢get_story(story_id)
Fetch one story cluster: its AI summary and key facts, plus a source-by-source timeline of every article covering the story (each with its source and a citation link). Good for "how did this story develop / who reported it".
Esquema de entrada
{
"type": "object",
"properties": {
"story_id": {
"type": "integer",
"description": "Story cluster id from list_trending_content (mode='stories')"
}
},
"required": [
"story_id"
]
}Comunidad
Evidencia