5
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Oracle IntegrationのMCPサーバーを有効化して、MCPクライアントからツールを実行してみた

5
Last updated at Posted at 2026-08-19

はじめに

Oracle Integration(OIC) は、Oracle Cloud Infrastructure(OCI)が提供するiPaaS(Integration Platform as a Service)です。Oracle SaaSやOCIサービス、オンプレミスシステムなどを連携し、業務プロセスの自動化やAPI連携を実現します。近年では、MCP ServerやHuman in the Loop(HITL)などAIエージェント向けの機能も強化されており、AIエージェントからERPやSaaSを安全に呼び出し、業務処理を実行できるプラットフォームとしても活用できます。

この記事では、以下ドキュメントを元に、OICのMCPサーバーを有効化し、MCPクライアントからの接続・実行をステップ・バイ・ステップで紹介します。

前提条件

以下のQiita記事で紹介したOICのAIエージェントのチュートリアルを実施済みであること。

チュートリアル全体像

image.png

OICのMCPサーバーについて

OICのMCPサーバーはプロジェクト単位に有効/無効を構成します。デフォルトは無効です。

MCPサーバーを有効にすると、プロジェクト内でエージェント型AIツールとして作成された統合が、MCPサーバー上で利用可能となります。これにより、OICで作成した統合をMCPのツールとして公開し、MCPに対応した外部のAIエージェントやクライアントから呼び出すことができます。

また、プロジェクト毎に固有のMCPサーバーのURLが払い出されます。URLのフォーマットは以下のとおりです。

https://<OICインスタンスのランタイムURL>/mcp-server/v1/projects/<プロジェクト識別子>/mcp

OICのMCPサーバーでサポートされる操作は、以下の2つです。

  • tools/list : 利用可能なツールの一覧を取得
  • tools/call : 指定したツールを実行

なお、MCPクライアントから、OICのプロジェクトのMCPサーバーを利用するには、OAuth 2.0による認証が必要です。OICインスタンスが紐づけられたアイデンティティ・ドメインに対して、機密アプリケーション(Confidential Application) を作成し、スコープとロールを割り当て、アクティブ化する必要があります。
つまり、MCPクライアントがOICの統合を実行するための認証・認可を、機密アプリケーションとOAuthトークンを使って行います。

作業ステップ

1. 事前準備
2.プロジェクトでMCPサーバー機能を有効化する
3. MCPサーバーのURLを取得する
4. MCPクライアントから接続する

1. 事前準備

MCPクライアントからOICのMCPサーバーに接続するには、アイデンティティ・ドメインに機密アプリケーション(Confidential Application) の作成が必要です。また、作成した機密アプリケーションにはOICインスタンスのServiceInvokerアプリケーション・ロールを付与します。MCPクライアントはこの機密アプリケーションを利用してOAuthトークンを取得し、MCPサーバーを利用します。

image.png

OAuth認証の構成手順は、以下のQiita記事やYouTube動画も参考になりますので、あわせてご確認ください。

1.1 機密アプリケーションの作成

  1. OCIコンソールからOICインスタンスが紐付けられたアイデンティティ・ドメインを開きます。

  2. 統合アプリケーションタブをクリックします。

  3. アプリケーションの追加をクリックします。
    image.png

  4. 機密アプリケーションを選択し、ワークフローの起動をクリックします。
    image.png

  5. 名前(ここではOIC_MCP_Client)を入力し、送信をクリックします。
    image.png

  6. OAuth構成タブをクリックします。

    1. リソース・サーバー構成OAuth構成の編集をクリックします。
      image.png

    2. クライアント構成で、このアプリケーションをクライアントとして今すぐ構成しますを選択します。

    3. 認可許可される権限付与タイプで、クライアント資格証明を選択します。
      image.png

    4. 下にスクロールし、クライアント・タイプ機密を選択します。
      image.png

    5. 下にスクロールし、トークン発行ポリシー認可されたリソース特定を選択します。

    6. リソースの追加のトグルをクリックし、有効にします。

    7. リソースセクション内のスコープの追加をクリックします。
      image.png

    8. OICインスタンス作成時に指定した名前(ここではsnakaoic1)を探します。もしくは、検索ボックスにOICインスタンス名を入力し、検索を実行します。

    9. OICインスタンス名を開きます。

    10. 範囲の選択よりURLの末尾が /ic/api/urn:opc:resource:consumer::allの2つを選択し、追加をクリックします。
      image.png

    11. リソースセクションに選択した2つのスコープが追加されたことを確認し、送信をクリックします。
      image.png

