フォーム読み込み中
セルラー対応のIoTデバイスやソリューションの企画・運用を担当していると、プロダクトが成長するにつれてこんな場面に直面することはないでしょうか。
ソフトバンクが取り扱うIoT SIM「1NCE(ワンス)」も、APIを使えば回線管理を柔軟に自動化できますが、開発者向けサイト(Developer Hub)にある英語+技術という二重のハードルを前に「これはエンジニアじゃないと難しいな」と距離を感じてしまうのも正直なところです。
本記事では、エンジニア経験のないマーケティング担当の立場から、1NCEのMCP(Model Context Protocol)をAIエディタ(AIに対応したコーディングツール)と連携し、英語の仕様書を細かく読み込まなくても、日本語で要件を伝えるだけで回線管理の自動化ツールを形にする流れを、デモ付きで紹介します。
👉 この記事を読むことで、以下のポイントを把握できる内容となっています。
簡単にIoT SIM「1NCE(ワンス)」についてご紹介します。ご存知の方は次の章まで読み飛ばしてください。
※法人契約限定
少量のテキストデータを低頻度で送る機器監視・位置情報取得のようなユースケースで活用しやすいサービスです。
サービスの詳細はこちらのWebサイトをご覧ください。
MCP(Model Context Protocol)は、一言で言えば「AIが外部ツールやデータ(この場合は1NCEの仕様)を直接参照するための共通規格」です。
世の中には「AIがブラウザを自律操作する」といった広範なMCP活用例もありますが、現在1NCEが提供しているMCP Serverの機能は、主に以下の2点に絞られています。
これらの機能にAIが直接アクセスできるため、「ドキュメントを探して読み解く→エディタで書く→またドキュメントを探す」という往復が減り、企画・運用側でも「まず形にしてみる」までの距離が一気に縮まります。
MCPサーバー経由で参照・アクセスする1NCEのAPIでは様々な機能が提供されており、例えばデータ残量に応じて追加チャージを自動化することや、製品の受注状況に応じてSIMカードの発注を自動化することも可能です。
APIの一例を以下にご紹介します。
| No. | 項目 | 機能 | 活用イメージ |
|---|---|---|---|
| 1 | 回線一覧取得 | アカウント内のすべての回線情報を取得 | 回線一覧の作成など |
| 2 | データ容量/SMS送受信数取得 | 特定回線におけるデータ容量/SMS送受信を取得 | 回線一覧の作成など |
| 3 | SIM設定 | SIMの有効化/無効化、ラベル追加など | 紛失申告と連動して自動的に回線を無効化 |
| 4 | 追加チャージ | 特定のSIMに対するデータ容量/SMSの追加チャージ | データ残量に応じた自動チャージ |
| 5 | SIMカード注文 | 指定されたSIMタイプ、量、納品先でSIMカードの注文を実施 | 製品の受発注システムと連動してSIMの発注を自動化 |
上記の表以外にも多岐にわたるAPIが提供されているため、ぜひMCP経由で確認してみてください。(開発者向けサイトはこちら)
今回のデモでは項番1と2のAPIを使用します。
具体的な手順に入る前に、作成するものと必要となるツールを整理します。
※ツールの作り方自体がテーマではないため、AIエディタのインストールなど細かい手順は一部割愛します。
設定はとてもシンプルです。今回はAIエディタの「Cursor」と「Google Antigravity」を例に解説します。
※設定方法は1NCE公式の開発者向けサイト(こちら)をもとに記載しています。
【Cursor】
{
"mcpServers": {
"dev-hub": {
"url": "https://help.1nce.com/mcp"
}
}
}
設定画面に戻り「dev-hub」という名前のMCPサーバーが追加されていれば準備完了です。
【Google Antigravity】
{
"mcpServers": {
"dev-hub": {
"serverUrl": "https://help.1nce.com/mcp"
}
}
}
※1NCEの開発者向けサイトにはGoogle Antigravity用の設定は記載されていませんが、Cursor用設定の”url”を”serverUrl”に置き換えれば利用できます。
Manage MCP Serversの画面に戻り「Refresh」を押して「dev-hub」という名前のMCPサーバーが追加されていれば準備完了です。
今回は回線ごとのデータ消費量を可視化するツールをAIエディタを通じて作成してみます。
デモ用想定課題:1NCEのポータルでは各回線のデータ消費量を確認するには1回線ずつクリックする必要がある
ゴール:各回線のデータ消費状況をGoogleスプレッドシートで確認できるようにする。閾値以上のデータ消費があった場合にはSlack指定チャンネルに通知が届くようにする。
ステップ:
Step 1. 1NCEポータルで”APIユーザー”を作成
”1NCEポータル>ユーザー>+ユーザーの追加”で”ロール”がAPIのユーザー(下図赤枠部分)を作成します。
ここで設定する”クライアントID”と”クライアントシークレット”が実装時に必要となるため記録しておきます。
※APIユーザーの追加はOwnerもしくはAdmin権限のユーザーのみ設定できます。
※サブ組織でもAPIユーザーは作成可能です。
Step 2. 要件整理&AIエディタとの会話
整理した要件をもとにAIエディタ(今回はGoogle Antigravity)を使ってコードを作成します。
プロンプト:「1NCE MCP(dev-hub)を参照して、GASをつかってGoogleスプレッドシートに以下の項目がわかるように回線リストを作成し、日次で1MB以上使用しているSIMがあった場合はSlackにWebhook経由で通知を飛ばすようなコードを作成してください。
指示後の挙動
下図のように、指示に合わせてエージェントがMCP経由で1NCEのAPI仕様を確認するプロセスが走ります。
2~3回のキャッチボールでコードを生成してくれました。
指示に記載をしていない制約(GASの実行時間制限や1NCE APIのレート制限)についても考慮してくれています。
実装手順もコードとあわせて整理して教えてくれます。
Step 3. Google Apps Script(GAS)での実装とSlackの設定
AIに指示された通りの手順で設定を進めます。
なおStep 1で取得した「クライアントID」や「クライアントシークレット」をスクリプトのコード内に直接書き込む(ハードコードする)のは避けましょう。 万が一スクリプトを共有したり公開したりした際に、認証情報が漏洩するリスクがあるためです。
結果:数か所修正は必要でしたが、ほぼ要件通りのツールを作成することができました。
修正内容についてもエラーメッセージや事象をAIエディタ側に伝えることでコードを適切に修正してくれます。
【Googleスプレッドシートの画面イメージ】
※実際のデータをダミー値に差し替えたものです。
【Slack上での通知】
参考:AIが作成したコードからの主な修正ポイント
AIによる作成後、下記のようなポイントに手を加える必要がありましたが、いずれも要望を日本語で伝えるだけで解消することができました。
これまで、APIは多くの場合「エンジニアが実装するもの」として扱われてきました。
しかし、生成AIの発展と各社が提供するMCPによって、APIをより扱いやすくする選択肢が広がっています。本記事で紹介した1NCEのMCPも、その一つです。
既に1NCEをご利用いただいているお客さまの中で、オペレーションでカバーしている定型業務があれば、まずはAIエディタと1NCE MCPを連携して1NCEのAPIで何ができるのかを日本語で確認するところから始めてみてください。
これからセルラーIoT回線を活用したIoTシステムの構築や、通信事業者のリプレイスを検討されている方はお気軽にソフトバンクまでご相談ください。
1NCE(ワンス)IoTフラットレートは、低容量IoTに特化したプリペイド型のセルラーLPWAサービス(IoT SIM)です。日本を含む170以上の国・地域で同一価格でご利用いただけます。
条件に該当するページがございません