# Claude Desktop に Shager をつなぐ：カスタムコネクタでログインするか、API キーを使うか

_2026-08-12 · Shager をカスタムコネクタとして Claude Desktop に追加し、ログインするだけ。キーのコピーは不要です。API キーを使う2つの方法も手順付きで解説します。_

Claude Desktop に Shager をつなぐいちばん簡単な方法は、https://app.shager.ai/api/mcp をカスタムコネクタとして追加し、「Connect」をクリックして Shager にログインし、承認することです。コピーするキーはありません。API キーを使いたい場合は、ほかに2つの方法があります。アカウントに「Request headers」の項目があれば、認証を「No sign-in」にして `authorization` ヘッダーに `Bearer shgr_live_...` を設定したカスタムコネクタ。または、オープンソースの `mcp-remote` パッケージを使い、`claude_desktop_config.json` 経由でリモートサーバーに橋渡しする方法です。こちらも同じヘッダーを転送してくれます。

どの方法でも、たどり着く先は同じです。デスクトップアプリの Claude から、クライアントのワークスペースを一覧し、複数アカウント向けの投稿を下書きし、アカウント別のクリックを取得できます。違うのは、誰がキーを持つのか、そしてチームメンバー一人ひとりがどれだけ設定を繰り返すかです。

## ワンクリックの方法：ログインする

Shager の MCP サーバーは OAuth によるログインに対応しています。Claude のカスタムコネクタは、まさにこの仕組みを前提に作られています。

1. 「Customize」から「Connectors」を開き、「Add custom connector」をクリックします。
2. 名前を `Shager` にし、MCP サーバーの URL `https://app.shager.ai/api/mcp` を入力して「Add」をクリックします。
3. 「Connect」をクリックします。ブラウザで Shager が開くので、ログインし、組織を選んで承認します。

この接続でできるのは、読み取りと下書きの作成です。予約と公開は承認画面の別のチェックボックスで、チェックを入れない限りオフのままです。一人ひとりが自分のアカウントで接続するので、https://app.shager.ai/dashboard/agents の監査ログで誰が何をしたかがわかり、接続はそこでいつでも解除できます。

## API キーを使うのはどんなときか

