Agent8 MCP Server

Agent8 MCP Server

Provides tools for searching Agent8 game development code examples and system prompts to assist in Agent8 SDK development.

Category
Visit Server

README

MCP Server for Agent8

A server implementing the Model Context Protocol (MCP) to support Agent8 SDK development. Developed with TypeScript and pnpm, supporting stdio and SSE transports.

Features

This Agent8 MCP Server implements the following MCP specification capabilities:

Prompts

  • System Prompt for Agent8 SDK: Provides optimized guidelines for Agent8 SDK development through the system-prompt-for-agent8-sdk prompt template.

Tools

  • Code Examples Search: Retrieves relevant Agent8 game development code examples from a vector database using the search_code_examples tool.

Installation

# Install dependencies
pnpm install

# Build
pnpm build

Using Docker

You can run this application using Docker in several ways:

Option 1: Pull from GitHub Container Registry (Recommended)

# Pull the latest image
docker pull ghcr.io/planetarium/mcp-agent8:latest

# Run the container
docker run -p 3333:3333 --env-file .env ghcr.io/planetarium/mcp-agent8:latest

Option 2: Build Locally

# Build the Docker image
docker build -t agent8-mcp-server .

# Run the container with environment variables
docker run -p 3333:3333 --env-file .env agent8-mcp-server

Docker Environment Configuration

There are three ways to configure environment variables when running with Docker:

  1. Using --env-file (Recommended):

    # Create and configure your .env file first
    cp .env.example .env
    nano .env
    
    # Run with .env file
    docker run -p 3000:3000 --env-file .env agent8-mcp-server
    
  2. Using individual -e flags:

    docker run -p 3000:3000 \
      -e SUPABASE_URL=your_supabase_url \
      -e SUPABASE_SERVICE_ROLE_KEY=your_service_role_key \
      -e OPENAI_API_KEY=your_openai_api_key \
      -e MCP_TRANSPORT=sse \
      -e PORT=3000 \
      -e LOG_LEVEL=info \
      agent8-mcp-server
    
  3. Using Docker Compose (for development/production setup):

    The project includes a pre-configured docker-compose.yml file with:

    • Automatic port mapping from .env configuration
    • Environment variables loading
    • Volume mounting for data persistence
    • Container auto-restart policy
    • Health check configuration

    To run the server:

    docker compose up
    

    To run in detached mode:

    docker compose up -d
    

Required Environment Variables:

  • SUPABASE_URL: Supabase URL for database connection
  • SUPABASE_SERVICE_ROLE_KEY: Supabase service role key for authentication
  • OPENAI_API_KEY: OpenAI API key for AI functionality

The Dockerfile uses a multi-stage build process to create a minimal production image:

  • Uses Node.js 20 Alpine as the base image for smaller size
  • Separates build and runtime dependencies
  • Only includes necessary files in the final image
  • Exposes port 3000 by default

Usage

Command Line Options

# View help
pnpm start --help

# View version information
pnpm start --version

Supported options:

  • --debug: Enable debug mode
  • --transport <type>: Transport type (stdio or sse), default: stdio
  • --port <number>: Port to use for SSE transport, default: 3000
  • --log-destination <dest>: Log destination (stdout, stderr, file, none)
  • --log-file <path>: Path to log file (when log-destination is file)
  • --log-level <level>: Log level (debug, info, warn, error), default: info
  • --env-file <path>: Path to .env file

Using Environment Variables

The server supports configuration via environment variables, which can be set directly or via a .env file.

  1. Create a .env file in the project root (see .env.example for reference):
# Copy the example file
cp .env.example .env

# Edit the .env file with your settings
nano .env
  1. Run the server (it will automatically load the .env file):
pnpm start
  1. Or specify a custom path to the .env file:
pnpm start --env-file=/path/to/custom/.env

Configuration Priority

The server uses the following priority order when determining configuration values:

  1. Command line arguments (highest priority)
  2. Environment variables (from .env file or system environment)
  3. Default values (lowest priority)

This allows you to set baseline configuration in your .env file while overriding specific settings via command line arguments when needed.

Supported Environment Variables

Variable Description Default
MCP_TRANSPORT Transport type (stdio or sse) stdio
PORT Port to use for SSE transport 3000
LOG_LEVEL Log level (debug, info, warn, error) info
LOG_DESTINATION Log destination (stdout, stderr, file, none) stderr (for stdio transport), stdout (for sse transport)
LOG_FILE Path to log file (when LOG_DESTINATION is file) (none)
DEBUG Enable debug mode (true/false) false
SUPABASE_URL Supabase URL for database connection (required)
SUPABASE_SERVICE_ROLE_KEY Supabase service role key for authentication (required)
OPENAI_API_KEY OpenAI API key for AI functionality (required)

Using Stdio Transport

# Build and run
pnpm build
pnpm start --transport=stdio

Using SSE Transport

# Build and run (default port: 3000)
pnpm build
pnpm start --transport=sse --port=3000

Debug Mode

# Run in debug mode
pnpm start --debug

Available Prompts

  • systemprompt-agent8-sdk

Client Integration

Using with Claude Desktop

  1. Add the following to Claude Desktop configuration file (claude_desktop_config.json):
{
  "mcpServers": {
    "Agent8": {
      "command": "npx",
      "args": ["--yes", "agent8-mcp-server"]
    }
  }
}
  1. Restart Claude Desktop

Adding New Prompts

Add new prompts to the registerSamplePrompts method in the src/prompts/provider.ts file.

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured