mcpField
G
GameCode MCP2

GameCode MCP2

Local
github.com/navicoreDeveloper Tools2Updated 26w ago

About GameCode MCP2

GameCode MCP2 is an archived Rust implementation of MCP, intended for tool integration and auditing. Its server loads tool definitions from YAML, while a client library supports testing and integration.

Key features

  1. 01Direct MCP tool exposure
  2. 02JSON-RPC 2.0 over stdio
  3. 03YAML-based dynamic tool configuration
  4. 04Built-in and external command handlers
  5. 05Separate server and client crates

Use cases

  1. 01Exposing configured commands as MCP tools
  2. 02Changing tool definitions without recompiling
  3. 03Testing MCP integrations with the client library

MCP support

The server loads tools from `tools.yaml` and exposes them through MCP over stdio. The workspace also includes an MCP client library; the repository is archived and no longer maintained.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

This repository has moved to https://git.navicore.tech/navicore/gamecode-mcp2.

The GitHub copy is archived and no longer maintained.

Dependabot Updates Rust CI

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.yaml are 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 from tools.yaml and exposes them via the protocol
  • mcp-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 client
  • tools/list - Returns all available tools
  • tools/call - Execute a specific tool

Tools are exposed directly, not through meta-tools like "run".

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.