Skip to main content
Glama
tkrishnav31

igrid-sce-mcp-tool

by tkrishnav31

igrid-sce-mcp-tool v4 — 読み取り / 書き込み / 管理

既存のiGrid-Prometheus REST API向けのNode.js/JavaScript MCP統合レイヤーです。iGridバックエンドと既存の8つのツール分割は変更されていません。このバージョンでは、MCPツールレベルでSAP BTP XSUAAロールベースの認可を追加しています。

認可モデル

このプロジェクトでは、3つのXSUAAスコープ、3つのロールテンプレート、および3つの定義済みロールコレクションを定義しています。

ロールコレクション

ロールテンプレート

スコープ

許可されるMCP操作

iGrid-MCP-Read

Read

$XSAPPNAME.read

GET/読み取りツールのみ

iGrid-MCP-Write

Write

$XSAPPNAME.write

POST/書き込みツールのみ

iGrid-MCP-Admin

Admin

$XSAPPNAME.read, $XSAPPNAME.write, $XSAPPNAME.admin

全8ツール

認可は、共通のMCP toolHandler 内で、下流のiGrid APIリクエストの前にチェックされます。必要なスコープを持たないユーザーは、Forbidden: MCPツールエラーを受け取ります。

Related MCP server: agent-sudo-mcp

正確に8つのMCPツール

Bearerグループ — src/tools/bearer-tools.js

  1. igrid_list_domainsGET /api/hub/datasets読み取り/管理

  2. igrid_get_templateGET /api/hub/template/:domain読み取り/管理

  3. igrid_run_agentPOST /api/ai/run書き込み/管理

  4. igrid_propose_actionPOST /api/ai/action/propose書き込み/管理

  5. igrid_decide_actionPOST /api/ai/action/decide書き込み/管理

  6. igrid_metricsGET /api/ai/metrics読み取り/管理

x-api-keyグループ — src/tools/api-key-tools.js

  1. igrid_ingest_csvPOST /api/ingest/:domain書き込み/管理

  2. igrid_export_csvGET /api/export/:domain読み取り/管理

igrid_propose_action は、要求された認可ルールが実際のHTTP操作に基づいており、このツールがPOSTを使用するため、意図的に書き込みとして分類されています。

igrid_health MCPツールは公開されていません。/healthz はアプリケーションのヘルスエンドポイントとしてのみ残ります。

既存の下流iGridの動作は変更されていません

  • 6つのツールは引き続きiGrid Bearer/サービスセッションを使用します。

  • igrid_ingest_csv および igrid_export_csv は引き続きiGrid x-api-key チャネルを使用します。

  • DestinationサービスまたはConnectivityサービスは導入されていません。

  • 資格情報やシークレットはハードコードされていません。

重要なファイル

xs-security.json                 XSUAA scopes, role templates, role collections
src/auth/xsuaa.js               XSUAA authentication + OAuth metadata
src/auth/authorization.js       Read/Write/Admin authorization checks
src/context/auth-context.js     Per-request auth context propagation
src/tools/response.js           Common MCP tool-level enforcement
src/tools/bearer-tools.js       6 Bearer tools and permission mapping
src/tools/api-key-tools.js      2 x-api-key tools and permission mapping

環境

IGRID_BASE_URL=https://igrid-prometheus.azurewebsites.net
IGRID_API_KEY=<IGRID_API_KEY>
IGRID_BEARER_TOKEN=<optional pre-issued iGrid Bearer>
IGRID_SERVICE_EMAIL=<optional approved iGrid service email>
IGRID_SERVICE_PASSWORD=<optional approved iGrid service password>
IGRID_MFA_CODE=<optional MFA code>
IGRID_MFA_BODY_JSON=<approved MFA JSON body using {{code}}>
IGRID_REQUEST_TIMEOUT_MS=30000

MCP_TRANSPORT=http
MCP_HOST=0.0.0.0
MCP_PORT=8080
MCP_PATH=/mcp

# Local stdio / local HTTP test authorization only.
# Ignored for a hosted request authenticated through XSUAA.
MCP_LOCAL_ROLE=Admin
MCP_HTTP_AUTH_TOKEN=

Bearerツールについては、事前に発行された IGRID_BEARER_TOKEN が推奨されます。存在しない場合、既存のトークンマネージャーは、必要なMFA設定が提供されていれば、承認されたiGridログイン/MFA契約を使用できます。

ビルド

npm install
npm run check
npm run security:check
npm test
npx mbt build -t mta_archives

BTPデプロイ

cf login
cf target -o <ORG> -s <SPACE>
cf deploy mta_archives/igrid-sce-mcp-tool_4.0.0.mtar -f

デプロイ後にiGridシークレットを設定:

cf set-env igrid-sce-mcp-tool IGRID_API_KEY '<IGRID_API_KEY>'
cf set-env igrid-sce-mcp-tool IGRID_BEARER_TOKEN '<IGRID_BEARER_TOKEN>'
cf restart igrid-sce-mcp-tool

または、承認されたサービスログイン/MFAフローを使用する場合:

cf set-env igrid-sce-mcp-tool IGRID_SERVICE_EMAIL '<SERVICE_EMAIL>'
cf set-env igrid-sce-mcp-tool IGRID_SERVICE_PASSWORD '<SERVICE_PASSWORD>'
cf set-env igrid-sce-mcp-tool IGRID_MFA_BODY_JSON '<APPROVED_JSON_WITH_{{code}}>'
cf restart igrid-sce-mcp-tool

