広告

Show Dev: API統合をAIで2倍高速化する方法

Dev.to / 2026/4/3

💬 オピニオンTools & Practical Usage

要点

  • 社内の実験では、CursorにPayPal APIの統合を任せた場合、AIが生成した試みが古い非推奨のSDK/ドキュメントに依存することが多く、現在の公式のPayPal Server SDKを使われないことがわかった。
  • この記事では、Web検索とモデルの記憶だけに頼ると、APIのドキュメントやSDKが変わっていくため、またAIが多数の実装詳細を推測しなければならないため、API統合のミスが頻発すると主張している。
  • この課題に対処するため、チームは「Context Plugins」を構築し、OpenAPI仕様から最新のSDKを生成し、さらに構造化されLLM向けに最適化されたAPI統合コンテキストを公開するMCPサーバーを作った。
  • 提案するワークフローは、提供者がOpenAPI仕様をAPIMaticにアップロードし、複数言語のSDKとMCPサーバーを生成して、それをIDEのコーディング支援アシスタントにインストールし、正しい認証フロー、インターフェース、パターンを問い合わせられるようにする、というもの。
  • 重要な洞察は、OpenAPI仕様だけではAIエージェントに十分なコンテキストが提供されないという点であり、SDKのコンテキストを与えることで、動作する統合を作るために必要な推論チェーンを減らせる。

チームで実験を行いました:

私たち各自が、Cursorに対して複数回、PayPal APIをEC(eコマース)アプリに組み込むよう依頼しました。

以下は、すべての試行を通した結果です:

  • 試行の13%で、廃止予定のPayPal SDKが読み込まれた
  • 試行の87%で、廃止予定のPayPalドキュメントに基づくAPI呼び出しが生成された
  • 試行の0%で、現在の公式PayPal Server SDKが使用された

注目すべきポイントがあります。PayPalは、自社のAPI向けに公式のAPIドキュメントとSDKを提供しています。それでもAIはそれらを一度も使いませんでした。代わりに、ブログ記事、Stack Overflowの回答、そして古い学習データ(PayPalは非常に有名なAPIなので)を寄せ集めてコードを組み立てたのです。

これはPayPal固有の問題ではありません。世の中には無数のAPIがあります。ドキュメントは変わります。SDKは進化します。新しいAPIバージョンも登場します。

AIアシスタントがWeb検索やモデルの記憶だけでAPI統合を試みると、誤りはほぼ避けられません。開発者は、そもそもAIを使うことで節約できた時間よりも、AIの出力をデバッグする時間に多くを費やしてしまいます。

How we solved this problem

私たちはContext Pluginsを構築しました。OpenAPIの仕様が与えられれば、SDKを生成し、MCPサーバーを用意して、AIのコーディングアシスタントに構造化されたAPIコンテキストを公開します。

これにより、古い学習データやGitHubからかき集めたコードに頼るのではなく、SDKドキュメントやAPI統合パターンを含む包括的で最新のAPIコンテキストが、Cursorのようなツールから参照できるようになります。

仕組みは次のとおりです:

  1. API提供者がOpenAPIの仕様をAPIMaticにアップロードする
  2. 私たちが複数のプログラミング言語で高品質なSDKを生成する
  3. LLM向けに最適化した、言語固有のSDKコンテキストを公開するツールとプロンプトを備えたMCPサーバーを生成する
  4. 開発者がMCPサーバーをIDE(Cursor、Claude Code、またはGitHub Copilot)にインストールする

開発者がAPI統合を依頼すると、コーディングアシスタントがMCPサーバーに問い合わせ、必要なコンテキスト(認証フロー、統合パターン、最新のSDKバージョン、SDKインターフェース)を取得し、当て推量ではなく公式SDKを使ってコードを生成します。

途中で得られた重要な洞察は次のとおりです:

OpenAPIの仕様やAPI Referenceドキュメントだけでは、AIエージェントに十分なコンテキストになりません。 それらはエンドポイント/操作とスキーマを説明しますが、AIはそれでも認証の扱い、ページネーション、エラーハンドリングをどうするかを推測し、そのすべてを動作するコードに変換しなければなりません。これは推測の長い鎖であり、追加のステップが増えるほど、失敗する可能性が増えます。

