Windows環境(WSL2)のDockerに立てたBacklogのMCPサーバーにClaude Desktopからアクセスする

Windows環境(WSL2)のDockerに立てたBacklogのMCPサーバーにClaude Desktopからアクセスする

Clock Icon2025.05.13

データ事業本部の荒木です。

最近話題のMCPサーバーを試してみたいと思い、実務でもすぐ利用できそうなBacklogのMCPサーバーをさわってみました。
公式のDockerとClaudeの接続方法では私のローカル環境ではうまくいかなかったので、少し違う方法での方法となります。

環境

  • Windows11
  • WSL2(Ubuntu 20.04.6 LTS)
  • Docker 27.2.0
  • Claude

BacklogのMCPサーバーはDockerを使用することが前提となっているようです。
私のローカルPCはWindows環境でありDocker Desktopが使用できないため、DockerはWSL2環境で動かしています。

そのためclaudeからWSL2にコンテナを立ち上げて処理するような構成で実施しました。
ただ環境変数などがうまく設定できなかったので、あくまでお試しで実施するだけで想定です。

事前実施項目

以下は既に実施している想定です。

  • WSL2環境構築
  • WSL2内へのDockerインストール
  • Claude Desktopのインストール

本題

WSL2のDocker起動

WSL2の環境では特に何もする必要はありませんが、Dockerを起動しておきます。

sudo service docker start

Backlog APIの発行

Backlogの個人設定からAPIキーを発行します。

スクリーンショット 2025-05-13 145724

作成されたAPIキーを後ほど使うのでコピーして保存しておきます。

Claude側の設定

Claude Desktopの「ファイル > 設定 > 開発者」を開きます。
「構成の編集」を選択すると、claude_desktop_config.jsonが配置されたパスがエクスプローラーで開かれるので、こちらのファイルに以下の設定を追加します。

{
  "mcpServers": {
    "backlog": {
      "command": "wsl",
      "args": [
        "docker",
        "run",
        "-i",
        "--rm",
        "-e", "BACKLOG_DOMAIN=<Backlogのドメイン>.backlog.jp",
        "-e", "BACKLOG_API_KEY=<発行したBacklogのAPIキー>",
        "ghcr.io/nulab/backlog-mcp-server"
      ]
    }
  }
}

公式のREADMEにある内容と異なるのはこちらです。

WSL2なしではDockerを実行できないローカル環境なため、commandがdockerだとエラーとなってしまいます。
そのためここをwslのコマンドに変更し、引数にdockerコマンドを追加しました。

これによりClaudeからWSL2環境内にコンテナを立ち上げることができます。

ただドメインやAPIキーなどを環境変数に設定したかったのですが、Claudeで設定した環境変数をWSL2で実行するコマンドでうまく渡すことができなく、環境変数を設定するとエラーとなってしまうので環境変数に直接値を入力する形となってます。

上記設定後にClaudeを再起動すると設定が反映され、ツールにBacklogが追加されます。

確認

ClaudeからBacklogのスペース情報を取得するように依頼してみます。

スクリーンショット 2025-05-13 170819

認証が求められるので許可します。

スクリーンショット 2025-05-13 170837

スペース情報が取得できました!

スクリーンショット 2025-05-13 170916

発生した問題について

文字数制限

実環境で試していたため、私が所属するBacklogプロジェクトが30個程あり「〇〇プロジェクトの課題情報を取得してください。」のように依頼してしまうと、全プロジェクトしプロジェクトIDを確認し、プロジェクトIDからプロジェクト情報を取得する流れになり、レスポンスの文字数が多くなってしまい、文字数超過のエラーが出てしまいました。
無料版を使っていることもありますが、本番環境のBacklogで課題数が膨大だと文字数制限の問題が出てきてしまうのかなと思いました。
Claudeをあまり使ったことが無かったので、何かいい解決方法がないのか調べてみようと思います。

文字数を減らす方法として、プロジェクトの名前だけでなくプロジェクトIDも一緒にプロンプトに入れてあげることで、プロジェクト一覧の取得処理を減らすことができ文字数削減ができました。

また課題情報などを取得すると数が多いと文字数超過になってしまいましたが、特定の項目が含まれる課題がどのくらいあるかなどの検索をしてもらうなどの処理は超過せずにできました。

スクリーンショット 2025-05-13 172846

これができればエラー内容を過去の課題から検索してもらって、解決していればその解決方法を教えてもらうなどができそうだなと思いました。
実務でも使えそうです。

Claude Desktopが落ちてしまった

「〇〇プロジェクト情報を取得してください。」と依頼すると以下のようにエラーとなってしまいました。

スクリーンショット 2025-05-13 174657

ログを確認するとMethod not foundとでていたので、プロンプトからどのツールを実行したらいいか判断できない場合このエラーになったのかなと勝手に想像してます。
「〇〇プロジェクト(プロジェクトID:〇〇)の情報を取得してください。」とするとプロジェクトIDからget_projectのツールで処理されました。

はっきりとした原因は不明です。

まとめ

以上がBacklog公式のMCPサーバーをWindows環境で実行する方法でした。

初めてMCPサーバーを試してみましたが、とても便利だと思いました。
なので実務でもどんどん使えるようにしていこうと思います。

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.