mcpField
S
sisense-mcp-server

sisense-mcp-server

ローカル
github.com/sisenseデータ・分析74 週間前に更新

sisense-mcp-server について

sisense-mcp-server は、LLM と Sisense 分析を接続する非推奨の MCP サーバーコードです。データソースやフィールドの参照、自然言語によるチャート作成、任意の分析クエリ機能を提供します。

主な機能

  1. 01Sisense データソースの取得
  2. 02データモデルのフィールド一覧
  3. 03自然言語プロンプトからのチャート作成
  4. 04任意の分析クエリツール
  5. 05インタラクティブなチャート表示

活用シーン

  1. 01Sisense のデータソースとフィールドの確認
  2. 02説明文からのチャート作成
  3. 03有効化時の分析クエリ実行

MCP 対応

Streamable HTTP 経由で、データソース、フィールド、チャートのツールを MCP クライアントに公開し、任意で分析クエリも提供します。このリポジトリは非推奨で、README によると Sisense 2026.3.1 ではホステッドエンドポイントが利用できます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"sisense-sisense": {
"command": "npx",
"args": [
"-y",
"@sisense/mcp-server"
],
"env": {
"SISENSE_URL": "<SISENSE_URL>",
"SISENSE_TOKEN": "<SISENSE_TOKEN>"
}
}
}
}
起動コマンドnpx -y @sisense/mcp-server
設定が必要な環境変数
SISENSE_URLURL of the Sisense instance
SISENSE_TOKENシークレットBearer token for the Sisense instance

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@sisense/mcp-server0.2.2

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Sisense MCP Server

警告

非推奨です。 このリポジトリはメンテナンスされておらず、アーカイブされる予定です。 Sisense MCP Server は現在、Sisense 2026.3.1 で利用可能な OAuth 2.1 対応のホステッドエンドポイントです。 セットアップ方法については、Sisense MCP Server のドキュメントをご覧ください。 このリポジトリに今後、機能や修正が追加されることはありません。

Sisense 分析プラットフォームとの連携を提供する Model Context Protocol(MCP)サーバーです。このサーバーを使用すると、LLM が Sisense のデータモデルを操作し、プログラムからチャートを作成できます。

機能

  • トランスポート:HTTP ベースの MCP クライアント(Claude Desktop、Cursor など)向けのストリーマブル HTTP(streamable-http)
  • MCP ツール(デフォルトで 3 つ。有効にすると 4 つ目も使用可能):
    • getDataSources:Sisense のデータソース(またはデータモデル)を取得します
    • getDataSourceFields:指定したデータソースで利用可能なすべてのフィールドを一覧表示します
    • buildChart:自然言語のプロンプトからチャートを作成します
    • buildQuery(オプション):TOOL_BUILD_QUERY_ENABLED / toolBuildQueryEnabled が有効な場合に分析クエリを実行します
  • MCP Apps:MCP Apps 対応クライアント(Claude など)で使用すると、buildChart はインタラクティブなビューを公開し、アプリ内の iframe にチャートを表示します。
  • セッションごとの認証:URL パラメーターやサーバーの環境変数を通じて Sisense の認証情報を指定します
  • TypeScript:完全な型安全性と最新の ESM サポート
  • 軽量:重いフレームワークを使用しない、純粋な Node.js HTTP サーバー
  • 高速:Bun ランタイム向けに最適化されており、Node.js でも動作します

ドキュメント

  • クイックスタート — クローン、.env、実行、MCP クライアントのセットアップ
  • 設定 — 認証情報、トンネリング、機能フラグ、URL の例
  • FAQ — よくある質問とトラブルシューティング
  • 使用例 — プロンプトとワークフロー

