GameCode MCP2
A Model Context Protocol (MCP) server for tool integration, configured using a tools.yaml file.
This repository has moved to https://git.navicore.tech/navicore/gamecode-mcp2.
The GitHub copy is archived and no longer maintained.
GameCode MCP2
A clean (and possibly naive) implementation of the Model Context Protocol (MCP) for tool integration.
Motivation - as few dependencies as possible, as simple and auditable a configuration as possible.
⚠️ Security Notice
MCP is early technology. Allowing LLMs to execute system commands is inherently risky. This implementation prioritizes auditability over features - you can read every line that processes LLM requests. Even so, proceed with caution. Only time will tell if MCP's approach is sound.
Key Features
- Direct tool exposure - Tools defined in
tools.yamlare exposed directly via MCP, not through meta-tools - Clean protocol implementation - Pure JSON-RPC 2.0 over stdio without external dependencies
- Dynamic tool loading - Configure tools via YAML without recompiling
- Built-in and external tools - Support for both internal handlers and external commands
Architecture
This workspace contains two crates:
mcp-server- The MCP server that loads tools fromtools.yamland exposes them via the protocolmcp-client- A client library for testing and integration
Usage
Running the Server
# Build the server
cargo build --release --bin gamecode-mcp2
# Create a tools.yaml file (see examples/tools.yaml)
cp examples/tools.yaml .
# Run the server (it communicates via stdio)
./target/release/gamecode-mcp2
Using with Claude Desktop
Add to your Claude Desktop configuration:
{
"mcpServers": {
"gamecode": {
"command": "/path/to/gamecode-mcp2"
}
}
}
Using with gamecode-cli
The mcp-client crate can be used as a dependency in gamecode-cli for MCP integration.
Tool Configuration
Tools are defined in tools.yaml:
tools:
- name: my_tool
description: Description for the LLM
command: /path/to/command # or "internal" for built-in
args:
- name: param1
description: Parameter description
required: true
type: string
cli_flag: --param # null for positional
internal_handler: handler_name # for internal tools
Protocol
This implementation follows the MCP specification:
initialize- Handshake with clienttools/list- Returns all available toolstools/call- Execute a specific tool
Tools are exposed directly, not through meta-tools like "run".
Related Servers
Alpha Vantage MCP Server
sponsorAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Pickapicon
Quickly retrieve SVGs using the Iconify API, with no external data files required.
Tox Testing
Executes tox commands to run Python tests with pytest. Requires the TOX_APP_DIR environment variable to be set.
Postman API
An MCP server for interacting with the Postman API, requiring an API key.
iOS Development Bridge (idb)
Interact with iOS simulators and devices using Facebook's iOS Development Bridge (idb).
MCP Agentic Development Platform
A comprehensive MCP development environment with interactive visualizations, multiple client interfaces, and advanced agentic capabilities.
MCP Chain of Draft (CoD) Prompt Tool
Enhances LLM reasoning by transforming prompts into Chain of Draft or Chain of Thought formats, improving quality and reducing token usage. Requires API keys for external LLM services.
Bitrix24 MCP-DEV
The MCP server for Bitrix24 provides AI assistants with structured access to the Bitrix24 API. It delivers up-to-date method descriptions, parameters, and valid values, allowing assistants to work with precise data instead of guesswork. This reduces code errors and accelerates Bitrix24 integration development.
Maven
Tools to query latest Maven dependency information
Plith
AI agent infrastructure suite — task deduplication, cost prediction, output validation, behavioral governance, shared failure intelligence. 5 products, 14 MCP tools, 1 API key.
MCP Agent Trace Inspector
Step-by-step observability for MCP agent workflows — trace, inspect, and debug multi-step agent executions