1.2 機密アプリケーションにアプリケーション・ロールを付与

  1. OCIコンソールからOICインスタンスが紐付けられたアイデンティティ・ドメインを開きます。

  2. Oracle Cloudサービスタブをクリックします。

  3. Oracle Cloudサービスセクションで、OICインスタンス作成時に指定した名前を含むアプリケーションを探します。もしくは、検索ボックスにOICインスタンス名(ここではsnakaoic1)を入力し、検索を実行します。

  4. OICインスタンス名を含むアプリケーション(ここではsnakaoic1-xxx-ia)をクリックします。
    image.png

  5. アプリケーション・ロールタブをクリックします。

  6. アプリケーション・ロールセクションからServiceInvoker列の右端のメニューをクリックし、アプリケーションの管理を選択します。
    image.png

  7. アプリケーションの割当てをクリックします。
    image.png

  8. 使用可能なアプリケーションから、前の手順で作成した機密アプリケーション(ここではOIC_MCP_Client)を選択します。もしくは、検索ボックスに機密アプリケーションの名前(ここではOIC_MCP_Client)を入力し、検索を実行します。

  9. 機密アプリケーション(ここではOIC_MCP_Client)を選択した状態で、割当てをクリックします。
    image.png

  10. 閉じるをクリックします。

OICには、機能へのアクセスを制御する標準のロール・セットが用意されています。今回利用したServiceInvokerを含むOICで使用可能なロールと、そのロールを割り当てられたユーザーやアプリケーションが実行できる一般的なタスクは、以下のページをご確認ください。

https://docs.oracle.com/ja-jp/iaas/application-integration/doc/oracle-integration-roles.html#GUID-1D5ADE79-B714-4D76-9F07-ABD1692CFEDE

1.3 機密アプリケーションの有効化

  1. OCIコンソールからOICインスタンスが紐付けられたアイデンティティ・ドメインを開きます。

  2. 統合アプリケーションタブをクリックします。

  3. 1.1で作成した機密アプリケーション(ここではOIC_MCP_Client)を選択し、右端のメニューからアクティブ化をクリックします。
    image.png

  4. 確認ダイアログが表示されます。アプリケーションのアクティブ化をクリックします。

  5. アクティブ化を実行した機密アプリケーション(ここではOIC_MCP_Client)をクリックします。

  6. OAuth構成タブをクリックします。

  7. クライアントIDクライアント・シークレットをコピーし、メモしておきます。
    image.png

  8. リソースセクションで、スコープの末尾がurn:opc:resource:consumer::allのURL全体をコピーし、メモしておきます。
    image.png

  9. OCIコンソールからOICインスタンスが紐付けられたアイデンティティ・ドメインを開きます。

  10. 詳細タブをクリックし、ドメインURLをコピーし、メモしておきます。
    image.png

1.4 OAuthトークンの発行

アイデンティティ・ドメインのOAuthトークン発行のREST APIを実行し、OAuthトークンを取得します。

  1. クライアントIDクライアント・シークレットを利用してBase64エンコードを実行します。以下はクライアントID=12345クライアント・シークレット:ABCDEFGの場合の実行例です。

    echo -n "12345:ABCDEFG" | base64 -w 0
    
  2. 前の手順で作成したBase64エンコードされた認証情報を利用して、OAuthトークンを取得します。以下のcurlコマンドの実行例です。

    curl -i \
    -H "Authorization: Basic <Base64エンコードしたClientID:ClientSecret>" \
    -H "Content-Type: application/x-www-form-urlencoded;charset=UTF-8" \
    --request POST "<コピーしたドメインURL>/oauth2/v1/token" \
    -d "grant_type=client_credentials&scope=<コピーしたスコープのURL全体>"
    
  3. 実行結果例です。access_tokenがOAuthトークンで、有効期限は3600秒(1時間)です。なお、以下のaccess_tokenは説明用のダミー値です。

    {
        "access_token":"eyJ4NXQjUzI1NiI6Ik1HS3B2UEl4OTlLYTN1VE5xOUgxUXZIRUc0dnN0NGlyUE.
    〜省略〜
    MAWvYUG94fKqTCMxqVTza8rjMCW2_caBwA01AJUe9VjdwLaCANTB2sAJpA",
        "token_type":"Bearer",
        "expires_in":3600
    }
    

クライアント・シークレットや取得したOAuthトークンは認証情報のため、外部に公開しないよう注意してください。