前提条件

  • Node.js >= 18.0.0(ローカル開発と npm に必要)
  • プロジェクトのスクリプト(dev、build、start、テスト)の実行には Bun が必要です。bun パッケージは devDependency のため、npm install または bun install の実行後は node_modules/.bin から Bun バイナリを利用できます。グローバルへの Bun のインストールは不要です。グローバルへの Bun のインストールは任意です。
  • API にアクセスできる Sisense インスタンス
  • Sisense API トークン
  • Sisense インスタンスで Cloud-Linked Features が有効であること(Bring Your Own Key(BYOK)を使用する場合は、LLM プロバイダーの設定も必要です)。buildChart や buildQuery などの自然言語ツールに必要です。Generative AI(Cloud-Linked Features)をご覧ください。これは MCP クライアントの LLM(例:Cursor 内の Claude)とは別のものです。
  • Playwright Chromium(postinstall を通じて bun install / npm install で自動的にインストールされます)

インストール

bun install
# or
npm install

使用方法

サーバーを起動します:

# Development mode (hot reload)
bun run dev
# or
npm run dev

# Production mode
bun run build && bun run start
# or
npm run build && npm run start

セッションはメモリ上に保持されるため、サーバーを再起動するとチャートの状態は失われます。

サーバーは次のような内容を出力します(ポートのデフォルト値は 3001 です。PORT が設定されている場合はその値が使われます):

Sisense MCP Server running on http://localhost:3001

Connect with:
  http://localhost:3001/mcp?sisenseUrl=<SISENSE_URL>&sisenseToken=<SISENSE_TOKEN>
  Or set SISENSE_URL and SISENSE_TOKEN in the environment and use http://localhost:3001/mcp

Optional feature-flag query params (override env vars per connection):
  mcpAppEnabled=true|false, toolBuildQueryEnabled=true|false, toolBuildChartNarrativeEnabled=true|false

Endpoints:
  Health: http://localhost:3001/health
  Screenshots: http://localhost:3001/screenshots/
MCP クライアントの接続

MCP の ストリーミング可能な HTTP URL を使用します。Cursor、Claude Desktop などのクライアントでは、MCP パスを含むサーバーエントリを追加してください(bun run dev や npm run dev のようなシェルコマンドではありません)。

SISENSE_URL と SISENSE_TOKEN がサーバー環境で設定されている場合(たとえば、bun run dev または npm run dev を実行するプロセスが読み込む .env ファイル内など)、クライアント URL に認証情報を含める必要はありません。

{
  "mcpServers": {
    "sisense-analytics": {
      "url": "http://localhost:3001/mcp"
    }
  }
}

注: ネットワークやクライアントの環境によっては、localhost の HTTP 設定では接続できない場合があります。その場合は、ngrok などのプロキシサービスを使って、ローカルサーバーを HTTPS 経由で公開する必要があります。同じ /mcp パスを指定して、クライアントを HTTPS トンネル URL に接続してください(サーバー環境の認証情報を使用しない場合は、クエリパラメーターも指定してください)。

認証情報: サーバー環境変数を使用しない場合は、MCP URL に sisenseUrl と sisenseToken をクエリパラメーターとして指定してください(URL パラメーターと環境変数の両方が設定されている場合は、URL パラメーターが優先されます)。各値は必ずパーセントエンコードしてください。詳細と例については、設定:URL エンコーディングをご覧ください。

代替の接続パターン(プレースホルダーのみ。実際の認証情報にはエンコードした値を使用してください):

http://localhost:3001/mcp?sisenseUrl=https://your-instance.sisense.com&sisenseToken=your-api-token

サーバー環境に SISENSE_URL と SISENSE_TOKEN のみを設定する場合:

http://localhost:3001/mcp

公開 HTTPS トンネル経由の場合(例):

https://your-ngrok-url.ngrok-free.app/mcp?sisenseUrl=https://your-instance.sisense.com&sisenseToken=your-api-token
Claude(claude.ai と Desktop):インタラクティブなチャート向けの Sisense CORS 設定

MCP App モード(デフォルト)では、Anthropic Claude は claude.ai または Claude Desktop の MCP コンテンツ UI 内にチャートを表示します。ブラウザーは *.claudemcpcontent.com 配下のオリジンから Sisense インスタンスを読み込むため、Sisense でそのオリジンを許可しないと、ウィジェットでネットワークエラーまたは CORS エラーが発生します。

