Idmc CDI Jobs MCP Server について
Informatica IDMC CDI ジョブを運用するチーム向けの MCP サーバーです。認証、ジョブ操作、状態確認、アクティビティログ検索をツールとして提供し、Claude や Cursor で自然言語操作できる Claude Skill も含みます。
主な機能
- 01認証とセッション管理
- 02IDMC タスクの開始と停止
- 03実行状態と行数の確認
- 04アクティビティログと履歴の検索
- 05実行中ジョブの一覧表示
活用シーン
- 01IDMC タスクの開始または停止
- 02実行 ID によるジョブ追跡
- 03条件を指定したアクティビティログの確認
MCP 対応
ログイン、タスク操作、状態確認、ログ検索など、IDMC の認証とジョブ管理機能を MCP クライアント向けのツールとして公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Claude Skills を備えた IDMC Jobs MCP サーバー
Informatica IDMC のジョブ管理(認証、開始/停止、ステータスの監視、アクティビティログの照会)を、Model Context Protocol 経由で AI が呼び出せるツールとして公開する MCP サーバーです。
作者: Pavan Kumar SP
Informatica Intelligent Data Management Cloud(IDMC) プラットフォーム上のジョブを監視・管理するための Model Context Protocol(MCP)サーバーです。
このプロジェクトには Claude Skill が含まれており、Claude または Cursor 内で自然言語を使って IDMC ジョブを操作できます。/idmc スラッシュコマンドを使うと、コードを一切書かずにジョブの開始/停止、ステータスの確認、アクティビティログの照会などを実行できます。意図とツールの対応表、および操作例については、Claude Skill リファレンスを参照してください。
機能
| ツール | 説明 |
|---|---|
idmc_login | 認証して IDMC セッションを取得します |
idmc_set_session | 以前に取得したセッショントークンを復元します |
idmc_logout | 現在のセッションを無効にします |
idmc_start_job | 任意の IDMC タスクタイプ(MTT、DSS、DRS、DMASK、PCS、WORKFLOW)を開始します |
idmc_stop_job | 実行中のジョブを停止します(即時停止またはグレースフルなクリーン停止) |
idmc_get_job_status | 実行 ID のリアルタイムステータスと行数を取得します |
idmc_get_activity_log | 詳細なフィルターを使ってアクティビティログを照会します |
idmc_get_active_jobs | 現在実行中のすべてのジョブを一覧表示します |
idmc_get_job_history | 過去の実行記録を取得します |
idmc_get_session_info | 現在の認証状態を確認します |
サポートされるタスクタイプ
| コード | タイプ |
|---|---|
MTT | マッピングタスク |
DSS | 同期タスク |
DRS | レプリケーションタスク |
DMASK | マスキングタスク |
PCS | PowerCenter タスク |
WORKFLOW | 線形タスクフロー |
クイックスタート
1. インストールとビルド
npm install
npm run build
2. 認証情報の設定
.env.example を .env にコピーし、IDMC の認証情報を入力します。
cp .env.example .env
| 変数 | 説明 |
|---|---|
IDMC_USERNAME | IDMC のログイン用メールアドレス |
IDMC_PASSWORD | IDMC のパスワード |
IDMC_BASE_URL | 利用するポッドのログイン URL(例:https://dm-us.informaticacloud.com) |
IDMC_SERVER_URL | (任意) 以前のログインで取得した既存の serverUrl |
IDMC_SESSION_ID | (任意) 以前のログインで取得した既存の icSessionId |
3. Claude Desktop への追加
claude_desktop_config.json の内容を Claude Desktop の設定ファイルに統合します。
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"idmc-jobs": {
"command": "node",
"args": ["/path/to/idmc-jobs/dist/index.js"],
"env": {
"IDMC_USERNAME": "[email protected]",
"IDMC_PASSWORD": "your-password",
"IDMC_BASE_URL": "https://dm-us.informaticacloud.com"
}
}
}
}
API リファレンス
認証
IDMC_USERNAME と IDMC_PASSWORD の環境変数が設定されている場合、サーバーは起動時に自動認証します。idmc_login をいつでも手動で呼び出すこともできます。
ログインフロー:
<IDMC_BASE_URL>/ma/api/v2/user/loginに POST します- レスポンスには
serverUrl(すべての v2 API 呼び出しのベースとして使用)とicSessionId(すべてのリクエストヘッダーで送信するセッショントークン)が含まれます
ジョブの開始
idmc_start_job({
taskType: "MTT",
taskName: "MyMappingTask",
callbackURL: "https://my-app.com/webhook"
})
runId が返されます。これを使って idmc_get_job_status で進捗を追跡します。
監視
idmc_get_job_status({ runId: 123456 })
idmc_get_activity_log({
taskType: "MTT",
startTime: "2024-01-01T00:00:00Z",
limit: 50
})
idmc_get_active_jobs()
ジョブの停止
# Immediate stop
idmc_stop_job({ taskType: "MTT", taskName: "MyMappingTask" })
# Graceful clean stop (finishes in-flight rows)
idmc_stop_job({ taskType: "MTT", taskName: "MyMappingTask", cleanStop: true })
地域別 IDMC ベース URL
| 地域 | URL |
|---|---|
| 米国 | https://dm-us.informaticacloud.com |
| ヨーロッパ | https://dm-eu.informaticacloud.com |
| アジア太平洋 | https://dm-ap.informaticacloud.com |
| APAC ポッド 1 | https://dm1-ap.informaticacloud.com |
プロジェクト構成
idmc-jobs/
├── src/
│ ├── index.ts # MCP server — tools, handlers, startup
│ └── idmc-client.ts # IDMC REST API client (login, jobs, activity log)
├── dist/ # Compiled output (after npm run build)
├── .env.example # Environment variable template
├── claude_desktop_config.json
├── tsconfig.json
└── package.json
開発
npm run dev # Run with ts-node (no build needed)
npm run build # Compile to dist/
npm start # Run compiled dist/index.js
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。