Skip to main content
Glama
finasteos

GameDev MCP Hub

by finasteos

GameDev MCP Hub

Version: 0.1.0 · Status: active development

MCP hub that aggregates game-development MCP servers (Blender, Godot, GitHub, Obsidian, …) behind one interface for Claude, LM Studio, Cursor, and other MCP clients. Includes a local GUI, smart task routing, and SSE multi-client support.

Quick start

Prerequisites: Node.js 20+

# Install
pnpm install   # or: npm install

# First-run config (.env, hub-config, mcp-servers)
pnpm setup     # or: npm run setup

# Edit secrets / enable servers
#   .env
#   config/mcp-servers.json

# Multi-client SSE hub + GUI (recommended)
pnpm start:sse   # after: pnpm build
# or: ./scripts/start.sh
  • MCP SSE: http://127.0.0.1:3000/sse

  • GUI: http://127.0.0.1:3100 (port auto-scans 3100–3109)

  • Stdio mode (single client): pnpm start

Windows: scripts\start.bat or START_ALL.bat.

Related MCP server: agent-bus-mcp

What works today

Area

Status

Downstream MCP via stdio (ConnectionManager)

Working

Tool namespacing (server__tool)

Working

Local GUI + WebSocket

Working

SSE multi-client (one Server per session)

Working

Smart Router (hub__route_task)

Wired