Sisense インスタンスで、Admin → Security Settings → CORS Allowed Origins の順に移動し、次を追加します:

https://*.claudemcpcontent.com

このサブドメインのワイルドカード形式を使用してください。https://claudemcpcontent.com のような単一のオリジン(*. なし)では、実際のフレームのオリジンに一致しない場合があり、チャートが読み込まれないことがあります。

詳しくは、FAQ:Claude MCP App のチャートと CORSをご覧ください。

設定

パラメーター説明
sisenseUrlSisense インスタンスの完全な URL(例:https://instance.sisense.com)。クエリー文字列では、値をパーセントエンコードして渡してください。
sisenseTokenSisense API 認証トークン。クエリー文字列では、値をパーセントエンコードして渡してください(トークンに &、=、+ などが含まれる場合は必須です)。
PORT(任意)サーバーのポート。デフォルトは 3001 です

サーバーはリクエストヘッダーから公開ベース URL を自動的に導出するため、ngrok などのプロキシ経由でも正しく動作します。エンコード済みの MCP URL の作成方法については、クエリパラメーターの URL エンコーディングをご覧ください。

オプションの機能フラグのクエリパラメーター

デフォルト設定はほとんどの環境に適しています。クライアントの動作を特定のものにしたい場合は、フラグを変更してください。各フラグを使うタイミング、コピーして貼り付けられる URL パターン、環境変数とクエリ文字列の使い分けについては、docs/guides/configuration.md を参照してください。

これらのクエリパラメーターは、接続ごとに対応する環境変数を上書きします。使用できる値は true、false、1、0 です(大文字と小文字は区別されません)。

クエリパラメーター対応する環境変数デフォルト説明
mcpAppEnabledMCP_APP_ENABLEDtrueインタラクティブなアプリ UI でチャートを表示します(Claude でサポート)。ツールモード(画像/スクリーンショット出力)にするには false に設定します
toolBuildQueryEnabledTOOL_BUILD_QUERY_ENABLEDfalse分析クエリを実行する buildQuery ツールを有効にします
toolBuildChartNarrativeEnabledTOOL_BUILD_CHART_NARRATIVE_ENABLEDtrueチャート作成ツールの応答に NLG による説明/インサイトを含めます

3 つすべてを上書きする URL の例(sisenseUrl と sisenseToken の値が単純な英数字のプレースホルダーでない場合は、エンコードしてください):

http://localhost:3001/mcp?sisenseUrl=https://your-instance.sisense.com&sisenseToken=your-api-token&mcpAppEnabled=false&toolBuildQueryEnabled=true&toolBuildChartNarrativeEnabled=false

開発

# Run server in development mode with hot reload
bun run dev
# or npm run dev

# Build the project (View + server)
bun run build
# or npm run build

# Build only the analytics View (dist/view.html)
bun run build:view
# or npm run build:view

# Run tests
bun test
# or npm test (same as npm run test)

# Type checking
bun run type-check
# or npm run type-check

# Lint
bun run lint
# or npm run lint

セキュリティに関する考慮事項

⚠️ 認証情報をバージョン管理に絶対にコミットしないでください

⚠️ 本番環境では環境変数ではなく、シークレットマネージャーまたはボールトを使用してください

⚠️ 本番環境では絶対に 0.0.0.0 にバインドせず、127.0.0.1 または Unix ソケットを使用してください

⚠️ 推奨:利用可能な場合は、開発環境またはステージング環境の Sisense を使用してください。自律型 AI クライアントは多数の API 呼び出しを行う可能性があり、プロンプトが曖昧な場合もあります。本番環境以外を使用することで、ミスや予期しない事態の影響を軽減できます。

⚠️ 認証を有効にし、認証なしで実行しないでください

⚠️ すべてのツール呼び出しを承認し、実行前にすべてのパラメーターを確認してください

⚠️ 必要最小限の権限を付与した Sisense 専用サービスアカウントを作成してください

⚠️ 認証情報を定期的にローテーションしてください(90 日ごとを推奨)

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。