🐶

データ分析用SORACOM MCPを作成してみた

に公開

はじめに

SORACOM の Harvest Data/Files・SoraCam・Stats を LLM から扱える MCP「alt-soracom-data-reader-mcp」を作成しました。AI支援開発で作成したものなので、参考程度にご利用いただければと思います。

https://github.com/leaveanest/alt-soracom-data-reader-mcp

なぜ作ったか

理由は主に2つあります。

  1. Harvest 系 API を使いたかった — Harvest Data などの API は公式 MCP にはなかったので、自作する必要がありました。
  2. 用途に応じてツールを絞りたかった — 使用する API を限定することでトークン消費とコストを抑え、モードで切り替えられる設計にしました。

使い方

モード

用途に応じて --mode を選択します。ソラカメの方はもしかするとテスト不十分で上手く動作しないかもしれないですが、一旦実装しています。

モード 対象
harvest Harvest Data / Files
soracam ソラカメ(映像・イベント)
stats SIM 情報・通信統計
all 全ツール(開発用)

導入例

uvx で GitHub から直接実行できます。
設定は以下のような感じです。

{
  "mcpServers": {
    "soracom-harvest": {
      "command": "uvx",
      "args": [
        "--from", "git+https://github.com/leaveanest/alt-soracom-data-reader-mcp.git",
        "soracom-data-mcp", "--mode", "harvest"
      ],
      "env": {
        "SORACOM_AUTH_KEY_ID": "keyId-xxx",
        "SORACOM_AUTH_KEY": "secret-xxx"
      }
    }
  }
}

詳細はリポジトリの README を参照してください。

使用例

実際に Cursor で Harvest Data から SIMのデータを取得した例です。

GPSトラッカーから取得した温度データ

SIMなどをしてすると、このように簡単にデータを取得できます。Cursorなどのエディタであれば、このまま分析レポートをファイルで出力できます。

おわりに

データ分析文脈に絞った SORACOM MCP を作成しました。モードを切り替えることで必要なツールだけを有効化できるため、コンテキストの肥大化を防ぎつつ、Harvest や SoraCam のデータを LLM から扱えます。

すでにAIエージェントは質の高いアウトプットを出力できるようになってきているので、それに持たせるツールももう少し増やしていければと考えています。

参考

リバナレテックブログ

Discussion