Skills as MCP resources (skill://…)

Working

Auth / rate limits

Optional (config + HUB_API_KEY)

Enable servers in config/mcp-servers.json. Example configs ship as *.example.json.

Architecture

AI clients (Claude / LM Studio / Cursor)
        │  MCP (stdio or SSE)
        ▼
 GameDev MCP Hub
  · Smart Router (hub__route_task)
  · Tool registry + search
  · GUI (localhost)
        │
        ▼
 Downstream MCP servers (Blender, Godot, GitHub, …)

Configuration

File

Purpose

.env

API keys (see .env.example)

config/hub-config.example.json

Hub features, security, logging

config/mcp-servers.example.json

Downstream servers

config/categories.json

Tool categories

GITHUB_TOKEN and GITHUB_PERSONAL_ACCESS_TOKEN are both accepted; the hub mirrors them when spawning servers.

By default HTTP/SSE/GUI bind to 127.0.0.1. Set security.bind_localhost_only: false only if you understand the risk. Set security.require_authentication: true and HUB_API_KEY to protect GUI mutation endpoints.

Scripts

pnpm build          # compile + copy GUI assets
pnpm start          # stdio transport
pnpm start:sse      # SSE multi-client
pnpm test           # unit tests
pnpm type-check
pnpm lint

Docs

Session notes and historical status dumps live under archive/session-docs/.

License

MIT

Available Tools

5 tools
hub__check_tokensB

Check current token usage and get recommendations

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.4/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It reveals the tool 'gets recommendations' which implies read-only behavior, but doesn't state whether this is a safe read operation, what the recommendations are based on, or any limits. For a zero-parameter read tool, the risk is low, so a moderate score is fair.

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?

The description is a single, compact sentence with no wasted words. Every word earns its place, and it's appropriately sized for such a simple tool.

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 zero-parameter tool with no output schema, the description is minimal but adequate. It communicates the primary function (checking token usage) and the value-add (recommendations). However, it doesn't clarify what form the token usage takes, what the recommendations are about, or what the return format looks like, which could leave an agent slightly uncertain about interpreting the result.

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?

With 0 parameters and 100% schema coverage, there is nothing for the description to document. The baseline for 0 params is 4, and there are no parameters requiring semantic explanation. This is appropriately handled.

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 uses a specific verb (check) and resource (token usage) to state what the tool does. It clearly communicates the function of checking current token usage, though it doesn't explicitly distinguish from sibling tools like get_analytics, but the purpose is reasonably clear.

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

Usage Guidelines2/5

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

No when-to-use guidance is provided. The description doesn't say when to use this vs get_analytics or route_task, nor does it mention any prerequisites or exclusions. The tool has zero parameters so it's inherently simple, but the context of when to check tokens versus other tools is unexplored.

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

hub__get_analyticsC

Get usage analytics for tools and servers

ParametersJSON Schema
NameRequiredDescriptionDefault
timeframeNoTimeframe for analytics

TDQS

C2.6/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It's a read-type tool by implication, but the description doesn't state whether this is read-only, whether it requires authentication, what the aggregation behavior is, or whether results are cached. For an analytics tool with zero annotation coverage, more behavioral context is needed.

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?

The description is a single short sentence that efficiently conveys the core purpose with no wasted words. It's appropriately concise for a simple one-parameter tool, though it is somewhat under-specified in content.

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

Completeness2/5

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, full schema coverage, and no output schema, the description is arguably adequate for basic invocation. However, with zero annotations, no output schema, and no clarity on what the analytics output contains (per-tool breakdown, per-server breakdown, or aggregated counts), the description leaves significant gaps about what to expect from the tool.

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

Parameters3/5

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

Schema coverage is 100% and the single parameter timeframe is fully documented with an enum. The description adds no additional parameter context beyond the schema, but with full coverage the baseline of 3 is appropriate. The description doesn't explain how the timeframe parameter affects the results (e.g., aggregation granularity), which would add value.

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

Purpose3/5

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

The description 'Get usage analytics for tools and servers' uses a clear verb+resource structure and states what data is returned (usage analytics). However, it doesn't distinguish itself from siblings like hub__list_servers or hub__check_tokens beyond the general subject matter. It's clear but lacks scoping detail.

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

Usage Guidelines2/5

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. The description doesn't explain what 'usage analytics' means in practice, what use cases it serves, or when someone might prefer a sibling tool like hub__search_tools or hub__check_tokens.

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

hub__list_serversC

List connected servers

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2.8/5.0
Behavior2/5

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. 'List connected servers' does not state whether this is a safe read operation, what the return format looks like, whether it can fail if no servers are connected, or whether authentication is required. 'List' implies non-destructive behavior but this is not explicitly stated.

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?

The description is a single concise sentence with no wasted words. It is appropriately front-loaded with the operation 'List'. However, it is arguably under-specified for a tool that could benefit from a brief note about what constitutes a 'connected' server, though this is a minor gap.

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

Completeness2/5

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

This is a simple listing tool with no parameters and no output schema, so the description should clarify what 'connected servers' means and what the expected result is. The description is minimal but functional for a zero-parameter list operation. Given its simplicity, it might profit from stating whether it returns server identifiers, statuses, or metadata, but for a straightforward list it is marginally adequate.

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?

The tool has 0 parameters, and schema coverage is 100% (the schema correctly declares an empty properties object). With no parameters to document, the description adequately covers the parameter space; there is nothing more to explain. The baseline of 4 for a zero-parameter tool is appropriate.

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

Purpose3/5

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

The description 'List connected servers' has a specific verb ('List') and resource ('servers'), clearly indicating a read-only listing operation. It distinguishes reasonably from siblings like search_tools and get_analytics, but doesn't clarify what 'connected' means or what type of servers are involved, leaving some ambiguity about the scope.

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

Usage Guidelines2/5

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

No guidance is provided about when to use this tool versus alternatives. The other siblings (search_tools, get_analytics, check_tokens, route_task) have clearly different purposes, so context implies this is for server management, but no explicit when/when-not guidance is given.

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

hub__route_taskB

Route a natural-language task to the best tool(s)

ParametersJSON Schema
NameRequiredDescriptionDefault
taskYesWhat you want to accomplish

TDQS

B3/5.0
Behavior3/5

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

With no annotations at all, the description carries full burden for behavioral disclosure. It reveals no specifics about behavior: whether it actually invokes tools, just recommends them, or returns a plan. The description doesn't state side effects, whether it has rate limits, or what happens on ambiguous tasks—all unknown for an orchestration tool.

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?

The description is a single efficient sentence with zero waste. It's front-loaded with the action verb and clearly names the input. Adequately concise for the information it conveys.

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

Completeness2/5

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

For a routing/orchestration tool with no annotations, no output schema, and the key task of deciding which tools to use, the description is thin. It doesn't clarify whether the tool executes tasks, returns suggestions, or how it discovers available tools. Given the tool's orchestrator role, richer description of behavior and outcome is expected.

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

Parameters3/5

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

Schema coverage is 100% for the single 'task' parameter, and the schema already explains 'What you want to accomplish.' The description adds no additional semantic information about the format, expected detail level, or constraints of the task string. Baseline 3 is appropriate since the schema already documents the parameter.

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

Purpose3/5

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

The description states a verb ('route') and resource ('a natural-language task to the best tool(s)'). It's clear in intent but somewhat generic—it doesn't distinguish what makes this routing tool special versus its siblings, particularly hub__search_tools which likely has overlapping utility for finding tools.

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 the primary use case (routing NL tasks to appropriate tools) but provides no explicit when-to-use vs. alternative guidance. It doesn't mention when one might prefer hub__search_tools for finding tools versus routing through this tool, leaving the decision boundary ambiguous.

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

hub__search_toolsC

Search tools by name/category

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesSearch query
categoryNoFilter by category (optional)

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. The description doesn't state what the search matches against (is it fuzzy? exact?), what happens with no results, whether it's read-only, or what response format to expect. For a search tool with zero annotation coverage, more behavioral context is needed.

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?

Extremely concise single sentence with zero waste. Every word earns its place, and the front-loaded keyword 'Search' immediately signals the tool's function.

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

Completeness2/5

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

For a search tool with no output schema and no annotations, more is needed. The description doesn't clarify what 'tools' means in this hub context, what search semantics apply (substring, fuzzy, exact), or how results are returned. Complexity is low (2 params) but search behavioral expectations are ambiguous enough that the description should elaborate.

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

Parameters3/5

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

Schema coverage is 100%, so both parameters (query, category) are already described in the schema. The description title mirrors the schema param names ('name/category') without adding depth. Category is marked optional in schema, and description says 'Filter by category (optional)', which is adequate but adds no new meaning beyond the schema.

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 'Search tools by name/category' uses a clear verb (search) and specific resource (tools) plus scope (name/category). It distinguishes from siblings like list_servers or route_task, though it doesn't elaborate on what kind of 'tools' are searched (plugins, MCP tools, etc.).

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

Usage Guidelines2/5

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

No guidance on when to use this vs alternatives. There's no mention of when to use the category filter, when results are expected, or how it relates to hub__list_servers as a potential alternative for discovering available resources. The description implies a discovery/search use case but provides no exclusions or alternative tool references.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 5 tool updatesv0.1.0
    • First observedhub__check_tokens
    • First observedhub__get_analytics
    • First observedhub__list_servers
    • First observedhub__route_task
    • First observedhub__search_tools

TDQS

B3.2/5.0

Scored across 5 tools

Disambiguation4/5

The tools are mostly distinct: search vs list vs analytics vs token check vs routing all have clear purposes. The only slight overlap is between 'search_tools' and 'route_task' (both help find tools), though route_task takes natural-language and adds routing logic, so the boundary is mostly clear.

Naming Consistency5/5

All tools follow a consistent verb_noun snake_case pattern: search_tools, list_servers, get_analytics, check_tokens, route_task. Every name uses a clear action verb followed by a noun, with no style mixing.

Tool Count4/5

Five tools is a reasonable, well-scoped count for a hub/meta-coordination server. Each tool addresses a distinct purpose (discovery, listing, analytics, token management, task routing). It sits slightly on the sparse side but is appropriate for the coordination-focused role with no apparent need for more.

Completeness3/5

The surface covers discovery, listing, analytics, token monitoring, and routing, which forms a coherent hub workflow. However, there's no tool to register/disconnect a server, no way to inspect a specific tool's detail beyond search, and no configuration or error-reporting capability, leaving some operational gaps for a hub that manages connected servers.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    A local MCP server that connects AI coding agents (Claude Code, Codex, Cursor, etc.) on the same machine via a shared message bus, enabling them to chat, delegate tasks, and collaborate privately without cloud or internet.
    60 npm
    17
    MIT
  • F
    license
    Not graded
    quality
    B
    maintenance
    Aggregates multiple MCP servers and custom Python tools behind a single endpoint, with intelligent context and tool discovery for AI agents.
    -
  • A
    license
    A
    quality
    B
    maintenance
    Aggregates multiple MCP servers into a single interface, reducing token overhead and simplifying tool management for LLMs.
    6
    103 npm
    17
    Apache 2.0