2. プロジェクトでMCPサーバー機能を有効化する

作成済プロジェクトのMCPサーバーを有効化します。
image.png

  1. OICインスタンスを開き、前提条件のチュートリアルで作成したプロジェクト(ここではSimple Expense Approval Project)を開きます。

  2. 左ナビゲーションのAIエージェントをクリックします。

  3. ツールセクションに、以前に登録したツールが表示されることを確認します(ここではAuto Approve Expense Report)。
    image.png

  4. 右上の編集アイコンをクリックします。
    image.png

  5. 詳細の編集より、MCPサーバーの有効化を選択し、変更の保存をクリックします。
    image.png

3. MCPサーバーのURLを取得する

  1. OICインスタンスを開き、前提条件のチュートリアルで作成したプロジェクト(ここではSimple Expense Approval Project)を開きます。

  2. 右上の編集アイコンをクリックします。

  3. mcpサーバーの実行場所のURLが、MCPサーバーのURLです。コピーし、メモしておきます。
    image.png

  4. 取消をクリックします。

4. MCPクライアントから接続する

OICのプロジェクトで動作するMCPサーバーに、任意のMCPクライアントからアクセスします。ここではPostmanを利用した例を紹介します。

image.png

4.1 OICのMCPサーバーに接続する

  1. Postmanを起動します。

  2. 追加(+)アイコンをクリックし、MCPを選択します。
    image.png

  3. Transport LayerHTTPに切り替えます。

  4. URL欄にMCPサーバーのURLを入力します。

  5. Authorizationタブをクリックします。

  6. Auth typeで、Bearer Tokenを選択します。

  7. Tokenに、前の手順で取得したOAuthトークンを入力します。

  8. Connectをクリックします。
    image.png

  9. ResponseConnectedと表示されればMCPサーバーとの接続完了です。
    image.png

4.2 MCPクライアントからツールを実行する

  1. Messageタブをクリックし、続けてToolsタブをクリックします。

  2. ツールとして公開したAUTO_APPROVE_EXPENSE_REPORTを選択します。

  3. AmountClaimedに金額(ここでは $45)を入力し、Runをクリックします。
    image.png

  4. しばらくすると、応答が返されます。AutoApproveResponseに、Expense Report claimed for $45 is automatically approvedと表示されることを確認します。
    image.png

  5. AmountClaimedに設定する金額(ここでは $200)を変えて実行(Run)すると、AutoApproveResponseのメッセージの金額もあわせて変更されることを確認します。
    image.png

なお、前回の記事ではAIエージェントが$50以下の場合のみ承認という判断を行っていました。今回はMCPクライアントから統合(ツール)を直接実行しているため、AIエージェントのガイドラインによる判定は行われず、$200を指定した場合でも統合自体は実行されます。

4.3 OICでMCPクライアントの実行結果を確認する

  1. OICコンソールのプロジェクト(ここではSimple Expense Approval Project)を開きます。

  2. 監視タブをクリックします。

  3. インスタンスタブをクリックします。

  4. MCPクライアントから実行した回数だけ、ログが取得されていることを確認します。一番上のプライマリ識別子AmountClaimed: $200詳細の表示アイコン(アクティビティ・ストリーム)を開きます。
    image.png

  5. ツールとして登録したAuto Approve Expense Reportの統合が、正しく実行されていることを確認します。
    image.png

アクティビティ・ストリームの一番上のログにWed Aug 19 04:16:46.411 PM JST 2026, c75935...によりトリガーc75935...は事前準備で作成した機密アプリケーション(ここではOIC_MCP_Client)のクライアントIDと一致します。
これにより、機密アプリケーションOIC_MCP_Clientで認証されたクライアント・アプリケーション(今回はPostmanのMCPクライアント)から実行されたことが確認できます。

おわりに

このチュートリアルでは、Oracle IntegrationでMCPサーバーを有効化し、MCPクライアントからの接続・実行をステップ・バイ・ステップで紹介しました。

プロジェクト内で登録されたツール(統合)は、MCPサーバーを有効化することだけで、簡単にMCPクライアントから利用できるようになりました。これにより、外部のAIエージェントからOICの統合をツールとして利用することが容易になります。

また、MCPクライアントからのツール実行は、OIC側の実行ログとして記録されるため、いつ、どの統合が実行されたのかを確認できます。

次回以降、Human in the Loop(HITL)を組み合わせた、より実践的なAIエージェントの構築方法についても紹介していきます。

5
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?