Content MCP Server を使用したAEM コンテンツ処理の高速化

Cursor IDE などの AI を活用した IDE から Content MCP Server を使用して、低レベルの API コードや UI ナビゲーションなしで、自然言語でのAEM コンテンツを操作できます。

このチュートリアルでは、MCP フローを離れることなく、すべて IDE から 低いAEM環境 (RDE または開発)に対して アドベンチャーコンテンツフラグメントの詳細 レビュー 更新 ​ フラグメント(アドベンチャーの価格など)および ​WKND Adventures React アプリ の変更を検証 検証)します。

概要

AEM as a Cloud Serviceには MCP サーバー が用意されているので、IDE やチャットアプリをAEMと安全に連携させることができます。 Content MCP サーバー は、ページ、フラグメント、アセットをサポートします。 詳しくは、AEMの MCP サーバー ​ を参照してください。

開発者による使用方法

Cursor IDE を Content MCP サーバーに接続し、以下のシナリオを実行します。

設定 – カーソルのある Content MCP サーバー

次の手順で、Cursor で Content MCP サーバを設定します。

  1. お使いのマシン上でカーソルを開きます。

  2. カーソルメニューから 設定/カーソル設定 に移動し、設定ウィンドウを開きます。
    カーソル設定

  3. 左側のサイドバーで ツールと MCP をクリックして、そのパネルを開きます。
    ツールと MCP

  4. Add Custom MCP または New MCP Server をクリックして開き、次の設定に貼り付け mcp.json す。

    code language-json
    {
        "mcpServers": {
            // Use this for create, read, update, and delete operations
            "AEM-RDE-Content": {
                "url": "https://mcp.adobeaemcloud.com/adobe/mcp/content"
            },
            //Use this for read-only operations
            "AEM-RDE-Content-Read-Only": {
                "url": "https://mcp.adobeaemcloud.com/adobe/mcp/content-readonly"
            }
        }
    }
    
    note caution
    CAUTION
    チュートリアルのために、上記の設定ではこのチュートリアルに コンテンツコンテンツ(読み取り専用) の両方を追加しています。 実際には、コンテンツ には、すべての コンテンツ(読み取り専用) オファーに加え、作成/更新/削除ツールが既に含まれています。
    コンテンツの作成、変更または削除の可能性を回避する場合は、コンテンツ(読み取り専用)/content-readonly)のみを設定し、コンテンツ/content)は省略します。 こうすることで、誤って変更することを回避できます。

    AEM MCP サーバーの追加

  5. Cursor Settings ウィンドウで、Connect をクリックして認証プロセスを開始します。 OAuth 2.0 PKCE フローを使用して、AEM MCP サーバーにアクセスするための ユーザー固有のアクセストークン を取得します。
    AEM MCP サーバーへの接続

  6. Adobe IDでログインし、Cursor Settings ウィンドウに戻ります。
    Adobe IDでログイン

  7. AEM-RDE-Content-Read-Only} および 2}AEM-RDE-Content} が接続済みとして表示され ことを確認します。​各サーバーを展開して、そのツールを表示できます。

    AEM MCP サーバー

設定 – WKND アドベンチャー React アプリ

次に、カーソルで WKND Adventures React アプリ ​ を設定します。

  1. お使いのマシン上で次の 2 つのリポジトリのクローンを作成します。

    code language-bash
    ## WKND GraphQL repo, the `react-app` folder is the WKND Adventures app
    $ git clone git@github.com:adobe/aem-guides-wknd-graphql.git
    
    ## WKND Site repo, you deploy this to RDE so the app can use its content fragments data via GraphQL
    $ git clone git@github.com:adobe/aem-guides-wknd.git
    
  2. WKND Site プロジェクトを RDE にデプロイします。 詳しい手順については、​ 迅速な開発環境の使用方法 ​ を参照してください。

  3. IDE で react-app フォルダーを開きます。

  4. .env.development を編集して設定します。

    • REACT_APP_HOST_URI:RDE オーサー URL
    • REACT_APP_AUTH_METHOD: basic
    • REACT_APP_BASIC_AUTH_USER および REACT_APP_AEM_AUTH_PASSWORD:aem-headless にする(このユーザーを RDE で作成して administrators グループに追加する)
  5. IDE ターミナルから、次を実行します。

    code language-bash
    $ cd aem-guides-wknd-graphql/react-app
    $ npm install
    $ npm start
    
  6. ブラウザーで、http://localhost:3000 に移動して、WKND Adventures アプリを表示します。

    React アプリ - WKND アドベンチャー

