🤖

Cursor と Atlassian MCP を利用して Confluence ページを作成する

に公開

前提条件と準備

Atlassian MCP のセットアップ

まず、Atlassian MCP を Cursor で利用できるように設定する必要があります。以下のサイトなどが参考になります。

Confluence 情報の確認

Confluence API を利用するには、以下の情報が必要になるので、あらかじめ確認しておきましょう。

  • クラウドID (cloudId): Atlassian Cloud 環境のIDです。通常、MCP接続時に自動的に認識されるため、Cursorのエージェントとやり取りする際は、こちらで調べる必要はありません。明示的に指定することも可能です。
  • スペースID (spaceId) または スペースキー (spaceKey): ページを作成したい Confluence スペースのIDまたはキーです。スペース設定の「スペースの詳細」から確認できます。ですが、おそらくスペース名をエージェントに教えればIDやキーは勝手に調べてくれると思います。
  • 親ページID (parentId, オプション): 作成するページを特定のページの子として配置する場合に必要です。親ページのURLの末尾の数字列などがページIDにあたります。直接IDを調べなくても、Cursorとのチャットで親ページのURLを提示することで、エージェントがページIDを特定してくれます。
  • ページのタイトル (title): 作成するページのタイトルです。
  • ページの内容 (body): マークダウン形式で記述します。

Cursor を用いた Confluence ページ作成のステップ

以下は、実際にマークダウンファイルの内容を Confluence の特定スペースの特定親ページ配下にアップロードする際の Cursor とのやり取りの概要です。
基本的に対話ベースでやりたいことを伝えれば、エージェントの指示に従ってページを作ることができます。

実際の対話例

この対話例では私が間違ったスペースキーを教えていますが、エージェント側が軌道修正してくれてます。
セキュリティ上の観点から、出力を一部修正しています。

ユーザー: mcpサーバーを使って参照しているマークダウンファイルの内容をコンフルエンスにアップロードしてページを作成したいです。
そのために必要な情報を教えてください
アシスタント: Confluenceに新しいページを作成するために必要な情報をご提供します。
ページ作成には、主に以下の情報が必要です。
ConfluenceのクラウドID (cloudId): ご利用のAtlassian Cloud環境を識別するためのIDです。
スペースID (spaceId): ページを作成したいConfluenceスペースのIDです。
ページのタイトル (title): 作成するページのタイトルです。
ページの内容 (body): マークダウン形式のコンテンツです。
これらの情報を取得し、ページを作成する手順をご案内します。
まず、利用可能なConfluenceのクラウドIDを取得します。
取得した情報から、クラウドIDは xxxx であることが分かりました。
次に、このクラウドIDを使用して、利用可能なConfluenceスペースのリストを取得し、ページを作成したいスペースのID (spaceId) を特定します。
多数のスペースがリストされました。どのスペースにページを作成しますか? スペースの 名前 または キー (key) を教えてください。もし分からなければ、スペースの管理者に確認してください。
また、作成するページの タイトル を教えてください。
これらの情報と、添付いただいたマークダウンファイル test.md の内容を使って、新しいConfluenceページを作成します。
ユーザー: スペースはCxxxxでお願いします。

また、タイトルはファイル名にして欲しいです。
それと一点だけ要望ですが、@https:xxxx(とあるコンフルページのurl) の下にページを作ることはできますか?
アシスタント: かしこまりました。スペース Cxxxx に、ファイル名をタイトルとしてConfluenceページを作成しますね。
1点確認させてください。
ご指定いただいた親ページのURL https:xxxx は、スペース Cyyyy 内のページ(ID: yyyy)を指しているようです。
Confluenceの制約上、新しいページは親ページと同じスペースに作成する必要があります。
つきましては、以下のいずれの方法で進めるかご教示いただけますでしょうか?
1. スペース Cxxxx に、親ページを指定せずに新しいページを作成する。
2. スペース Cyyyy に、指定されたURLのページ(ID: yyyy)を親として新しいページを作成する。 (この場合、作成先スペースは Cyyyy になります)
3. スペース Cxxxx 内の別のページを親として指定する。 (もしこちらをご希望の場合は、親としたいページのURLまたはページIDをお知らせください)
また、作成するページのタイトルは、ファイル名から拡張子 .md を除いた「test」でよろしいでしょうか?
ご返信お待ちしております。
ユーザー: 2の方針でお願いします。スペースキーの指示が間違っていました
アシスタント: 承知いたしました。スペース Cyyyy に、親ページID yyyy の下に、タイトル「test」で新しいページを作成します。
まず、指定されたスペース Cyyyy のスペースIDを特定します。
スペース Cyyyy のスペースIDは yyyy であることを確認しました。
次に、添付されているファイル test.md の内容を読み込みます。
Model provided invalid arguments to read file tool.
失礼しました。ファイルの読み込み範囲の指定に誤りがありました。再度、ファイルの内容を読み込みます。
ファイルの内容を読み込みました。
それでは、Confluenceに新しいページを作成します。
Confluenceページの作成が完了しました。
新しいページの詳細は以下の通りです。
タイトル: test
スペース: yyyy (Cyyyy)
親ページID: yyyy
新しいページID: yyyy
ページURL: https://yyyy
ご確認ください。

まとめ

このような流れで、Cursor と Atlassian MCP を利用して、ローカルのマークダウンファイルから Confluence ページを簡単に作成することができます。

次はzennの投稿もmcpでやりたいです(調べた感じ公式はなさそう? なので自作かも)。

Discussion