MCP Server for Agent8

by planetarium
Verified

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Supports configuration via .env files for managing environment variables

  • Provides containerized deployment options through Docker, including GitHub Container Registry integration

  • Offers container image distribution through GitHub Container Registry

Agent8용 MCP 서버

Agent8 SDK 개발을 지원하기 위해 모델 컨텍스트 프로토콜(MCP)을 구현하는 서버입니다. TypeScript와 pnpm으로 개발되었으며 stdio 및 SSE 전송을 지원합니다.

특징

이 Agent8 MCP 서버는 다음 MCP 사양 기능을 구현합니다.

프롬프트

  • Agent8 SDK용 시스템 프롬프트 : system-prompt-for-agent8-sdk 프롬프트 템플릿을 통해 Agent8 SDK 개발을 위한 최적화된 가이드라인을 제공합니다.

도구

  • 코드 예제 검색 : search_code_examples 도구를 사용하여 벡터 데이터베이스에서 관련 Agent8 게임 개발 코드 예제를 검색합니다.
  • 게임 리소스 검색 : search_game_resources 도구를 통해 의미적 유사성 매칭을 사용하여 게임 개발 자산(스프라이트, 애니메이션, 사운드 등)을 검색합니다.

설치

지엑스피1

도커 사용하기

Docker를 사용하여 이 애플리케이션을 여러 가지 방법으로 실행할 수 있습니다.

옵션 1: GitHub 컨테이너 레지스트리에서 가져오기(권장)

# 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

옵션 2: 로컬로 빌드

# 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 환경 구성

Docker를 실행할 때 환경 변수를 구성하는 방법에는 세 가지가 있습니다.

  1. --env-file 사용(권장):
    # 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. 개별 -e 플래그 사용:
    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. Docker Compose 사용(개발/프로덕션 설정용):이 프로젝트에는 다음이 포함된 미리 구성된 docker-compose.yml 파일이 포함되어 있습니다.
    • .env 구성에서 자동 포트 매핑
    • 환경 변수 로딩
    • 데이터 지속성을 위한 볼륨 마운팅
    • 컨테이너 자동 재시작 정책
    • 상태 점검 구성

    서버를 실행하려면:

    docker compose up

    분리 모드로 실행하려면:

    docker compose up -d

필수 환경 변수:

  • SUPABASE_URL : 데이터베이스 연결을 위한 Supabase URL
  • SUPABASE_SERVICE_ROLE_KEY : 인증을 위한 Supabase 서비스 역할 키
  • OPENAI_API_KEY : AI 기능을 위한 OpenAI API 키

Dockerfile은 다단계 빌드 프로세스를 사용하여 최소한의 프로덕션 이미지를 만듭니다.

  • 더 작은 크기를 위해 기본 이미지로 Node.js 20 Alpine을 사용합니다.
  • 빌드 및 런타임 종속성을 분리합니다.
  • 최종 이미지에 필요한 파일만 포함합니다.
  • 기본적으로 포트 3000을 노출합니다

용법

명령줄 옵션

# View help pnpm start --help # View version information pnpm start --version

지원되는 옵션:

  • --debug : 디버그 모드를 활성화합니다
  • --transport <type> : 전송 유형(stdio 또는 sse), 기본값: stdio
  • --port <number> : SSE 전송에 사용할 포트, 기본값: 3000
  • --log-destination <dest> : 로그 대상(stdout, stderr, file, none)
  • --log-file <path> : 로그 파일 경로(log-destination이 file인 경우)
  • --log-level <level> : 로그 레벨(디버그, 정보, 경고, 오류), 기본값: 정보
  • --env-file <path> : .env 파일 경로

환경 변수 사용

서버는 환경 변수를 통한 구성을 지원하며, 환경 변수는 직접 설정하거나 .env 파일을 통해 설정할 수 있습니다.

  1. 프로젝트 루트에 .env 파일을 만듭니다(참조는 .env.example 참조하세요).
# Copy the example file cp .env.example .env # Edit the .env file with your settings nano .env
  1. 서버를 실행합니다( .env 파일이 자동으로 로드됩니다):
pnpm start
  1. 또는 .env 파일에 대한 사용자 정의 경로를 지정합니다.
pnpm start --env-file=/path/to/custom/.env

