AIアシスタント(MCP)を接続する
このアプリはMCPサーバーを実行するため、AIアシスタントが設定を確認し、メールレイアウトの作成や翻訳を行い、HTTPリクエストを管理し、メディアライブラリを直接整理することができます。これにより、設定を何度もコピーしてやりとりする手間が省けます。
このツールでできる便利なこと:フッターテキストを含むマーケティング用レイアウトの草案作成、販売対象のすべての言語へのレイアウト翻訳、ローテーションが間近に迫っている「シークレット」を参照しているメールレイアウトの監査、現在使用されていないアップロード済み画像のすべてを特定、昨日の配信が失敗した原因の分析、あるいはサードパーティAPIのドキュメントに基づいて新しいHTTPリクエストを構築することなどです。
エンドポイント
POST https://shopify.workflow-transactional-email.app/api/mcpトランスポートプロトコルはStreamable HTTPです。認証には、REST APIと同じベアラーキーが使用されます。詳細は 認証とAPIキー をご覧ください。
接続
アプリの**「開発者」ページにある「MCP」**タブでは、Claude、Claude Desktop、Cursor、VS Code、Gemini CLI向けに、URLとキーがすでに記入された、そのままコピーできるコマンドが生成されます。手動で入力するのではなく、そちらをご利用ください。
Claude Codeの場合、コマンドは次のようになります:
claude mcp add --transport http flow-transactional-email \
https://shopify.workflow-transactional-email.app/api/mcp \
--header "Authorization: Bearer fak_your_key_here"JSON設定を使用するエディタの場合、その構造は次のとおりです:
{
"mcpServers": {
"flow-transactional-email": {
"url": "https://shopify.workflow-transactional-email.app/api/mcp",
"headers": {
"Authorization": "Bearer fak_your_key_here"
}
}
}
}利用可能なツール
ツールセットは、キーの権限レベルを反映しています。読み取り専用キーの場合、書き込みツールを呼び出そうとしても単に拒否されるだけでなく、そもそもそのツールがリストに表示されないため、アシスタントにその操作を試みるよう説得することもできません。
読む(15のツール)
メールのレイアウト:list_email_templates、get_email_template、get_layout_schema、list_template_translations、list_template_versions、get_template_version。list_email_templatesでは、q、category(transactional または marketing)、page、limit を受け付けています。
メールの送信元:list_smtp_configs、list_senders
「Secrets」:list_secret_keys(名前のみ)
HTTPリクエスト:list_http_requests、get_http_request
メディア:list_files(各ファイルを参照しているものを確認するには、usage: true を指定してください)
履歴:list_history(statusで絞り込み。これには、受信者全員が配信停止手続きを済ませたマーケティングメールのSKIPPEDも含まれます)、get_history_entry、get_stats
読み書き(12を加える)
メールのレイアウト:create_email_template、update_email_template、delete_email_template
言語:set_template_translation、delete_template_translation、promote_template_translation
バージョン:restore_template_version、restore_template_github_version
HTTPリクエスト:create_http_request、update_http_request、delete_http_request
メディア:delete_file
読み取り、書き込み、実行(1を加算)
test_http_request - 設定されたHTTPリクエストを実際のターゲットに対して実行します。
アシスタントを使って間取りを作成する
まず、アシスタントに「get_layout_schema」を読むようお願いしてください。このドキュメントには、各ブロックのデフォルト設定、使用可能なLiquid、およびビルダー自体によって生成される制限事項を含む、ビジュアルデザインのフォーマットについて説明されています。次に、「create_email_template」では、name、subject、およびbodyDesign(ビジュアル、デフォルト)またはHTML形式のbody(テキスト)を受け付けます。 レイアウトはアプリに即座に表示され、すべての変更はバージョン履歴に保存されるため、アシスタントが行った操作はすべて元に戻すことが可能です。
レイアウトがメールとしてどのように動作するかは、2つのフィールドによって決まります:
category:transactional(デフォルト)またはmarketing。マーケティング用レイアウトでは、配信停止済みの受信者は除外され、配信停止リンクとフッターが表示されます。詳細は マーケティングメールと配信停止 をご覧ください。marketingTexts:[設定]({ unsubscribeText, unsubscribeLinkLabel, companyDetails })にあるショップのフッターテキストの代わりに、マーケティング用レイアウトのフッターテキストを表示します。すべてのフィールドは任意です。nullと指定すると、[設定]のテキストが表示されます。配信停止の文言には、{{ unsubscribe_link }}または{{ unsubscribe_url }}を含める必要があります。
set_template_translation 翻訳済みのコンテンツ全体を使用して、言語を新規に作成するか、既存の言語を置き換えます。 テキストレイアウトの場合、attachments(a list = 当該言語固有のファイル、null = レイアウト固有のファイル、omitted = 変更なし)を指定することも可能です。また、マーケティングレイアウトの場合、レイアウト固有のファイルに加えて、当該言語のmarketingTextsを指定することも可能です。promote_template_translationを指定すると、その言語がレイアウトのメイン言語となります。この際、両者の位置が入れ替わるため、データが失われることはありません。
良い最初の依頼例:
「レイアウトのスキーマを確認した上で、私のレイアウト『Order shipped』をドイツ語とフランス語に翻訳してください。すべてのLiquidタグとURLは、そのままの状態で維持してください。」
書き込みのたびに、アプリでの保存時と同様にチェックが行われます。Liquidの解析が正常に行われ、ファイルがご自身のものかどうかが確認され、ツールは失敗したフィールドを返します。
メディアライブラリの整理
アシスタントの活用法として最適です。ファイルの一覧と使用状況を表示するよう依頼し、参照されていないファイルを削除してください:
「アップロードしたファイルの一覧と使用状況を表示し、どのファイルが使用されていないか教えてください。その後、それらのファイルを削除してください。」
delete_file メールのレイアウトやヘッダー/フッターのプリセットのいずれかに、そのファイルへの参照が残っている場合、409エラーで拒否されます。また、拒否メッセージにはそのファイルを使用している箇所が明記されます。そのため、アシスタントは、たとえ削除を依頼されたとしても、現在使用中のメールでまだ必要とされているロゴを削除することはできません。
アシスタントには決して見えないもの
秘密の値、SMTPのユーザー名やパスワード、あるいはメールボックスのサインイントークンを返すツールは、意図的に用意されていません。list_secret_keysは名前のみを返します。
そこが、この設計の要点です。アシスタントに、決済プロバイダーへの認証を行うHTTPリクエストを作成してもらうことができます。その際、キー自体がモデルのコンテキストに入ることは一切なく、{{ secrets.stripeApiKey }} が正しく参照されるようになります。
MCP経由で返される履歴は、REST経由の場合とまったく同じようにマスキングされます。ここでも同様の注意点があります。つまり、マスキングはフィールド名と値のパターンに対して行われますが、フリーテキストフィールドには依然として個人データが含まれたまま通信される可能性があります。アシスタントに広範囲の履歴を参照させる前に、この点についてよくご検討ください。