生産性向上シナリオ - AEMのコンテンツのレビューと更新

シンプルなルールが満たされた際に、アドベンチャーカードに HOT DEAL バナーを表示する必要があるとします。 通常のアプローチは次のとおりです。

  • Adventure cards コンポーネントコードを確認します
  • バナーを表示するタイミングのロジックを追加します
  • AEMの Adventure コンテンツフラグメントモデルを確認します
  • 1 つ以上の Adventure フラグメントプロパティを変更して、ルールをテストします

シンプルにするために、アドベンチャーの価格が 100 ドル未満の場合に HOT DEAL バナーを表示してみましょう。

React アプリは RDE 環境からデータを取得するので、Adventure コンテンツフラグメントモデルを理解してから、適切なフラグメントプロパティを更新する必要があります。 AEM Content MCP Server は、まさにこれに役立ちます。 方法は次のとおりです。

  1. カーソルで新しいチャットを開き、次のように入力します。

    code language-text
    I want to review my Content Fragment Models from AEM RDE, can you list the Adventure Content Fragment details.
    

    コンテンツフラグメントモデルを確認

    Content MCP サーバーを呼び出す前に、続行を確認するメッセージが表示されます。 したがって、コンテンツ操作を制御し続けることができます。

    AI は、Content MCP サーバーを使用してデータを取得し、明確かつ構造化された方法で表示します。 これには、コンテンツフラグメントモデルの詳細、フラグメント数および概要情報が含まれます。

  2. HOT DEAL バナーをトリガーにするには、1 つのアドベンチャーの価格を更新します。 同じチャットで、次の操作を試します。

    code language-text
    Can you update adventure Beervana in Portland's price to 99.99
    

    アドベンチャー価格を更新

    同様に、AI は、コンテンツを更新する前に続行することを確認するように求めます。 また、更新前と更新後のコンテンツ操作の概要も説明します。

  3. React アプリで、Beervana カードに HOT DEAL バナーが表示されていることを確認します。

    ホット・ディール・バナーの確認

追加のプロンプト

(Content MCP サーバーが接続された状態で) IDE でコンテンツに焦点を当てたプロンプトを試して、より多くのワークフローと機能を調べます。

  • コンテンツを見つける:

    code language-text
    List all content fragments in the WKND Adventures folder
    
    List all WKND Site pages from US English site
    
    Can you give me page metadata for Tahoe Skiing English page?
    
    List assets of Bali Surf camp
    
    What Content Fragment models are available in this environment?
    
  • コンテンツの検索:

    code language-text
    Search for content fragments that mention 'cycling'
    
    Do we have a magazine page in US English site with "Camping" in it
    
  • コンテンツを更新:

    code language-text
    In WKND US English create a copy of Downhill Skiing Wyoming as "Test Downhill Skiing Wyoming"
    
    In newly created "Test Downhill Skiing Wyoming" please change title to "Duplicated Page"
    
  • 公開または非公開:

    code language-text
    Can you publish the page at /us/en/adventures/test-downhill-skiing-wyoming and give me publish page URL
    
    Can you unpublish the test-downhill-skiing-wyoming page
    

概要

AEM Content MCP Server を Cursor で設定し、RDE (または開発)環境に接続しました。 次に、WKND Adventures React アプリを使用し、自然言語でチャットして、アドベンチャーコンテンツフラグメントの詳細を確認しました。 また、各コンテンツ操作の前に、フラグメントの価格を更新し、AI が確認を求めるようにしました。 実行中のアプリで変更を確認しました。 IDE から同じ人間中心のフローを使用して、AEM UI に切り替えたり、低レベルの API コードを記述したりすることなく、AEM コンテンツをレビュー、更新および作成できます。

recommendation-more-help
4859a77c-7971-4ac9-8f5c-4260823c6f69