mcpField
I
Idmc CDI Jobs MCP Server

Idmc CDI Jobs MCP Server

Local
github.com/sppavankumarDeveloper Tools0Updated 27w ago

About Idmc CDI Jobs MCP Server

An MCP server for teams running Informatica IDMC CDI jobs. It exposes authentication, job control, status, and activity-log queries as callable tools, with a Claude Skill for natural-language use in Claude or Cursor.

Key features

  1. 01Authenticate and manage sessions
  2. 02Start and stop IDMC tasks
  3. 03Check run status and row counts
  4. 04Query activity logs and job history
  5. 05List currently running jobs

Use cases

  1. 01Launch or stop an IDMC task
  2. 02Track a run by its run ID
  3. 03Review filtered activity logs

MCP support

Exposes IDMC authentication and job-management operations as tools to MCP clients, including login, task control, status checks, and log queries.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

IDMC Jobs MCP Server with Claude Skills

MCP server that exposes Informatica IDMC job management — authentication, start/stop, status monitoring, and activity log querying — as AI-callable tools via the Model Context Protocol.

Author: Pavan Kumar SP

A Model Context Protocol (MCP) server for monitoring and managing jobs on the Informatica Intelligent Data Management Cloud (IDMC) platform.

This project includes a Claude Skill that lets you interact with IDMC jobs using natural language directly inside Claude or Cursor. Use the /idmc slash command to start/stop jobs, check status, query the activity log, and more — without writing any code. See the Claude Skill reference for the full intent-to-tool mapping and example interactions.

Features

ToolDescription
idmc_loginAuthenticate and obtain an IDMC session
idmc_set_sessionRestore a previously obtained session token
idmc_logoutInvalidate the current session
idmc_start_jobStart any IDMC task type (MTT, DSS, DRS, DMASK, PCS, WORKFLOW)
idmc_stop_jobStop a running job (immediate or graceful clean-stop)
idmc_get_job_statusGet real-time status and row counts for a run ID
idmc_get_activity_logQuery the activity log with rich filters
idmc_get_active_jobsList all currently running jobs
idmc_get_job_historyRetrieve historical execution records
idmc_get_session_infoInspect current authentication state

Supported Task Types

CodeType
MTTMapping Task
DSSSynchronization Task
DRSReplication Task
DMASKMasking Task
PCSPowerCenter Task
WORKFLOWLinear Taskflow

Quick Start

1. Install & Build
npm install
npm run build
2. Configure Credentials

Copy .env.example to .env and fill in your IDMC credentials:

cp .env.example .env
VariableDescription
IDMC_USERNAMEYour IDMC login email
IDMC_PASSWORDYour IDMC password
IDMC_BASE_URLLogin URL for your pod (e.g. https://dm-us.informaticacloud.com)
IDMC_SERVER_URL(Optional) Pre-existing serverUrl from a prior login
IDMC_SESSION_ID(Optional) Pre-existing icSessionId from a prior login
3. Add to Claude Desktop

Merge the contents of claude_desktop_config.json into your Claude Desktop config file:

  • 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 Reference

Authentication

The server auto-authenticates on startup when IDMC_USERNAME and IDMC_PASSWORD env vars are set. You can also call idmc_login manually at any time.

Login flow:

  1. POST to <IDMC_BASE_URL>/ma/api/v2/user/login
  2. Response contains serverUrl (used as base for all v2 API calls) and icSessionId (session token sent in every request header)
Starting a Job
idmc_start_job({
  taskType: "MTT",
  taskName: "MyMappingTask",
  callbackURL: "https://my-app.com/webhook"
})

Returns runId — use it to track progress with idmc_get_job_status.

Monitoring
idmc_get_job_status({ runId: 123456 })

idmc_get_activity_log({
  taskType: "MTT",
  startTime: "2024-01-01T00:00:00Z",
  limit: 50
})

idmc_get_active_jobs()
Stopping a Job
# 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 Base URLs by Region

RegionURL
United Stateshttps://dm-us.informaticacloud.com
Europehttps://dm-eu.informaticacloud.com
Asia Pacifichttps://dm-ap.informaticacloud.com
APAC Pod 1https://dm1-ap.informaticacloud.com

Project Structure

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

Development

npm run dev   # Run with ts-node (no build needed)
npm run build # Compile to dist/
npm start     # Run compiled dist/index.js

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.