tago-io について
TagoIO の MCP サーバーは、IDE やチャットツールから AI アシスタントがアカウントのデバイス、データ、ダッシュボード、分析を読み書きできるようにします。ホスト型エンドポイントに加え、ローカルの STDIO と HTTP に対応し、トークンでアクセスします。
主な機能
- 01デバイスデータとアカウントリソースの読み取り
- 02ダッシュボードやデバイスの作成・更新
- 03分析ログの確認とスクリプト実行
- 04アクセスポリシーとアカウント使用量の確認
- 05カスタムウィジェットコードの検証
活用シーン
- 01データ送信が止まったデバイスの特定
- 02ログを使った分析処理の失敗調査
- 03説明に基づくダッシュボードの作成
- 04権限やアカウントのストレージ使用量の確認
MCP 対応
TagoIO アカウントの読み書き機能を MCP ツールとして公開します。クライアントは HTTP でホスト型サーバーに接続するか、ローカルで STDIO または HTTP サーバーを起動し、TagoIO トークンで認証できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y @tago-io/mcp-serverTAGOIO_TOKENシークレットYour TagoIO Profile Token or Analysis TokenTAGOIO_APIYour API endpoint for the TagoIO. Defaults to https://api.us-e1.tago.ioローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
TagoIO | MCP サーバー
質問するだけで、TagoIO アカウントを操作できます。AI アシスタントは、IDE やチャットツールからデバイス、データ、ダッシュボード、分析を読み取り、依頼した変更を行います。
まずはこちら
- トークンを取得します。 TagoIO プロフィール設定で Profile Token を生成します。
- サーバーをクライアントに追加します。 上のインストールボタンを使うか、クライアントのセットアップからツール用の設定をコピーします。
- 質問します。 次のように試してください: 「デバイスの一覧を表示して、今週データの送信が止まったものを教えてください。」
クライアントは、TagoIO のホスト型サーバー https://mcp.ai.tago.io に接続します。サーバーを自分で実行することもできます。
依頼できること
このサーバーは、アカウント全体で約80種類の特定用途向け機能をアシスタントに提供します。実現したいことを説明すると、アシスタントがツールを選びます。現在、次のようなことが得意です。
フリートを把握する
- 「過去7日間にデータを送信していないデバイスはどれですか?」
- 「Water Meter 12の最新50件のレコードを表示して、流量変数を要約してください。」
- 「LoRaWANネットワークにデバイスを作成して、トークンを教えてください。」
タブを切り替えずにデバッグする
- 「昨夜、Daily Reportの分析が失敗しました。コンソールを確認して、原因を教えてください。」
- 「見つかったバグを修正し、スクリプトをアップロードして、確認のために一度実行してください。」
- 「顧客からダッシュボードが空だという連絡がありました。そのユーザーとしてログインして、表示内容を確認してください。」
説明からダッシュボードを作成する
- 「コールドチェーンのフリート用に、ユニットのマップ、過去24時間の温度折れ線グラフ、バッテリーレベルのカードを備えたダッシュボードを作成してください。」
- 「このゲージに値が表示されません。設定を、デバイスが実際に送信する変数と比較してください。」
権限の問題を解決する
- 「分析でSitesエンティティへの書き込み時に権限エラーが発生します。必要なポリシーは何ですか?」
- 「TagoRUNユーザーに関係するアクセス ポリシーをすべて表示してください。」
アカウントを整理する
- 「今月のデータレコード上限にどれくらい近づいていますか?」
- 「1年以上前の5 MBを超える保存ファイルを探して、削除してください。」
ドキュメントを参照しながらコードを書く
- 「Dragino LHT65のペイロードを解析する公式サンプルを探して、自分のデバイス向けに調整してください。」
サーバーはデータの読み取りと書き込みを行います。データの削除、認証情報のローテーション、スクリプトのアップロードはアシスタントの確認フローを通じて実行されるため、変更が反映される前にそれぞれを承認できます。
クライアントの設定
以下の各設定はホストされたサーバーを参照します。YOUR-TAGOIO-TOKEN を Profile Token に置き換えてください。
| クライアント | 設定ファイルの場所 |
|---|---|
| VS Code / GitHub Copilot | .vscode/mcp.json またはユーザー設定 |
| Claude Code | claude mcp add-json CLI |
| Claude Desktop | ~/Library/Application Support/Claude/claude_desktop_config.json(macOS)、%APPDATA%\Claude\claude_desktop_config.json(Windows) |
| Cursor | ~/.cursor/mcp.json |
| Windsurf | ~/.codeium/windsurf/mcp_config.json |
| JetBrains IDEs | Settings > Tools > AI Assistant > MCP |
| Google Gemini CLI | ~/.gemini/settings.json |
| Amazon Q CLI | ~/.aws/amazonq/mcp.json |
| Warp | ~/.warp/mcp.json |
| Kiro | .kiro/mcp.json |
| OpenAI Agents / ChatGPT | Agent Builder UI |
VS Code / GitHub Copilot
1 つのプロジェクトに設定する場合は .vscode/mcp.json に、すべてのプロジェクトに設定する場合はユーザー設定に追加してください。VS Code Insiders でも同じ設定を使用でき、Copilot は同じファイルを読み込みます。
{
"servers": {
"@tago-io/mcp": {
"type": "http",
"url": "https://mcp.ai.tago.io",
"headers": {
"Authorization": "Bearer ${input:tagoToken}"
}
}
},
"inputs": [
{
"type": "promptString",
"id": "tagoToken",
"description": "TagoIO Profile Token",
"password": true
}
]
}
Claude Code
claude mcp add-json tagoio '{"type":"http","url":"https://mcp.ai.tago.io","headers":{"Authorization":"Bearer YOUR-TAGOIO-TOKEN"}}'
Claude Desktop
mcp-remote ブリッジ経由で接続します。
{
"mcpServers": {
"@tago-io/mcp": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://mcp.ai.tago.io",
"--header",
"Authorization: Bearer YOUR-TAGOIO-TOKEN"
]
}
}
}
Cursor
{
"mcpServers": {
"@tago-io/mcp": {
"url": "https://mcp.ai.tago.io",
"headers": {
"Authorization": "Bearer YOUR-TAGOIO-TOKEN"
}
}
}
}
Windsurf
{
"mcpServers": {
"@tago-io/mcp": {
"serverUrl": "https://mcp.ai.tago.io",
"headers": {
"Authorization": "Bearer YOUR-TAGOIO-TOKEN"
}
}
}
}
JetBrains IDEs
Settings > Tools > AI Assistant > Model Context Protocol (MCP) を開き、サーバーを追加して、次の内容を貼り付けます。
{
"servers": {
"@tago-io/mcp": {
"url": "https://mcp.ai.tago.io",
"requestInit": {
"headers": {
"Authorization": "Bearer YOUR-TAGOIO-TOKEN"
}
}
}
}
}
Google Gemini CLI
{
"mcpServers": {
"@tago-io/mcp": {
"httpUrl": "https://mcp.ai.tago.io",
"headers": {
"Authorization": "Bearer YOUR-TAGOIO-TOKEN"
}
}
}
}
Amazon Q CLI
{
"mcpServers": {
"@tago-io/mcp": {
"url": "https://mcp.ai.tago.io",
"headers": {
"Authorization": "Bearer YOUR-TAGOIO-TOKEN"
}
}
}
}
Warp
mcp-remote ブリッジ経由で接続します。
{
"mcpServers": {
"@tago-io/mcp": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://mcp.ai.tago.io",
"--header",
"Authorization: Bearer YOUR-TAGOIO-TOKEN"
]
}
}
}
Kiro
mcp-remote ブリッジ経由で、プロジェクトのルートにある .kiro/mcp.json から接続します。
{
"mcpServers": {
"@tago-io/mcp": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://mcp.ai.tago.io",
"--header",
"Authorization: Bearer YOUR-TAGOIO-TOKEN"
]
}
}
}
OpenAI Agents / ChatGPT
Agent Builder または ChatGPT の MCP 設定で指定します。
- サーバー URL:
https://mcp.ai.tago.io - プロトコル:Streamable HTTP
- 認証:
Authorization: Bearer YOUR-TAGOIO-TOKENヘッダー
トークンの選択
| トークン | 入手先 | アクセスできる範囲 |
|---|---|---|
| Profile | プロフィール設定 | プロフィール全体です。まずはこちらからお試しください。 |
| Analysis | Analysis > 対象の分析を選び、「External」として実行するよう設定 | その分析がアクセスできる範囲に限られます。IAM によってアクセスが制御される共有環境や本番環境に適しています。 |
| Device | デバイス本体 | そのデバイスのデータです。アカウントレベルのリクエストは権限エラーになります。 |
リージョンとエンドポイント
リクエストはデフォルトで US East に送信されます。別のエンドポイントにアクセスするには、x-tagoio-region ヘッダーを設定します。
| 値 | 接続先 |
|---|---|
us-e1 | US East(デフォルト) |
eu-w1 | EU West |
https://api.your-instance.io | お使いの専用 TagoDeploy インスタンス |
x-tagoio-region: eu-w1
TagoDeploy では、https:// で始まるインスタンスの完全な API エンドポイントを指定してください。ホスト型サーバーで動作するため、専用インスタンスでもパブリックリージョンと同じ 1 行の設定で済みます。
STDIO ではヘッダーを指定できません。代わりに TAGOIO_API にエンドポイントを設定してください。
ローカルで実行する
オフラインで作業する場合や、ネットワークで外向きの接続がブロックされている場合は、ご自身のマシンでサーバーを実行してください。Node.js 22.12 以降をインストールしてから、次を実行します。
npx -y @tago-io/mcp-server # STDIO, what desktop apps and IDEs expect
npx -y @tago-io/mcp-server http # HTTP on port 3000
STDIO では環境変数からトークンを読み込みます。
{
"mcpServers": {
"@tago-io/mcp": {
"command": "npx",
"args": ["-y", "@tago-io/mcp-server"],
"env": {
"TAGOIO_TOKEN": "YOUR-TAGOIO-TOKEN"
}
}
}
}
Claude Code の場合:
claude mcp add @tago-io/mcp-server -e TAGOIO_TOKEN=YOUR-TAGOIO-TOKEN -- npx -y @tago-io/mcp-server
HTTP モードではリクエストごとにトークンを指定するため、複数のユーザーがそれぞれの認証情報で 1 つのサーバーを共有できます。MCP_PORT でポートを設定し、GET /health にアクセスしてサーバーが起動していることを確認してください。この README 内の設定でローカルサーバーを指定するには、URL を http://localhost:3000 に置き換えます。すべてのオプションについては、npx -y @tago-io/mcp-server --help を実行してください。
カスタムウィジェットの作成
カスタムウィジェットは、プロバイダーのラッパー、固定された npm: 依存関係、// tailwind マーカーを含む厳格な作成規約に従った React コンポーネントです。サーバーはコードがこの規約に準拠しているか検証し、違反箇所を報告します。
カスタムウィジェットスキルでは、実例を交えながら規約について説明しています。Claude Code にインストールするには、次を実行します。
# all projects
mkdir -p ~/.claude/skills/custom-widget-development
curl -fsSL https://raw.githubusercontent.com/tago-io/mcp-server/master/skills/custom-widget-development/SKILL.md \
-o ~/.claude/skills/custom-widget-development/SKILL.md
# one project
mkdir -p .claude/skills/custom-widget-development
curl -fsSL https://raw.githubusercontent.com/tago-io/mcp-server/master/skills/custom-widget-development/SKILL.md \
-o .claude/skills/custom-widget-development/SKILL.md
他のクライアントでは、同じファイルを、そのクライアントがスキルや再利用可能なプロンプトを読み込む場所に配置してください。
トークンとデータについて
サーバーは、トークンがアシスタントに渡る前に、すべての結果、エラー、スクリプトのダウンロード、コンソール出力からトークンを削除します。環境変数の値、発行された分析用トークン、署名付きファイル URL にも同様の処理が行われます。
一部の設定は引き続き TagoIO 管理画面で行います。対象は、TagoRUN の環境設定、SSO とカスタムドメイン、テストメール、匿名ユーザーの作成です。
トラブルシューティング
接続できない場合。 トークンがまだ有効であることと、ネットワークから https://mcp.ai.tago.io にアクセスできることを確認してください。アカウントが EU West にある場合は、x-tagoio-region ヘッダーを設定してください。
認証エラーが発生する場合。 HTTP では、ヘッダーの値を Bearer YOUR-TOKEN とします。Bearer の後にはスペースが必要です。STDIO では、トークンを TAGOIO_TOKEN に設定してください。形式に問題がなければ、リクエストした操作に必要な権限がトークンにない可能性があります。
リクエストの結果が空になる場合。 よくある原因は 2 つです。対象の時間範囲にデバイスのデータがないか、プロフィールにそのデバイスへのアクセス権がありません。
ブリッジが失敗する場合(Claude Desktop、Warp、Kiro)。Node.js 22.12 以降がインストールされていることを確認してから、ブリッジを手動で実行し、実際のエラーを確認してください。
npx -y mcp-remote https://mcp.ai.tago.io --header "Authorization: Bearer YOUR-TOKEN"
ツールの全リファレンス
サーバーが公開するすべてのツールを、ドメインごとにまとめています。それぞれのツールには、クライアントが読み取る説明の中に、独自のパラメーター、制限、読み取りまたは書き込みの注釈が記載されています。
| Domain | Tools |
|---|---|
| Devices | search_devices, get_device, create_device, update_device, delete_device, configure_device |
| Device data | read_device_data, send_device_data, edit_device_data, delete_device_data |
| Actions | search_actions, get_action, create_action, update_action, delete_action |
| Analyses | search_analyses, get_analysis, create_analysis, update_analysis, delete_analysis, upload_analysis_script, download_analysis_script, run_analysis, read_analysis_console |
| Dashboards & widgets | search_dashboards, get_dashboard, create_dashboard, update_dashboard, delete_dashboard, get_widget, create_widget, update_widget, delete_widget, widget_schema_lookup, validate_widget_configuration, get_custom_widget_code, upload_custom_widget_code |
| Entities | search_entities, get_entity, create_entity, update_entity, delete_entity, update_entity_schema |
| Entity data | read_entity_data, send_entity_data, edit_entity_data, delete_entity_data, empty_entity_data |
| Run users | search_run_users, get_run_user, create_run_user, update_run_user, delete_run_user, login_as_run_user |
| Run-user notifications | read_run_user_notifications, send_run_user_notification, update_run_user_notification, delete_run_user_notification |
| Files | search_files, delete_files |
| Access management | search_access_policies, get_access_policy, lookup_access_permissions, create_analysis_access_policy, create_run_user_access_policy, update_analysis_access_policy, update_run_user_access_policy, delete_access_policy |
| Profile | get_profile, get_profile_limits, get_profile_statistics, search_secrets |
| Connectors & networks | search_connectors, get_connector, search_networks, get_network |
| Docs & examples | platform_overview, search_docs, read_doc, search_code_examples, get_code_example |
貢献
イシューやプルリクエストを歓迎します。エージェント向けの指示は AGENTS.md にあります。
ライセンス
MIT です。LICENSE ファイルをご覧ください。
TagoIO チームが開発しました。サポートが必要ですか?TagoIO ドキュメントを確認するか、サポートにお問い合わせください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。