SDKとSDKコンテキストは、その鎖を短くします。複雑さの大部分はライブラリにすでに包み込まれているため、モデルは統合をゼロから作り上げるのではなく、どのメソッドを呼び出し、どのように組み合わせるべきかを把握できます。


PayPalとのパイロットを開始しました。 PayPal Developer Portal で公開されています。ぜひご覧ください!

The benchmarks

私たちは、実運用の2つの.NETアプリケーションで、4つの統制実験を行いました。nopCommerce(成熟したECプラットフォーム)とeShop(Microsoftの.NET参照アプリ)です。

同じIDEとモデルで、Context Pluginsの有無を変えて同一のタスクを実行しました。

context pluginsでAPIを統合する

context pluginsなしでAPIを統合する

Aggregate results across all 4 experiments:

指標 プラグインなし プラグインあり 改善
エラー 平均16 平均1.5 ↓ 91%
必要なプロンプト数 平均34 平均15.5 ↓ 54%
消費トークン数 平均57M 平均20M ↓ 65%
手動修正 平均2.75 0 ↓ 100%

What went wrong without the plugin (real examples):

  • SDKクラスが存在しないと“幻覚”した—エージェントはOAuthAuthorizationControllerがSDK内にないと判断し、独自の置き換えを作成した
  • 推測による29件以上のコンパイルエラー(モデルの形、列挙型、名前空間など)
  • セキュリティ脆弱性—URLインジェクションにより、IDの不一致があっても注文を取得可能にした;?paid=1というクエリパラメータが誤って決済承認を引き起こした
  • 廃止予定のSDKバージョンを選択—v2.0.0を使うよう指示されていたにもかかわらず
  • Web検索のAPI知識に依存したときの33%の“幻覚”率

What happened with the plugin:

  • すべての実験で“幻覚”はゼロ
  • 生成されたコードに必要な手動修正はゼロ
  • エージェントがコードを書く前に、MCPツール呼び出しで知識を事前に検証した
  • 4回の実験のうち3回で、最初の試行からコンパイルが通った
  • eShopの統合における200行以上の手動HTTPボイラープレートを削減
  • AIは平均で統合を2倍の速さで完了した

詳細な実験ログ付きの全文のケーススタディはこちら: Context Plugins Case Study

Try it yourself

プロダクトのショーケースで、いくつかのAPI向けにContext Pluginsを公開しています。最も早く試す方法はこちらです:

Try the Context Plugins Showcase

APIを選んで(PayPal、Twilio、Stripe、Google Maps、Spotify、Slack、Adyenなど)、IDEにMCPサーバーをインストールし、構築を始めてください。

What we learned from developers trying this

私たちのベンチマークと初期のユーザーテストから、いくつかのパターンが見えてきました:

信頼は“根拠(grounding)”に従ってついてくる。 モデルがSDKのメソッド名やライブラリのドキュメントを、目に見える形で参照している場合、AIの出力に対する開発者の安心感は大きくなります。Web検索や学習データをつぎはぎしているように見える場合とは対照的です。アウトプットの正しさと同じくらい、コンテキストの出どころが重要です。

返却形式: {"translated": "翻訳されたHTML"}

「二重責任」問題は実際にあります。 AIエージェントが、API の調査 と統合の実装を同時に行わなければならない場合、どちらの品質も低下します。コンテキストプラグインはそれらの関心事を分離します——MCPサーバーが権威あるAPI知識を提供し、エージェントがコーディングを担当します。この分業は一貫してより良い結果を生み出します。

開発者はすでに、この問題への解決策をいろいろ工夫して実現しています。 開発者は、自分でスキルや AGENT.md ファイルを書いて、AIエージェントが使用するAPIに対して正しい統合コードを書けるようにしようとします。これは試行錯誤を伴い、APIが進化するのに合わせてローカルのコンテキストを継続的に更新する必要があります。

ぜひコミュニティの皆さんの声を聞きたいです:

  • 遭遇した最悪の、AI生成によるAPI統合のバグは何ですか? 障害パターンを収集して、コンテキストのカバー範囲を改善しています。ゾッとするような話も大歓迎です。
  • コーディング支援ツールのために、現在どのようにAPIコンテキストを扱っていますか? AGENTS.md ファイルですか? カスタムMCPサーバーですか? それとも別の方法でしょうか?

広告