API・JSON入門【2026】AIエージェントの“手足”をやさしく解説(APIキー・MCPまで)
AIエージェントが「メールを送る」「広告の成果を集計する」「天気を調べる」といった行動をとれるのは、世の中のサービスがAPIという窓口を開けてくれているからです。そして、その窓口でやりとりされる注文票の書き方がJSONです。第4章では、実際のClaude APIのリクエストとレスポンスを読みながら、AIエージェントの“手足”の正体を解き明かします。
- APIはサービスの「窓口」、JSONは決まった書式の「注文票」。AIのAPIも、広告のAPIも、この形は同じ
- AIのAPIはトークン(文字のかけら)単位の従量課金。APIキーは「財布と直結したカード」なので.envに置き、GitHubに上げない
- AIエージェントのツール呼び出しは、AIが「このAPIをこの引数で呼んで」とJSONで指示し、プログラムが実際に呼ぶ仕組み
- MCPは、AIとツールをつなぐ共通規格=AIのUSB-C。一度つなげば、対応するAIアプリから同じ道具を使える
APIとは?「窓口」と「注文票」で考える
API(Application Programming Interface)は、ひとことで言えば「プログラム同士がやりとりするための窓口」です。人間向けの窓口が画面(Webサイトやアプリ)だとすれば、APIはプログラム向けの窓口です。
役所の窓口を思い浮かべてください。
- 窓口は用件ごとに分かれている(住民票はこちら、転入届はこちら)
- 決まった申請書(注文票)に、決まった項目を書いて出す
- 本人確認のために身分証を見せる
- 窓口の奥で職員が何をしているかは知らなくてよい。書式どおりに出せば、結果が返ってくる
APIもまったく同じです。用件ごとの窓口がエンドポイント、申請書の書式がJSON、身分証がAPIキーにあたります。そして「中の仕組みを知らなくても、書式どおりに頼めば使える」のがAPIの最大の価値です。Claudeの中でどんな計算が行われているかを知らなくても、注文票さえ正しく書けば、誰でも世界最先端のAIを自分のプログラムから使えるのです。
第3章のレストランのたとえでいえば、APIはホール係と注文票。お客さん(呼び出す側)は厨房(サービスの中身)に入らず、注文票を通して料理を受け取ります。


