Qase MCP Server

Um servidor MCP para interagir com a plataforma de gerenciamento de testes Qase.

Documentação

Servidor MCP Qase

Este é um servidor Model Context Protocol (MCP) para integração com a plataforma de gerenciamento de testes Qase. Ele fornece funcionalidades como criação de casos de teste, recuperação e gerenciamento de execuções de teste.

Configuração

Pré-requisitos

  • Node.js v22.17.0
  • Token da API Qase
  • TypeScript

Instalação

# パッケージのインストール
npm install

# ビルド
npm run build

Configuração de ambiente

Adicione a seguinte configuração ao arquivo de configuração MCP (cline_mcp_settings.json):

{
  "mcpServers": {
    "qase": {
      "command": "node",
      "args": ["path/to/qase-mcp-server/build/index.js"],
      "env": {
        "QASE_API_TOKEN": "your-api-token"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

Ferramentas disponíveis

get_projects

Recupera a lista de projetos.

Parâmetros de entrada: Nenhum

Exemplo de uso:

{
  "name": "get_projects"
}

get_test_cases

Recupera a lista de casos de teste para um projeto especificado.

Parâmetros de entrada:

  • project_code: Código do projeto (obrigatório)
  • suite_id: ID da suíte (opcional) - Recupera apenas casos de teste pertencentes à suíte especificada

Exemplo de uso:

{
  "name": "get_test_cases",
  "arguments": {
    "project_code": "DEMO",
    "suite_id": 123
  }
}

create_test_case

Cria um caso de teste.

Parâmetros de entrada:

  • project_code: Código do projeto (obrigatório)
  • title: Título do caso de teste (obrigatório)
  • description: Descrição do caso de teste (opcional)
  • preconditions: Pré-condições (opcional)
  • postconditions: Pós-condições (opcional)
  • suite_id: ID da suíte à qual pertence (opcional)
  • steps: Etapas do teste (opcional)

Exemplo de uso:

{
  "name": "create_test_case",
  "arguments": {
    "project_code": "DEMO",
    "title": "ログイン機能のテスト",
    "description": "ユーザーログイン機能の動作確認",
    "preconditions": "テストユーザーアカウントが作成済みであること",
    "steps": [
      {
        "action": "ログインページにアクセス",
        "expected_result": "ログインフォームが表示される"
      }
    ]
  }
}

create_suite

Cria uma suíte de testes.

Parâmetros de entrada:

  • project_code: Código do projeto (obrigatório)
  • title: Título da suíte de testes (obrigatório)
  • description: Descrição da suíte de testes (opcional)
  • preconditions: Pré-condições da suíte de testes (opcional)
  • parent_id: ID da suíte pai (opcional)

Exemplo de uso:

{
  "name": "create_suite",
  "arguments": {
    "project_code": "DEMO",
    "title": "認証機能テストスイート",
    "description": "認証に関連する全てのテストケース",
    "preconditions": "テスト用のデータベースが初期化されていること"
  }
}

create_test_run

Cria uma execução de teste.

Parâmetros de entrada:

  • project_code: Código do projeto (obrigatório)
  • title: Título da execução de teste (obrigatório)
  • description: Descrição da execução de teste (opcional)
  • cases: Lista de IDs de casos de teste a serem incluídos na execução de teste (opcional)

Exemplo de uso:

{
  "name": "create_test_run",
  "arguments": {
    "project_code": "DEMO",
    "title": "リグレッションテスト実行",
    "description": "v1.2.0リリース前の確認テスト",
    "cases": [1, 2, 3]
  }
}

create_test_cases_in_bulk

Cria vários casos de teste de uma só vez.

Parâmetros de entrada:

  • project_code: Código do projeto (obrigatório)
  • cases: Matriz de casos de teste a serem criados (obrigatório)
    • title: Título do caso de teste (obrigatório)
    • description: Descrição do caso de teste (opcional)
    • steps: Etapas do caso de teste (opcional)
      • action: Ação da etapa (obrigatório)
    • suite_id: ID da suíte à qual pertence (opcional)

Exemplo de uso:

{
  "name": "create_test_cases_in_bulk",
  "arguments": {
    "project_code": "DEMO",
    "cases": [
      {
        "title": "ログイン成功パターン",
        "description": "正しい認証情報での確認",
        "steps": [
          {
            "action": "ログインページにアクセス"
          },
          {
            "action": "正しいユーザー名とパスワードを入力"
          }
        ],
        "suite_id": 123
      },
      {
        "title": "ログイン失敗パターン",
        "description": "不正な認証情報での確認",
        "suite_id": 123
      }
    ]
  }
}

update_test_case

Atualiza um caso de teste existente.

Parâmetros de entrada:

  • project_code: Código do projeto (obrigatório)
  • case_id: ID do caso de teste (obrigatório)
  • title: Novo título do caso de teste (opcional)
  • description: Nova descrição do caso de teste (opcional)
  • preconditions: Pré-condições (opcional)
  • postconditions: Pós-condições (opcional)
  • severity: Severidade (0-6) (opcional)
  • priority: Prioridade (0-3) (opcional)
  • type: Tipo de teste (opcional)
  • layer: Camada de teste (opcional)
  • is_flaky: Se é um teste instável (0 ou 1) (opcional)
  • suite_id: ID da suíte à qual pertence (opcional)
  • steps: Etapas do teste (opcional)
    • action: Ação a ser executada (obrigatório)
    • expected_result: Resultado esperado (opcional)
    • data: Dados de teste (opcional)

Exemplo de uso:

{
  "name": "update_test_case",
  "arguments": {
    "project_code": "DEMO",
    "case_id": 456,
    "title": "更新されたログイン機能のテスト",
    "description": "ユーザーログイン機能の詳細な動作確認",
    "severity": 2,
    "priority": 1,
    "steps": [
      {
        "action": "ログインページにアクセスする",
        "expected_result": "ログインフォームが表示される"
      },
      {
        "action": "有効な認証情報を入力してログインボタンをクリック",
        "expected_result": "ダッシュボードページにリダイレクトされる"
      }
    ]
  }
}

Tratamento de erros

Cada ferramenta pode retornar os seguintes tipos de erros:

  • Erro de autenticação: Token da API inválido ou não definido
  • Erro de parâmetro: Parâmetros obrigatórios ausentes ou valores inválidos
  • Erro de API: Resposta de erro da API Qase

As mensagens de erro incluem o problema específico e como resolvê-lo.

Desenvolvimento

# 開発モードで実行(ファイル変更の監視)
npm run dev

# テストの実行
npm test

Licença

ISC