首页/游戏/mcp-agent8

mcp-agent8

查看源码
2025-5-12
Words 1511Read Time 4 min
Score:85

用于支持Agent8 SDK开发的MCP服务器,提供代码示例搜索、游戏资源搜索和资产生成等功能。

TypeScript

MCP Server for Agent8

一个实现模型上下文协议(Model Context Protocol,MCP)的服务器,用于支持 Agent8 SDK 开发。基于 TypeScript 和 pnpm 构建,支持 stdio 和 SSE 传输协议。

功能特性

该 Agent8 MCP 服务器实现了以下 MCP 规范功能:

提示词

  • Agent8 SDK 系统提示词:通过 system-prompt-for-agent8-sdk 提示词模板,为 Agent8 SDK 开发提供优化指导。

工具

  • 代码示例搜索:使用 search_code_examples 工具从向量数据库中检索相关的 Agent8 游戏开发代码示例。
  • 游戏资源搜索:通过 search_game_resources 工具,利用语义相似性匹配搜索游戏开发资源(如精灵、动画、音效等)。
  • 资源生成:全面的游戏资源生成工具集:
    • 图像:使用 image_asset_generate 工具生成 2D 游戏资源
    • 过场动画:使用 cinematic_asset_generate 工具创建过场动画序列
    • 音频:使用 music_generatesfx_generate 工具生成音乐曲目和音效
    • 天空盒:使用 skybox_generate 工具创建 360° 环境背景
    • 支持工具:提供状态检查、结果获取和等待工具,用于异步生成任务

安装

使用 Docker

您可以通过多种方式使用 Docker 运行该应用程序:

选项 1:从 GitHub Container Registry 拉取(推荐)

选项 2:本地构建

Docker 环境配置

在运行 Docker 时,有三种方式配置环境变量:
  1. 使用 --env-file(推荐):
    1. 使用单独的 -e 参数:
      1. 使用 Docker Compose(用于开发/生产环境):
        1. 项目包含预配置的 docker-compose.yml 文件,支持以下功能:
          • 从 .env 配置自动映射端口
          • 加载环境变量
          • 数据持久化的卷挂载
          • 容器自动重启策略
          • 健康检查配置
          运行服务器:
          后台运行:
      必需的环境变量:
      • SUPABASE_URL:用于数据库连接的 Supabase URL
      • SUPABASE_SERVICE_ROLE_KEY:用于身份验证的 Supabase 服务角色密钥
      • OPENAI_API_KEY:用于 AI 功能的 OpenAI API 密钥
      Dockerfile 使用多阶段构建过程,以创建最小化的生产镜像:
      • 使用 Node.js 20 Alpine 作为基础镜像,以减小体积
      • 分离构建和运行时依赖
      • 仅在最终镜像中包含必要的文件
      • 默认暴露端口 3000

      使用

      命令行选项

      支持的选项:
      • --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>:日志级别(debug、info、warn、error),默认:info
      • --env-file <path>:.env 文件路径

      使用环境变量

      服务器支持通过环境变量进行配置,可以直接设置或通过 .env 文件加载。
      1. 在项目根目录创建 .env 文件(参考 .env.example):
      1. 运行服务器(自动加载 .env 文件):
      1. 或者指定自定义的 .env 文件路径:

      配置优先级

      服务器在确定配置值时遵循以下优先级顺序:
      1. 命令行参数(最高优先级)
      1. 环境变量(来自 .env 文件或系统环境)
      1. 默认值(最低优先级)
      这种机制允许您在 .env 文件中设置基线配置,同时通过命令行参数覆盖特定设置。

      支持的环境变量

      变量名
      描述
      默认值
      MCP_TRANSPORT
      传输类型(stdio 或 sse)
      stdio
      PORT
      用于 SSE 传输的端口
      3000
      LOG_LEVEL
      日志级别(debug、info、warn、error)
      info
      LOG_DESTINATION
      日志输出目标(stdout、stderr、file、none)
      stderr(stdio 传输)、stdout(sse 传输)
      LOG_FILE
      日志文件路径(当 LOG_DESTINATION 为 file 时)
      (无)
      DEBUG
      启用调试模式(true/false)
      false
      V8_AUTH_API_ENDPOINT
      身份验证 API 端点 URL
      (无)
      V8_AUTH_REQUIRE
      要求对 API 端点进行身份验证
      false
      SUPABASE_URL
      用于数据库连接的 Supabase URL
      (必需)
      SUPABASE_SERVICE_ROLE_KEY
      用于身份验证的 Supabase 服务角色密钥
      (必需)
      OPENAI_API_KEY
      用于 AI 功能的 OpenAI API 密钥
      (必需)
      FAL_KEY
      用于资源生成的 fal.ai API 密钥
      (必需)
      BLOCKADE_LABS_API_KEY
      用于天空盒生成的 Blockade Labs API 密钥
      (天空盒生成时必需)
      V8_CREDIT_CLIENT_ID
      用于信用消耗 API 的客户端 ID
      (无,资源生成时可选)
      V8_CREDIT_CLIENT_SECRET
      用于信用消耗 API 的客户端密钥
      (无,资源生成时可选)
      V8_CREDIT_API_ENDPOINT
      用于信用消耗的 API 端点
      (资源生成时必需)
      ENABLE_ALL_TOOLS
      全局启用或禁用所有工具
      true
      ENABLE_VECTOR_SEARCH_TOOLS
      启用或禁用所有向量搜索工具
      true
      ENABLE_ASSET_GENERATE_TOOLS
      启用或禁用所有资源生成工具(图像、过场动画、音频、天空盒)
      true
      ENABLE_IMAGE_GENERATION_TOOLS
      启用或禁用图像生成工具
      true
      ENABLE_CINEMATIC_GENERATION_TOOLS
      启用或禁用过场动画生成工具
      true
      ENABLE_AUDIO_GENERATION_TOOLS
      启用或禁用音频生成工具
      true
      ENABLE_SKYBOX_GENERATION_TOOLS
      启用或禁用天空盒生成工具
      true
      ENABLE_CODE_EXAMPLE_SEARCH_TOOL
      启用或禁用代码示例搜索工具
      true
      ENABLE_GAME_RESOURCE_SEARCH_TOOL
      启用或禁用游戏资源搜索工具
      true
      工具激活优先级: 工具激活设置遵循以下优先级顺序:
      1. 单个工具设置(如 ENABLE_CODE_EXAMPLE_SEARCH_TOOL
      1. 资源类型设置(如 ENABLE_IMAGE_GENERATION_TOOLSENABLE_CINEMATIC_GENERATION_TOOLS
      1. 工具组设置(如 ENABLE_VECTOR_SEARCH_TOOLSENABLE_ASSET_GENERATE_TOOLS
      1. 全局工具设置(ENABLE_ALL_TOOLS
      单个设置始终覆盖组设置,组设置覆盖全局设置。当明确设置单个工具时,它们优先于其父级设置。
      重要提示:要仅启用特定工具,应将所有更高级别的设置设为 false,并仅启用所需的特定工具。这种方法提供更一致和可预测的配置。
      示例

      使用 Stdio 传输

      使用 SSE 传输

      调试模式

      可用提示词

      • systemprompt-agent8-sdk

      客户端集成

      与 Claude Desktop 集成

      1. 将以下内容添加到 Claude Desktop 配置文件(claude_desktop_config.json)中:
      1. 重启 Claude Desktop

      添加新提示词

      将新提示词添加到 src/prompts/provider.ts 文件中的 registerSamplePrompts 方法中。

      许可证

      MIT
      上一篇
      TAMA-MCP
      下一篇
      line-bot-mcp-server