REST・エンドポイント・リクエストとレスポンス
リクエストとレスポンス
APIのやりとりは、第1章で学んだHTTPのリクエスト(お願い)とレスポンス(返事)の1往復が基本です。リクエストには次の4つが入っています。
| 部品 | 中身 | 窓口でいうと |
|---|---|---|
| メソッド | GET(取得)、POST(作成・送信)、PUT/PATCH(更新)、DELETE(削除) | 「見せて」「出します」「直して」「取り消して」 |
| URL(エンドポイント) | どの窓口か(例:https://api.anthropic.com/v1/messages) | 窓口の番号 |
| ヘッダ | APIキー、データの形式などの付帯情報 | 身分証・書類の種類 |
| ボディ | 送りたいデータ本体(多くはJSON) | 申請書の中身 |
レスポンスには、ステータスコード(結果を表す3桁の数字)と、ボディ(返事の中身)が入っています。
| コード | 意味 | よくある原因 |
|---|---|---|
| 200 | 成功 | — |
| 400 | リクエストの書き方がおかしい | JSONの形が違う、必要な項目がない、古いパラメータを使っている |
| 401 | 認証エラー(あなたは誰?) | APIキーがない・間違っている |
| 403 | 権限がない | キーはあるが、その操作が許可されていない |
| 404 | 窓口が見つからない | URLの打ち間違い |
| 429 | 呼びすぎ(レート制限) | 短時間に大量のリクエスト |
| 500番台 | 相手側のエラー | サービス側の障害。Anthropicでは混雑時に529(overloaded)が返ることもある |
REST(レスト)という作法
Web APIの多くはRESTという作法に沿って作られています。ざっくり言うと「URLで“何を”、メソッドで“どうする”を表す」という約束ごとです。
GET /tasks # タスクの一覧を見せて
POST /tasks # 新しいタスクを作って
GET /tasks/42 # 42番のタスクを見せて
PATCH /tasks/42 # 42番のタスクを一部直して
DELETE /tasks/42 # 42番のタスクを消してこのように作法がそろっていると、初めて使うAPIでも「たぶんこう呼べばいい」と見当がつきます。AIエージェントがさまざまなAPIを使いこなせるのも、多くのAPIがこうした共通の作法と、APIドキュメント(取扱説明書)を公開しているからです。なお、Claude APIの POST /v1/messages のように、AIのAPIは「送った内容に対して答えを作る」処理が中心なので、ほとんどがPOSTです。
JSONの読み方:Claude APIの返事を読み解く
JSON(ジェイソン)は、データを書くための書式です。人間にも読めて、プログラムにも扱いやすいため、APIのやりとりの事実上の標準になっています。ルールはたったこれだけです。
{ }(波かっこ)=オブジェクト:「名前: 値」のセットの集まり。名前は必ず"(ダブルクォート)で囲む[ ](角かっこ)=配列:値を順番に並べたリスト- 値に使えるのは、文字列(
"...")、数値、true/false、null(なし)、オブジェクト、配列
では、Claude APIが返してくるレスポンスを、少し簡略化して読んでみましょう。
{
"id": "msg_01AbC...",
"type": "message",
"role": "assistant",
"model": "claude-opus-5",
"content": [
{ "type": "text", "text": "こんにちは!何をお手伝いしましょうか?" }
],
"stop_reason": "end_turn",
"usage": { "input_tokens": 12, "output_tokens": 18 }
}上から順に読んでいきます。
"id":このメッセージの受付番号。問い合わせやログで使う"role": "assistant":これはAI側の発言ですよ、という印"model":答えを作ったモデル"content":答えの本体。[ ]なので配列、つまり複数のかたまり(ブロック)が入りうる。今回はテキストのブロックが1つだけ。ツールを使うときは、ここに"type": "tool_use"のブロックが入る(後述)"stop_reason":なぜ生成が止まったか。end_turnは「言い終わった」。max_tokensなら「長さの上限で途中で切れた」、tool_useなら「ツールを使いたい」"usage":使ったトークン数。料金はここから計算される
プログラムで答えの文章だけを取り出すには、「content の中から type が text のものを探して、その text を読む」とします。第3章のコードで if b.type == "text" と書いていたのは、この構造を読んでいたのです。
{ } の「名前」だけを先に拾うと構造が見えます。長いJSONは、AIに「このJSONの構造を表にして説明して」と頼むのも有効です。
APIキーと認証ヘッダ:curlでClaude APIを呼ぶ
APIキーは、「このリクエストは誰からのものか」を証明する長い文字列です。サービスの管理画面(Claudeなら Claude Console)で発行します。APIキーはリクエストのヘッダに入れて送ります。
では実際に、curl(カール)というコマンドでClaude APIを呼んでみましょう。curlは「ターミナルからHTTPリクエストを送る道具」で、macOSやLinux、最近のWindowsにも標準で入っています。
# 事前に APIキーを環境変数にセットしておく(キーは自分のものに置き換え)
export ANTHROPIC_API_KEY="sk-ant-..."
curl https://api.anthropic.com/v1/messages \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{
"model": "claude-opus-5",
"max_tokens": 1024,
"messages": [
{"role": "user", "content": "APIを小学生にも分かるように一言で説明して"}
]
}'1行ずつ意味を見ていきます。
curl https://api.anthropic.com/v1/messages:送り先の窓口(エンドポイント)。-dでデータを付けると、curlは自動でPOSTとして送る-H "x-api-key: ...":-Hはヘッダを付けるという意味。APIキー(身分証)をここで渡す。$ANTHROPIC_API_KEYと書くことで、コマンドにキーそのものを書かずに環境変数から埋め込める-H "anthropic-version: 2023-06-01":APIの取り決めのバージョン。「この書式ルールで話します」という宣言で、日付はモデルの新しさとは関係ない-H "content-type: application/json":「ボディはJSONで書いてあります」という宣言-d '{ ... }':ボディ(注文票の中身)。modelは使うモデル、max_tokensは答えの長さの上限、messagesは会話の中身
成功すると、先ほど読んだような形のJSONが返ってきます。認証のヘッダ名はサービスによって違い、多くのAPIでは Authorization: Bearer <トークン> という形も使われます。どの形で送るかは各サービスのAPIドキュメントに書いてあります。
-H "x-api-key: sk-ant-xxxx" のようにキーを直接書くと、ターミナルの履歴に残ったり、画面共有やスクリーンショットで漏れたりします。上の例のように環境変数から読むクセをつけましょう。仕様は執筆時点(2026年9月)のものです。最新はAnthropic公式ドキュメントで確認してください。
料金はトークン課金:トークンとは?
AIのAPIの多くは、使った分だけ払う従量課金で、その単位がトークンです。トークンとは、AIが文章を処理するときの「文字のかけら」のこと。英語ならおおむね単語や単語の一部、日本語なら1〜数文字ほどがひとかたまりになります。正確な数え方はモデルによって異なるため、実際の数はレスポンスの usage で確認するのが確実です。
料金は入力(送った分)と出力(AIが書いた分)で単価が分かれていて、一般に出力のほうが高く設定されています。執筆時点(2026年9月)のClaudeの主なモデルの料金は次のとおりです。
| モデルID | 入力(100万トークンあたり) | 出力(100万トークンあたり) | 特徴 |
|---|---|---|---|
claude-fable-5-1 | $10 | $50 | 最上位。最も難しい仕事向け |
claude-opus-5 | $5 | $25 | 標準の推奨。高性能 |
claude-sonnet-5 | $2 | $10 | 性能と価格のバランス |
claude-haiku-4-5 | $1 | $5 | 安価・高速。大量処理向け |
計算してみましょう。claude-opus-5 に入力2,000トークン・出力500トークンのやりとりをすると、
- 入力:2,000 ÷ 1,000,000 × $5 = $0.01
- 出力:500 ÷ 1,000,000 × $25 = $0.0125
- 合計:約$0.0225(1回あたり数円)
1回なら小さな金額ですが、AIエージェントはループの中で何度もAPIを呼び、そのたびに会話履歴やツールの結果をまるごと送り直します。長い資料を読ませたり、ツールを何十回も使ったりすると、1つの仕事で数百円〜それ以上になることもあります。大量処理には安いモデルを使う、変わらない部分をプロンプトキャッシュで安くする(キャッシュからの読み込みは入力料金の約1/10)、急がない処理はBatch API(約50%安い)を使う、といった工夫が効きます。料金は変わることがあるので、必ず公式の料金ページで最新を確認してください。モデルの違いはLLMモデル比較でも解説しています。
レート制限(429)とWebhook
レート制限:「呼びすぎ」のブレーキ
多くのAPIにはレート制限があります。「1分間に何回まで」「1分間に何トークンまで」のように、一定時間に使える量の上限です。人気のラーメン屋が「1人1杯まで・整理券制」にしているのと同じで、一部の人が使いすぎて全体が止まるのを防ぐための仕組みです。
上限を超えると、ステータスコード429(Too Many Requests)が返ってきます。対処の基本は次の3つです。
- 少し待ってから再試行する:レスポンスのヘッダ
retry-afterに「何秒待てばよいか」が入っていることがある - 待ち時間をだんだん長くする(指数バックオフ):1秒→2秒→4秒……と間隔を広げて再試行する
- SDKに任せる:AnthropicのPython/TypeScript SDKは、429や一部のサーバーエラーを既定で2回まで自動リトライしてくれる
それでも頻繁に429が出るなら、同時に走らせる処理の数を減らすか、利用枠の引き上げを検討します。
Webhook:「終わったら電話して」
ここまでのAPIは、こちらから「どうですか?」と聞きに行く形でした。逆に、相手のサービスから「何か起きたよ」と知らせてもらう仕組みがWebhook(ウェブフック)です。
たとえば「決済が完了した」「GitHubにコードがpushされた」「フォームに問い合わせが来た」といった出来事が起きたとき、サービスがこちらのバックエンドのURLにPOSTで知らせてくれます。AIエージェントでは、Webhookをきっかけにエージェントを起動する(問い合わせが来たら、AIが下書き回答を作る など)使い方がよくあります。受け取る側のURLは誰でも叩けてしまうので、署名を確かめて本物の送り主か検証するのが大切です。
AIが自分でAPIを選んで呼ぶ「ツール呼び出し」
ここからがAIエージェントの核心です。ツール呼び出し(Anthropicはtool use、OpenAIはfunction callingと呼ぶことが多い)は、AIが「どのAPIを、どんな引数で呼ぶか」を自分で決める仕組みです。
大事なポイントは、AI自身がAPIを直接呼ぶわけではないということ。AIは「このツールをこの入力で使いたい」とJSONでお願いするだけで、実際に呼ぶのはこちらのプログラム(第3章の司令塔)です。
①で渡す「道具の説明書」は、次のようなJSONです。
{
"name": "get_weather",
"description": "指定した都市の現在の天気を返す",
"input_schema": {
"type": "object",
"properties": { "location": { "type": "string", "description": "都市名" } },
"required": ["location"]
}
}name:道具の名前description:何をする道具か。AIはこの説明を読んで「使うべきか」を判断するので、ここを分かりやすく書くのがとても重要input_schema:どんな入力が必要か。JSON Schemaという「JSONの形を決めるルール」で書く。ここでは「文字列のlocationが必須」
AIが道具を使いたくなると、レスポンスの content にこんなブロックが入り、stop_reason が "tool_use" になります。
{
"type": "tool_use",
"id": "toolu_01XyZ...",
"name": "get_weather",
"input": { "location": "東京" }
}プログラムはこれを読んで天気APIを呼び、結果を "type": "tool_result"(tool_use_id に上の id を入れて、どのお願いへの答えかを示す)として会話に追加し、もう一度Claudeに送ります。この往復が第3章で見たエージェントループです。