XSUAAロール割り当て

デプロイにより、xs-security.json からXSUAAサービスインスタンス igrid-sce-mcp-tool-xsuaa が作成/更新されます。

デプロイ後、SAP BTPサブアカウントで:

  1. セキュリティ → ロールコレクション を開きます。

  2. 定義済みコレクション iGrid-MCP-ReadiGrid-MCP-Write、および iGrid-MCP-Admin が存在することを確認します。

  3. iGrid-MCP-Read を読み取り専用ユーザーに割り当てます。

  4. iGrid-MCP-Write を書き込み専用ユーザーに割り当てます。

  5. iGrid-MCP-Admin は、GETおよびPOSTのMCPツールの両方を必要とするユーザーにのみ割り当てます。

  6. MCPクライアントを再認証して、新しいトークンに割り当てられたスコープが含まれるようにします。

ユーザーが読み取りのみの場合、POSTツールはMCPレイヤーで失敗します。ユーザーが書き込みのみの場合、GETツールは失敗します。管理者は8つのツールすべてを呼び出すことができます。

OAuth / Claude remote MCP

デプロイされたエンドポイントを使用:

https://<BTP_ROUTE>/mcp

OAuthディスカバリメタデータは、XSUAAの readwriteadmin スコープを通知するようになりました。ユーザー固有のロール適用には、通常は認可コードを使用して、ユーザーのBTPロールコレクションがトークンに反映されるユーザートークンを生成するOAuthフローを使用します。

サービスキーは引き続きXSUAA OAuthクライアント資格情報を提供できますが、client_credentials トークンは技術的なクライアントIDであり、人間のユーザーのロールコレクションを継承したものとして扱うべきではありません。

ローカル stdio

ローカル stdio にはBTPユーザーJWTがないため、ロールの動作は MCP_LOCAL_ROLE でシミュレートされます。デフォルトは Admin で、以前のローカル動作を維持します。

読み取り専用のローカルテスト:

MCP_LOCAL_ROLE=Read npm run start:stdio

書き込み専用のローカルテスト:

MCP_LOCAL_ROLE=Write npm run start:stdio

完全なローカルテスト:

MCP_LOCAL_ROLE=Admin npm run start:stdio

Claude Desktop/Codeの例:

{
  "mcpServers": {
    "igrid-sce-mcp-tool": {
      "command": "node",
      "args": ["/ABSOLUTE/PATH/igrid-sce-mcp-tool/src/server.js"],
      "env": {
        "MCP_TRANSPORT": "stdio",
        "MCP_LOCAL_ROLE": "Read",
        "IGRID_BASE_URL": "https://igrid-prometheus.azurewebsites.net",
        "IGRID_API_KEY": "<IGRID_API_KEY>",
        "IGRID_BEARER_TOKEN": "<IGRID_BEARER_TOKEN>"
      }
    }
  }
}

ロール受け入れテスト

3人のユーザー(または3つのユーザーロール割り当て)を使用し、各割り当て後に新しいトークンを取得します。

読み取りユーザー

期待される成功:

igrid_list_domains
igrid_get_template
igrid_metrics
igrid_export_csv

期待される Forbidden:

igrid_run_agent
igrid_propose_action
igrid_decide_action
igrid_ingest_csv

書き込みユーザー

期待される成功:

igrid_run_agent
igrid_propose_action
igrid_decide_action
igrid_ingest_csv

期待される Forbidden:

igrid_list_domains
igrid_get_template
igrid_metrics
igrid_export_csv

管理者ユーザー

8つのツールすべてがMCPロールチェックに合格する必要があります。下流のiGrid認証/認可およびリクエスト検証は引き続き適用されます。

セキュリティに関する注意事項

  • 権限チェックはiGrid API呼び出しの前に行われます。

  • XSUAAはインバウンドMCP権限を制御します。iGridは下流の資格情報とビジネス認可について引き続き権限を持ちます。

  • iGrid APIキー、iGridパスワード、Bearerトークン、XSUAAクライアントシークレット、またはサービスキーをソース管理に絶対に配置しないでください。

  • 簡潔なセキュリティモデルについては、README-SECURITY.md を参照してください。

Install Server
F
license - not found
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    -
    quality
    A
    maintenance
    Provides a trust and governance layer for AI agents, enabling secure API access, credential vaulting, paid execution with human approval, and automatic call resume.
    8
    1
  • A
    license
    A
    quality
    A
    maintenance
    Local zero-trust permission gateway for AI agents. Enforces policy-based tool authorization, human approvals, scoped permissions, and cryptographically verifiable audit logs.
    4
    5
    Apache 2.0
  • A
    license
    -
    quality
    B
    maintenance
    Provides a secure MCP gateway for AI agents to access APIs without exposing raw credentials, with scoped access, audit logging, and OAuth support.
    MIT

View all related MCP servers

Related MCP Connectors

  • Runtime permission, approval, and audit layer for AI agent tool execution.

  • Single entry point for the GOSCE portfolio: routes orchestrators to verified agents by capability, w

  • Build, validate, and deploy multi-agent AI solutions from any AI environment.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/tkrishnav31/igrid_aits--mcp_tool'

If you have feedback or need assistance with the MCP directory API, please join our Discord server