自分で管理する、スコープを厳密に決めたキーを使いたいとき、あるいはブラウザでのログインに頼らない接続が必要なときです。Anthropic の[ディレクトリにないコネクタを追加する](https://claude.com/docs/connectors/custom/add-unlisted)ためのドキュメントは、このケースをはっきり書いています。「If the server uses an API key, choose No sign-in and add the key under Request headers.」（サーバーが API キーを使う場合は No sign-in を選び、Request headers にキーを追加してください）。同じページには、リクエストヘッダーによる認証は「is in beta and available to a limited set of organizations」（ベータ版で、一部の組織のみ利用可能）ともあります。つまり、正攻法は1つ目の方法ですが、まだ使えない可能性があります。2つ目の方法があるのはそのためです。

## 方法1：リクエストヘッダー付きのカスタムコネクタ

ダイアログに「Request headers」が表示される場合はこちらを使います。同じページによれば、URL によるカスタムコネクタは Free、Pro、Max、Team、Enterprise の各プランで使え、Free はカスタムコネクタ1つまでです。

Free、Pro、Max の場合：

1. 「Customize」から「Connectors」を開き、「Add custom connector」をクリックします。
2. 名前を `Shager` にし、MCP サーバーの URL `https://app.shager.ai/api/mcp` を入力します。
3. 「Authentication」で「No sign-in」を選びます。
4. 「Request headers」を開き、一覧から `authorization` を選んで、値に `Bearer shgr_live_your_key_here` を入力します。
5. ヘッダーを「Required」にして、「Add」をクリックします。

つまずく人が多いのは手順4です。ドキュメントによれば、Claude は「sends the value exactly as you enter it. It doesn't add an authentication scheme or any other prefix.」（入力した値をそのまま送信し、認証スキームなどの接頭辞は付けない）とのこと。キーだけを貼り付けると、Shager には `Authorization: shgr_live_...` が届き、401 が返ります。`Bearer` という単語とスペースを忘れずに入れてください。

Team と Enterprise では、Owner が「Organization settings」の「Connectors」でコネクタを追加し、メンバーは各自の「Customize」ページから接続します。Shager でこのやり方を使う場合は注意が必要です。リクエストヘッダーは組織全員で共有する1つの認証情報で、Anthropic のページでも、個人ごとのログインではなく「a service account」（サービスアカウント）向けとされています。Shager のキーを1つ共有すると、https://app.shager.ai/dashboard/agents の監査ログでは、すべての呼び出しがその1つのキーに記録されます。誰が何をしたかを個人単位で追いたいなら、一人ひとりにログインで接続してもらうか、個人別のキーで方法2を使ってください。

また、ヘッダーはあとから編集できません。キーを入れ替えるには、コネクタを削除して追加し直します。

## 方法2：claude_desktop_config.json で mcp-remote を使う

デスクトップの設定ファイルは、Claude Desktop がプロセスとして起動するローカルサーバーのためのものです。Anthropic の[カスタムコネクタ](https://support.claude.com/en/articles/11175166-get-started-with-custom-connectors-using-remote-mcp)に関するヘルプ記事では、ローカルサーバーはリモートコネクタとは「a separate mechanism」（別の仕組み）だと説明されています。ここに `url` だけを書いても、Desktop がリモートサーバーにつながるわけではありません。

回避策が [mcp-remote](https://github.com/geelen/mcp-remote) です。stdio でローカルに動き、カスタムヘッダー付きでリクエストをリモートの MCP サーバーに転送するオープンソースのパッケージで、Node.js が必要です。

設定ファイルは「Settings」→「Developer」→「Edit Config」から開きます。[ローカルサーバー向けの MCP クイックスタート](https://modelcontextprotocol.io/docs/develop/connect-local-servers)によれば、パスは macOS なら `~/Library/Application Support/Claude/claude_desktop_config.json`、Windows なら `%APPDATA%\Claude\claude_desktop_config.json` です。

```json
{
  "mcpServers": {
    "shager": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://app.shager.ai/api/mcp",
        "--header",
        "Authorization:${SHAGER_AUTH_HEADER}"
      ],
      "env": {
        "SHAGER_AUTH_HEADER": "Bearer shgr_live_your_key_here"
      }
    }
  }
}
```

`Authorization:${SHAGER_AUTH_HEADER}` のコロンの後にスペースがないのは、わざとです。mcp-remote の README によると、Windows 版の Claude Desktop（ほかの一部のクライアントも）は `args` 内のスペースをエスケープしないため、スペースは環境変数の側に入れておきます。この書き方は macOS でも動くので、どこでもこの形にしておけば迷いません。

キーを設定の JSON に置きたくない場合、mcp-remote は `--header-file` にも対応しています。1行に1つ `Name: value` を書いたファイルを指定します。

```text
Authorization: Bearer shgr_live_your_key_here
```

Claude Desktop を完全に終了してから、もう一度開きます。クイックスタートにあるとおり、新しい設定を読み込むにはアプリの再起動が必要です。そのうえでチャット入力欄からコネクタのメニューを開き、`shager` がツールとともに表示されているか確認します。

### つながらないときは

ログは macOS なら `~/Library/Logs/Claude`（Windows は `%APPDATA%\Claude\logs`）にあります。接続の失敗は `mcp.log` に、mcp-remote 自体の出力は `mcp-server-shager.log` に残ります。そこに 401 があれば、ヘッダーの値が間違っています。npx で `command not found` が出る場合は、Claude Desktop から見える PATH に Node が入っていません。バージョンマネージャーで Node を入れた場合によく起こります。その場合は、`command` に `npx` の絶対パスを指定してください。

## どちらを選べばよいですか？

| | リクエストヘッダー付きカスタムコネクタ | 設定ファイルで mcp-remote |
|---|---|---|
| 利用できる範囲 | ベータ版、一部の組織のみ | Node が入った Claude Desktop ならどこでも |
| キーの保管場所 | Claude が保存し、再表示されない | ローカルの設定ファイル、またはヘッダーファイル |
| ブラウザ版 claude.ai で使えるか | 使える（アカウントのコネクタのため） | 使えない（デスクトップのみ） |
| Team プランで個人別のキー | 不可（共有ヘッダー1つ） | 可能（各自が設定） |
| キーの入れ替え | コネクタを削除して追加し直す | ファイルを編集して再起動 |

ほとんどの人にとっては、ログインする方法がいちばんすっきりしています。キーを使う方法の中では、一人で活動するコンサルタントなら、使えるのであれば方法1のほうがすっきりします。5人がクライアントのアカウントを触る代理店なら、個人別のキーで方法2を使ったほうが、監査ログが実態どおりになります。

## 動作を確かめる最初のプロンプト

```text
Using Shager: who am I, which workspaces do I have, and for the workspace
"Harbor Fitness" list the connected channels by network and status.
```

次に、下書きを試します。

```text
Create a draft post in "Harbor Fitness" to every active Instagram and Facebook
channel. Caption: announce the new 6am class. Write a different caption per
channel using the location in the channel name. cta_url
https://harborfitness.example/6am, campaign "6am-launch". Don't schedule it.
```

2つ目のプロンプトでは、`per_channel` のキャプションと計測用の `cta_url` を指定して `create_post` を使います。これで各アカウントに専用の短縮リンクが付き、`utm_content` にはそのアカウントが入ります。下書きは Shager に表示され、そこから先は人が、あるいはクライアント承認リンクが引き継ぎます。代理店がこのステップをどう組み込んでいるかは、[クライアント承認ワークフロー](/ja/blog/client-approval-workflow-for-agencies)の記事で解説しています。

## キーのスコープは絞っておく

デスクトップのチャットは試行錯誤の場なので、このキーには `read` と `write` だけを与えましょう。`publish` がなければ、チャットに何を打ち込まれても、Shager は `schedule_post` と、`schedule_at` を含む `create_post` を拒否します。実際に投稿を出す定型処理には、https://app.shager.ai/dashboard/agents で `publish` 付きの別のキーを作ってください。

## よくある質問

### claude_desktop_config.json に url の項目を貼り付けるだけではだめですか？

このファイルはローカルサーバーをプロセスとして起動するためのもので、Anthropic はリモートサーバーをコネクタという別の仕組みとして説明しています。Shager をカスタムコネクタとして追加してログインするか、キーを付けてリモートの URL に転送するローカルプロセスとして mcp-remote を使ってください。

### そもそも API キーは必要ですか？

いいえ。https://app.shager.ai/api/mcp をカスタムコネクタとして追加してログインするのが最も簡単な方法で、一人ひとりが自分のアカウントで接続でき、ヘッダーを使う方法は必須ではありません。キーは、スコープを自分で管理したい場合に使ってください。

### 同じ設定は Claude Code でも使えますか？

Claude Code は `claude mcp add --transport http` と `--header` でヘッダー認証にネイティブ対応しているので、どちらの回避策も不要です。手順は [Claude Code に Shager をつなぐ](/ja/blog/connect-shager-to-claude-code)で紹介しています。

## 次のステップ

Desktop から Shager を呼び出せるようになったら、長いプロンプトを毎回打つのをやめて、スキルとしてまとめる習慣をつけると便利です。チャットアプリではなく API を使う場合は、[REST API クイックスタート](/ja/blog/shager-rest-api-quickstart)と [OpenAPI ドキュメント](https://app.shager.ai/api/v1/openapi.json)から始めてください。コネクタが提供するのとまったく同じ操作が説明されています。

---
Source: https://shager.ai/ja/blog/connect-shager-to-claude-desktop