OpenAIのAPIやGoogleのGemini APIにも同じ考え方の仕組みがあり、どれもツールの定義はJSON Schemaで書く点が共通しています(細かい書き方は各社で異なるため、公式ドキュメントで確認してください)。
実例:エージェントが広告・分析のAPIを呼ぶ
ツール呼び出しは天気のような例だけではありません。業務で特に効果が大きいのが、毎週・毎月くり返す「データを取ってきて、まとめる」仕事です。私たちの本業である広告運用を例に、Claude Codeのようなエージェントが業務APIを呼ぶ流れを見てみましょう。
たとえば担当者が「先週のGoogle広告とMeta広告の成果を、GA4のコンバージョンと並べて比較表にして」と頼んだとします。
| API | 取れるもの(例) | 呼び方の特徴 |
|---|---|---|
| Google Ads API | キャンペーン別の表示回数・クリック・費用・コンバージョン | GAQL(Google Ads Query Language)というSQLに似た問い合わせ文を送る |
| Meta Marketing API | 広告セット・広告ごとの配信結果(Insights) | Graph APIの形式で、欲しい項目と期間を指定して取得 |
| GA4 Data API | サイト上の行動・コンバージョンのレポート | runReport で「期間・ディメンション・指標」を指定 |
ここで、この章で学んだことがすべて登場します。
- 認証:これらのAPIはOAuth(「Googleでログイン」と同じ系統の仕組み)で発行したトークンを使う。Google Ads APIではさらに開発者トークンも必要。どれも環境変数や秘密情報の保管庫に置く
- JSON:媒体ごとに返ってくるJSONの形や指標の名前が違う。エージェントはAPIドキュメントを読んで項目の対応づけをする
- レート制限:媒体APIにもそれぞれ上限があるので、期間を分けて取る・間隔をあけるといった配慮が必要
- 権限の設計:レポート取得のような「読むだけ」の操作と、入札・予算・配信停止のような「お金が動く」操作は分ける。後者はエージェントに提案だけさせ、実行は人が承認するのが安全
MCP:AIのUSB-C
ツール呼び出しは便利ですが、困ったことがあります。天気、カレンダー、広告、社内DB……道具を増やすたびに、AIアプリごとに接続のコードを書き直す必要があったのです。昔のパソコンが、プリンターはこの端子、マウスはあの端子、とバラバラだったのに似ています。
そこで登場したのがMCP(Model Context Protocol)です。Anthropicが2024年11月に公開したオープンな規格で、AIアプリと外部のツール・データを共通の差し込み口でつなぎます。よく「AIのUSB-C」と例えられます。その後、OpenAI・Google・Microsoftなども対応を表明し、業界の標準になりつつあります。
MCPサーバーがAIに提供できるものは、主に3種類です。
| 種類 | 中身 | 例 |
|---|---|---|
| tools(ツール) | AIが実行できる機能 | 「Issueを作る」「レポートを取得する」 |
| resources(リソース) | AIが読めるデータ | ファイルの中身、DBの表 |
| prompts(プロンプト) | 定型のプロンプト(手順書) | 「週次レポートを作る手順」 |
つなぎ方(トランスポート)には、自分のパソコンの中でプログラムを起動して話すstdio(ローカル向け)と、インターネット越しに話すStreamable HTTP(リモート向け)があります。たとえばClaude Codeには、次のようなコマンドでMCPサーバーを登録できます。
# 手元のプログラムをMCPサーバーとして登録(stdio)
claude mcp add my-tools -- node /path/to/server.js
# インターネット上のMCPサーバーを登録(Streamable HTTP)
claude mcp add --transport http my-remote https://example.com/mcpMCPとAPIの関係も押さえておきましょう。MCPはAPIを置き換えるものではありません。多くのMCPサーバーは、中で各サービスのAPIを呼んでいます。MCPは「AIがAPIを使うための共通の差し込み口」と考えると分かりやすいでしょう。便利な反面、MCPサーバーはあなたの権限で動くので、提供元が信頼できるものだけを入れることが大切です。MCPサーバーの作り方は開発者向けのMCPサーバー開発記事で解説しています。
APIキー漏洩の実害と対策
APIキーが漏れると何が起きるのでしょうか。
- 高額請求:第三者があなたのキーでAIを大量に使い、請求はあなたに来る。AIのAPIは1回の単価が小さくても、自動化されると短時間で積み上がる
- データへのアクセス:広告アカウントやDBのキーなら、顧客データや配信設定を見られたり、書き換えられたりする恐れがある
- 信用の失墜:取引先のアカウントに関わるキーなら、取引先にも迷惑がかかる
特に多いのがGitHubへのうっかり公開です。公開リポジトリに上がった秘密情報は、自動で探し回るプログラムに短時間で見つけられると広く指摘されています。しかも後からファイルを消しても、Gitの履歴には残ります。
対策は次のとおりです。
- キーは
.envファイルか、クラウドの環境変数・シークレット機能に置く。コードからは名前(ANTHROPIC_API_KEYなど)で読む .gitignoreに.envを書いて、Gitの管理対象から外す(第7章)- フロントエンド(ブラウザで動くコード)に書かない。必ずバックエンド経由にする(第3章)
- 管理画面で使用上限(利用額の上限)を設定する。万一漏れても被害額に天井ができる
- 用途ごとにキーを分け、権限は最小限に。漏れたときに止めるキーが特定でき、影響範囲も小さくなる
- 漏れたら(漏れたかもと思ったら)すぐ無効化して再発行。ファイルを消すより先にキーを止める
- チャット・メール・スクリーンショット・AIへの貼り付けにも注意する
このサイトの .gitignore
AIエージェント研究所はGitHubでGit管理し、Claude Codeと共同で作業しています。AIエージェントにファイル操作を任せるからこそ、秘密情報がそもそもコミットされない仕組みを最初に用意しています。実際の .gitignore の一部がこちらです。
# 機密情報(APIキー・トークン・環境変数はコミットしない)
.env
.env.*
*.key
*.pem
*.p12
credentials.json
secrets.json.env だけでなく、.env.local のような派生ファイル(.env.*)、秘密鍵の形式(*.key・*.pem・*.p12)、Googleなどのサービスでよく使われる認証ファイル名(credentials.json)もまとめて除外しています。「気をつける」ではなく「間違えても入らない」仕組みにするのがポイントです。
用語まとめ表
| 用語 | ひとことで | たとえ |
|---|---|---|
| API | プログラム同士がやりとりする窓口 | 役所の窓口 |
| エンドポイント | APIの個々の入口(URL) | 窓口の番号 |
| REST | URLで「何を」、メソッドで「どうする」を表す作法 | 窓口の共通ルール |
| リクエスト/レスポンス | お願いと返事の1往復 | 申請と交付 |
| ステータスコード | 結果を表す3桁の数字(200、401、429など) | 「受理」「書類不備」の判子 |
| JSON | データを書く書式。{ } と [ ] で構造を表す | 決まった書式の注文票 |
| APIキー | 誰からのリクエストかを証明する文字列 | 身分証+財布に直結したカード |
| トークン | AIが処理する文字のかけら。課金の単位 | タクシーの走行距離 |
| レート制限(429) | 一定時間に使える量の上限 | 整理券・1人1杯まで |
| Webhook | 相手から「起きたよ」と知らせてもらう仕組み | 「終わったら電話して」 |
| ツール呼び出し | AIが使う道具と引数を選び、プログラムが実行する | 料理長の「あれ取って」 |
| MCP | AIとツール・データをつなぐ共通規格 | AIのUSB-C |
🤖 AIエージェントとやってみよう
ChatGPTやClaudeに、次のプロンプトをそのまま貼り付けて試してみてください。
次のJSONは、あるAIのAPIから返ってきたレスポンスです。
プログラミング初心者にも分かるように、各項目の意味を表にして説明してください。
また、「AIの答えの文章だけ」を取り出すには、どの項目をどうたどればよいかも教えてください。
{"id":"msg_01AbC","type":"message","role":"assistant","model":"claude-opus-5",
"content":[{"type":"text","text":"こんにちは!"}],
"stop_reason":"end_turn","usage":{"input_tokens":12,"output_tokens":18}}AIエージェントに「社内の商品在庫を調べる道具」を渡したいです。
Claude API の tool use 形式(name / description / input_schema)で、
商品コードを受け取って在庫数を返すツールの定義をJSONで書いてください。
- description は、AIが「いつ使うべきか」判断しやすい書き方にしてください
- input_schema の各項目が何を意味するかも説明してください
- このツールを「読むだけ」にしておくべき理由も教えてください私はこれからAIのAPIキーを使った小さなWebアプリを作り、GitHubで管理する予定です。
APIキーを漏らさないためのチェックリストを、初心者向けに10項目で作ってください。
.env と .gitignore の具体的な書き方の例、
うっかりGitHubに上げてしまったときに最初にやるべきことの順番も含めてください。sk-ant-xxxx のようなダミーを使いましょう。
よくあるつまずき
| 症状 | よくある原因 | 対処 |
|---|---|---|
| 401 authentication_error | APIキーが空・打ち間違い・環境変数が読めていない | echo $ANTHROPIC_API_KEY の結果が空でないか確認(画面共有中は注意) |
| 400 invalid_request_error | JSONの形が違う、必須項目(max_tokens など)がない、古い書き方のパラメータ | エラーメッセージの本文を読む。公式ドキュメントの例と見比べる |
| JSONの構文エラー | 最後の要素のあとの余計な ,、'(シングルクォート)の使用、かっこの閉じ忘れ | JSONはダブルクォートのみ。整形ツールやAIにチェックさせる |
| 429 rate_limit_error | 短時間に呼びすぎ | 待って再試行(指数バックオフ)。同時実行数を減らす |
| 答えが途中で切れる | stop_reason が max_tokens=長さの上限に達した | max_tokens を増やす、または答えを短く頼む |
| AIがツールを使ってくれない | description があいまいで、いつ使うか判断できない | 「〜を調べるときに使う」と用途を具体的に書く |
| 請求額が想定より多い | ループで履歴を毎回送っている、高価なモデルで大量処理 | usage を記録して確認。安いモデル・キャッシュ・使用上限を活用 |
よくある質問
APIを使うのにプログラミングは必須?
最初の一歩なら必須ではありません。ターミナルでcurlコマンドを1行実行するだけでもAPIは呼べますし、Postmanのような画面から試せるツールもあります。ただし、繰り返し使ったり結果を加工したりするにはPythonやJavaScriptのコードが必要になるので、AIエージェントに書いてもらいながら少しずつ慣れるのがおすすめです。
APIキーを漏らしてしまったらどうすればいい?
すぐに管理画面でそのキーを無効化(削除)し、新しいキーを発行してください。GitHubに上げてしまった場合、ファイルを消すだけでは履歴に残るので、キーの無効化が最優先です。その後、利用履歴と請求額を確認し、身に覚えのない利用があればサービス提供元のサポートに連絡します。
MCPとAPIは何が違うの?
APIは各サービスがそれぞれ独自の形で用意する窓口です。MCPは、AIアプリがさまざまなツールやデータにつながるための共通規格で、いわばAIのUSB-Cです。MCPサーバーの中では多くの場合、既存のAPIを呼んでいます。APIを置き換えるものではなく、AIがAPIを使いやすくするための共通の差し込み口と考えると分かりやすいです。
AIのAPIの料金はどれくらいかかる?
多くのAIのAPIは、送った文章と返ってきた文章の量をトークンという単位で数える従量課金です。短いやりとりなら1回あたり数円程度に収まることが多い一方、長い資料を何度も読ませるエージェントでは大きく増えます。モデルごとの単価は変わるため、公式の料金ページを確認し、管理画面で使用上限を設定しておくと安心です。
まとめ|APIを知れば、AIエージェントの「できること」が見える
APIはサービスの窓口、JSONは注文票の書式、APIキーは身分証(兼、財布に直結したカード)でした。AIのAPIも、広告やGA4のAPIも、基本の形は同じです。
- リクエストは「メソッド・URL・ヘッダ・ボディ」、レスポンスは「ステータスコード・ボディ」
- AIのAPIはトークン課金。エージェントはループで何度も呼ぶので、使用上限とモデル選びが大切
- ツール呼び出しでは、AIが道具と引数を選び、実行は司令塔(バックエンド)が行う。お金や外部に影響する操作は人の承認を挟む
- MCPはAIのUSB-C。道具を共通の差し込み口でつなぐ
- APIキーは.envに置き、.gitignoreで除外し、フロントに書かない
「このサービスにAPIはあるか?」と考えられるようになると、AIエージェントに任せられる仕事の範囲が一気に見えてきます。次の第5章「サーバー・Linux入門」では、ここまで何度も登場したターミナル・コマンド・環境変数を、AIエージェントが実際に動く「場所」としてじっくり学びます。
基礎を身につけたら、次は「仕事」につなげる
独学で進めるのも十分可能ですが、「最短で実務レベルにしたい」「転職・副業につなげたい」なら、次の記事も参考にしてください。
- AI・IT業界への転職ガイド【2026】:作ったものをポートフォリオに。未経験からの進め方と転職エージェントの選び方
- AIが快適に動くノートパソコンの選び方&おすすめ3選【2026】:開発・AIエージェントを動かすならメモリ16GB以上が目安