구성 우선 순위

서버는 구성 값을 결정할 때 다음과 같은 우선 순위를 사용합니다.

  1. 명령줄 인수(가장 높은 우선순위)
  2. 환경 변수( .env 파일 또는 시스템 환경)
  3. 기본값(가장 낮은 우선순위)

이를 통해 필요할 때 명령줄 인수를 통해 특정 설정을 재정의하면서 .env 파일에서 기준 구성을 설정할 수 있습니다.

지원되는 환경 변수

변하기 쉬운설명기본
MCP_운송전송 유형(stdio 또는 sse)stdio
포트SSE 운송에 사용할 항구3000
로그 레벨로그 수준(디버그, 정보, 경고, 오류)정보
로그 목적지로그 대상(stdout, stderr, file, none)stderr(stdio 전송용), stdout(sse 전송용)
로그 파일로그 파일 경로(LOG_DESTINATION이 파일인 경우)(없음)
디버그디버그 모드 활성화(true/false)거짓
SUPABASE_URL데이터베이스 연결을 위한 Supabase URL(필수의)
SUPABASE_SERVICE_ROLE_KEY인증을 위한 Supabase 서비스 역할 키(필수의)
OPENAI_API_KEYAI 기능을 위한 OpenAI API 키(필수의)
모든 도구 활성화모든 도구를 전역적으로 활성화하거나 비활성화합니다.진실
벡터 검색 도구 활성화모든 벡터 검색 도구를 활성화하거나 비활성화합니다.진실
시네마틱 도구 사용모든 영화 도구 활성화 또는 비활성화진실
코드 예제 검색 도구 활성화코드 예제 검색 도구 활성화 또는 비활성화진실
게임 리소스 검색 도구 활성화게임 리소스 검색 도구 활성화 또는 비활성화진실

도구 활성화 우선 순위 : 도구 활성화 설정은 다음 우선 순위를 따릅니다.

  1. 개별 도구 설정(예: ENABLE_CODE_EXAMPLE_SEARCH_TOOL )
  2. 도구 그룹 설정(예: ENABLE_VECTOR_SEARCH_TOOLS )
  3. 글로벌 도구 설정( ENABLE_ALL_TOOLS )

예를 들어, ENABLE_ALL_TOOLS=false 로 설정하고 ENABLE_VECTOR_SEARCH_TOOLS=true 로 설정하면 벡터 검색 도구만 활성화되고 다른 도구는 비활성화 상태로 유지됩니다. 마찬가지로, 개별 도구 설정은 해당 그룹 설정보다 우선합니다.

예시 :

# Enable only vector search tools ENABLE_ALL_TOOLS=false ENABLE_VECTOR_SEARCH_TOOLS=true # Disable a specific tool while keeping others enabled ENABLE_ALL_TOOLS=true ENABLE_CODE_EXAMPLE_SEARCH_TOOL=false

Stdio Transport 사용

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

SSE 전송 사용

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

디버그 모드

# Run in debug mode pnpm start --debug

사용 가능한 프롬프트

  • systemprompt-agent8-sdk

클라이언트 통합

Claude Desktop과 함께 사용

  1. Claude Desktop 구성 파일( claude_desktop_config.json )에 다음을 추가합니다.
{ "mcpServers": { "Agent8": { "command": "npx", "args": ["--yes", "agent8-mcp-server"] } } }
  1. Claude Desktop을 다시 시작하세요

새로운 프롬프트 추가

src/prompts/provider.ts 파일의 registerSamplePrompts 메서드에 새로운 프롬프트를 추가합니다.

특허

MIT

You must be authenticated.

A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

stdio 및 SSE 전송을 통해 시스템 프롬프트와 코드 예제 검색 기능을 제공하여 Agent8 SDK 개발을 지원하는 MCP(모델 컨텍스트 프로토콜)를 구현하는 서버입니다.

  1. Features
    1. Prompts
    2. Tools
  2. Installation
    1. Using Docker
  3. Usage
    1. Command Line Options
    2. Using Environment Variables
    3. Using Stdio Transport
    4. Using SSE Transport
    5. Debug Mode
  4. Available Prompts
    1. Client Integration
      1. Using with Claude Desktop
      2. Adding New Prompts
    2. License
      ID: 72qko8mjvv