Chatwork MCP服务器

Chatwork MCP Server 是一款通过模型上下文协议(MCP)将 Chatwork API v2 封装为 31 个工具的交流协作服务器,让 Claude 等 AI 助手可以直接在 Chatwork 中收发消息、管理任务、文件、成员和会议室,适用于在 Claude Desktop/Code 等 MCP 客户端中集成 Chatwork 自动化操作。

  • by chatwork
  • TypeScript
  • 混合部署
  • 51 星标
  • 更新于
在 GitHub 查看 chatwork/chatwork-mcp-server

使用说明

Chatwork MCP Server

Chatwork を AI から操作するための MCP (Model Context Protocol) サーバーです。

できること

Chatwork API v2 の操作を 31 個のツールとして公開しています。

カテゴリ ツール
自分の情報 get_me / get_my_status / list_my_tasks / list_contacts
チャット list_rooms / create_room / get_room / update_room / delete_or_leave_room
メンバー list_room_members / update_room_members
メッセージ list_room_messages / post_room_message / read_room_messages / unread_room_message / get_room_message / update_room_message / delete_room_message
タスク list_room_tasks / create_room_task / get_room_task / update_room_task_status
ファイル list_room_files / get_room_file
招待リンク get_room_link / create_room_link / update_room_link / delete_room_link
コンタクト承認依頼 list_incoming_requests / accept_incoming_request / reject_incoming_request

前提

セットアップ

Claude Desktop

  1. Claude Desktop を起動
  2. メニューから「設定」をクリック
  3. 「開発者」タブをクリック
  4. 「構成を編集」をクリック
  5. ファイルビューワーで claude_desktop_config.json が示されるので、好みのエディタで開く
  6. 以下の設定を入力する
{
  "mcpServers": {
    "chatwork": {
      "command": "npx",
      "args": ["@chatwork/mcp-server"],
      "env": {
        "CHATWORK_API_TOKEN": "YOUR_CHATWORK_API_TOKEN"
      }
    }
  }
}

Claude Code

以下のコマンドを実行してください。

claude mcp add chatwork -e CHATWORK_API_TOKEN=YOUR_CHATWORK_API_TOKEN -- npx -y @chatwork/mcp-server

トランスポート

既定は stdio です。上記の設定例はいずれも stdio で動作するため、変更は不要です。

Streamable HTTP

サーバを 1 箇所に立てて複数の利用者から使いたい場合は、Streamable HTTP で起動できます。

npx @chatwork/mcp-server --transport http --port 3000

stdio と違い、クライアントがサーバを起動することはありません。接続する前に自分で起動しておく必要があります。

フラグ 環境変数 既定値 備考
--transport MCP_TRANSPORT stdio stdio または http
--port PORT 3000
--host HOST 127.0.0.1
--allowed-hosts MCP_ALLOWED_HOSTS localhost,127.0.0.1,[::1] Host ヘッダの許可リスト。既定はループバックのみ

--allowed-hosts はホスト名だけを照合します。ポート番号は指定しても無視され、 起動時に stderr へ警告を出します(localhost:3000 は localhost として扱われます)。 IPv6 アドレスは角括弧付きで指定してください([::1])。

エンドポイントは POST /mcp です。API トークンは環境変数ではなくリクエストヘッダで渡します。

Authorization: Bearer YOUR_CHATWORK_API_TOKEN

ヘッダが無い場合は 401 を返します。stdio モードと違い、CHATWORK_API_TOKEN 環境変数へのフォールバックは行いません(サーバの環境変数のアカウントとして 第三者に操作されるのを防ぐため)。

開発

git clone https://github.com/chatwork/chatwork-mcp-server.git
cd chatwork-mcp-server
npm ci
コマンド 内容
npm run build esbuild で dist/index.js にバンドルする
npm run dev ビルドを watch モードで実行する
npm test Vitest でテストを実行する(.env.test が必要)
npm run type-check TypeScript の型チェック
npm run lint ESLint + Prettier のチェック

Streamable HTTPでの起動する

npm run start:http                   # 127.0.0.1:3000 で待ち受ける
npm run start:http -- --port 3001    # 追加のフラグは -- の後ろに書く

MCP Inspectorで動作確認する

inspector.example.json をコピーしてトークンを書き込み、npm run inspect で起動します。

cp inspector.example.json inspector.json    # Authorization の値を自分のトークンに書き換える
npm run inspect

サーバは別のターミナルで起動しておく必要があります。--port を変えた場合は inspector.json の url も合わせて変更してください。

Inspector の設定でヘッダを渡さずに接続すると、401 に付く WWW-Authenticate: Bearer を OAuth のチャレンジと解釈して OAuth フローに入り、接続に失敗します。 このサーバは OAuth に対応していないため、必ずヘッダで渡してください。

CLI モードから叩く場合は次のようにします。

npx @modelcontextprotocol/inspector --cli --config ./inspector.json \
  --server chatwork-http --method tools/list

コントリビュート

今後、MCP に対応した AI ツールが増える可能性があります。使い方を追加してほしいツールがあった場合、あなたのコントリビュートをお待ちしています!

バグ報告・要望は Issues へお願いします。

ライセンス

MIT