鸣潮 MCP Server

Recupera informações de personagens e artefatos do jogo Wuthering Waves (鸣潮) como Markdown, otimizado para grandes modelos de linguagem.

Documentação

Servidor MCP 鸣潮

MseeP.ai Security Assessment Badge

smithery badge

Um servidor Model Context Protocol (MCP) para obter informações sobre personagens e ecos do jogo 《鸣潮》, retornando-as em formato Markdown para facilitar o uso por modelos de linguagem de grande porte.

📄 Documentação em Inglês | 🇨🇳 Documentação em Chinês

🚀 Últimas Atualizações (v2.0.1)

  • 🏗️ Reestruturação da Arquitetura: Adoção de arquitetura Domain-Driven Design (DDD) com camadas claramente definidas
  • 🔧 Qualidade de Código: Integração das ferramentas de formatação e análise estática de código ruff
  • 📝 Sintaxe Moderna: Uso de anotações de tipo modernas do Python 3.12+ (dict/list em vez de Dict/List)
  • 🧹 Limpeza de Código: Remoção de código legado, unificação do estilo e dos padrões de qualidade
  • ✅ Suporte à Transmissão HTTP Streamable: Suporte ao novo protocolo de transmissão HTTP do Smithery
  • 🔄 Compatibilidade Retroativa: Suporte simultâneo aos modos de transmissão tradicionais STDIO e HTTP
  • 🌐 Pronto para Implantação em Nuvem: Perfeitamente adaptado para ambientes de nuvem como VPS, Google Cloud Run, AWS Lambda, etc.
  • 📦 Injeção de Dependências: Uso de contêiner de injeção de dependências para gerenciar instâncias de serviços
  • 🐳 Otimização Docker: Uso de construção em múltiplos estágios com uv, melhorando a velocidade de construção e reduzindo o tamanho da imagem

Recursos

  • Consulta de Informações de Personagens: Obtém informações detalhadas sobre personagens do jogo 《鸣潮》
  • Consulta de Informações de Ecos: Obtém informações detalhadas sobre conjuntos de ecos do jogo 《鸣潮》
  • Consulta de Arquivos de Personagens: Obtém informações de arquivo sobre personagens do jogo 《鸣潮》
  • Saída Amigável para LLM: Resultados especialmente formatados para modelos de linguagem de grande porte
  • Modo de Transmissão Duplo: Suporte às transmissões STDIO e HTTP Streamable

Métodos de Instalação

Instalação via Smithery

Para instalar automaticamente o WuWa MCP Server via Smithery:

npx -y @smithery/cli@latest install @jacksmith3888/wuwa-mcp-server --client claude --key YOUR_SMITHERY_KEYs

Instalação via uv

Instale diretamente do PyPI:

uv pip install wuwa-mcp-server

Como Usar

Executando com o Cherry Studio

  1. Baixe o Cherry Studio
  2. Clique em Servidores MCP nas configurações

Adicione a seguinte configuração:

{
  "mcpServers": {
    "wuwa-mcp": {
      "command": "uvx",
      "args": ["wuwa-mcp-server"]
    }
  }
}

Executando com o Claude Desktop

  1. Baixe o Claude Desktop
  2. Crie ou edite o arquivo de configuração do seu Claude Desktop:
    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\\Claude\\claude_desktop_config.json

Adicione a seguinte configuração:

{
  "mcpServers": {
    "wuwa-mcp": {
      "command": "uvx",
      "args": ["wuwa-mcp-server"]
    }
  }
}
  1. Reinicie o Claude Desktop

Ferramentas Disponíveis

1. Ferramenta de Informações de Personagens

async def get_character_info(character_name: str) -> str

Consulta informações detalhadas sobre personagens na Biblioteca do Distrito e retorna em formato Markdown.

Parâmetros:

  • character_name: O nome em chinês do personagem a ser consultado

Retorno: Uma string Markdown contendo as informações do personagem, ou uma mensagem de erro se o personagem não for encontrado ou se a obtenção de dados falhar.

2. Ferramenta de Informações de Ecos

async def get_artifact_info(artifact_name: str) -> str

Consulta informações detalhadas sobre ecos na Biblioteca do Distrito e retorna em formato Markdown.

Parâmetros:

  • artifact_name: O nome em chinês do conjunto de ecos a ser consultado

Retorno: Uma string Markdown contendo as informações do eco, ou uma mensagem de erro se o eco não for encontrado ou se a obtenção de dados falhar.

3. Ferramenta de Arquivos de Personagens

async def get_character_profile(character_name: str) -> str

Consulta informações de arquivo sobre personagens na Biblioteca do Distrito e retorna em formato Markdown.

Parâmetros:

  • character_name: O nome em chinês do personagem a ser consultado

Retorno: Uma string Markdown contendo as informações do arquivo do personagem, ou uma mensagem de erro se o personagem não for encontrado ou se a obtenção de dados falhar.

Desenvolvimento e Testes

Execução Local

# STDIO 模式(默认)
uv run python -m wuwa_mcp_server.server

# HTTP 模式
TRANSPORT=http uv run python -m wuwa_mcp_server.server

Qualidade de Código

O projeto usa ruff para formatação de código e análise estática, garantindo qualidade e consistência.

Instalação das Dependências de Desenvolvimento

uv sync --extra dev

Formatação e Verificação de Código

# 格式化所有 Python 代码
uv run ruff format .

# 检查代码问题
uv run ruff check .

# 自动修复可修复的问题
uv run ruff check --fix .

Configuração do Ruff

O projeto configura as seguintes regras de qualidade de código:

  • Comprimento da Linha: 120 caracteres
  • Versão Python Alvo: 3.12
  • Regras Habilitadas: pycodestyle, pyflakes, isort, convenções de nomenclatura, pyupgrade, bugbear, simplificação de código, etc.
  • Ordenação de Imports: Importações de linha única forçadas, prioridade definida para módulos do projeto

Implantação Docker

# 构建镜像
docker build -t wuwa-mcp-server .

# 运行容器(HTTP 模式)
docker run -p 8081:8000 wuwa-mcp-server

# 运行容器(STDIO 模式)
docker run -e TRANSPORT=stdio wuwa-mcp-server

Recursos Detalhados

Processamento de Resultados

  • Limpeza e formatação dos dados da Biblioteca do Distrito
  • Formato otimizado para consumo por LLM
  • Suporte a processamento paralelo para melhor desempenho
  • Operações assíncronas para evitar bloqueios

Modos de Transmissão

  • Transmissão STDIO: Adequada para clientes locais, como o Claude Desktop
  • Transmissão HTTP Streamable: Adequada para implantação em nuvem e acesso remoto
  • Detecção automática da variável de ambiente TRANSPORT para alternar o modo

Contribuições

Sugestões, problemas e pull requests são bem-vindos! Algumas áreas potenciais de melhoria:

  • Adicionar suporte para mais conteúdos do jogo 《鸣潮》
  • Aprimorar as opções de análise de conteúdo
  • Adicionar camada de cache para conteúdos acessados com frequência
  • Suporte à localização em mais idiomas

Licença

Este projeto é licenciado sob a licença MIT.