Skip to content

Connect ManageEngine ServiceDesk Plus to Claude: Track Asset Records

Learn how to connect ManageEngine ServiceDesk Plus to Claude using a managed MCP server. Automate ITIL workflows, track assets, and resolve tickets via AI.

Sidharth Verma Sidharth Verma · · 9 min read
Connect ManageEngine ServiceDesk Plus to Claude: Track Asset Records

If you need to connect ManageEngine ServiceDesk Plus to Claude to automate ITIL workflows, track hardware assets, manage change requests, or resolve help desk tickets, you need a Model Context Protocol (MCP) server. This server acts as the translation layer between Claude's natural language tool calls and ManageEngine's REST APIs. You can either build and maintain this infrastructure yourself, or use a managed integration platform like Truto to dynamically generate a secure, authenticated MCP server URL.

If your team uses ChatGPT, check out our guide on connecting ManageEngine ServiceDesk Plus to ChatGPT or explore our broader architectural overview on connecting ManageEngine ServiceDesk Plus to AI Agents.

Giving a Large Language Model (LLM) read and write access to a strict, compliance-heavy IT Service Management (ITSM) ecosystem like ManageEngine ServiceDesk Plus (SDP) is an engineering challenge. You have to handle complex token lifecycles, map highly nested JSON schemas to MCP tool definitions, and deal with strict state-machine transitions for tickets. Every time the vendor updates an endpoint, you have to update your server code, redeploy, and test the integration.

This guide breaks down exactly how to use Truto to generate a secure, managed MCP server for ManageEngine ServiceDesk Plus, connect it natively to Claude, and execute complex IT operations using natural language.

The Engineering Reality of the ManageEngine ServiceDesk Plus API

A custom MCP server is a self-hosted integration layer. While the open MCP standard provides a predictable way for models to discover tools, the reality of implementing it against ManageEngine SDP's APIs requires significant domain knowledge. You are interacting with a strict ITIL framework where incidents, problems, and changes operate on entirely different lifecycle rules.

If you decide to build a custom MCP server for ManageEngine SDP, you own the entire API lifecycle. Here are the specific challenges you will face:

The User-Defined Field (UDF) Minefield Enterprises heavily customize ManageEngine SDP. Almost every request, asset, and problem record contains a udf_fields object. Because these fields are custom per tenant, their keys and data types are entirely unpredictable. Exposing raw UDFs directly to an LLM often results in hallucinated updates, as the model attempts to guess the required data types. A proper integration layer must dynamically inspect the schema and guide the LLM on exactly how to format udf_fields for that specific environment.

Strict ITIL State Machine Transitions ManageEngine SDP enforces strict validation on status transitions. You cannot simply update a ticket's status to "Closed" via a generic PATCH request if the ITSM rules dictate that a resolution note and closure code are mandatory. If an LLM attempts to close a ticket without the required payload, the API throws validation errors. The MCP server must expose specific, context-aware tools (like adding a resolution note) rather than generic CRUD operations.

Fragmented Entity Hierarchies The ManageEngine SDP data model heavily segregates ITIL processes. A user reporting an outage creates a request (Incident). If multiple requests pile up, an IT admin creates a problem. If fixing the problem requires infrastructure updates, it spawns a change, which contains nested tasks. Gathering context on a single outage requires an agent to navigate across four different API resource boundaries, matching foreign keys between endpoints.

How to Generate a Managed MCP Server for ManageEngine ServiceDesk Plus

Instead of writing and hosting a custom Node.js or Python server to handle ManageEngine's quirks, you can use Truto to dynamically generate a managed MCP server.

Truto reads the API definitions and documentation for your connected ManageEngine ServiceDesk Plus instance and automatically compiles them into an MCP JSON-RPC 2.0 endpoint. This endpoint maps the API's resources into discrete, callable tools that Claude natively understands. Crucially, tools are derived dynamically - if a ManageEngine endpoint lacks documentation, it is excluded from the server to act as a quality gate against AI hallucinations.

You can create this MCP server in two ways.

Method 1: Via the Truto UI

For quick setups and testing, the dashboard provides a fast path to generating a server URL:

  1. Navigate to the Integrated Accounts page in your Truto dashboard and select your connected ManageEngine ServiceDesk Plus account.
  2. Click the MCP Servers tab.
  3. Click Create MCP Server.
  4. Select your desired configuration (e.g., restrict to read methods only, or filter by specific tags like assets).
  5. Copy the generated MCP server URL. It will look like https://api.truto.one/mcp/a1b2c3d4e5f6....

Method 2: Via the Truto API

For programmatic orchestration - such as spinning up temporary MCP servers for automated infrastructure agents - you can create servers via the API.

The API generates a cryptographically hashed token, maps it to the specific integrated account, and provisions the JSON-RPC endpoint.

curl -X POST https://api.truto.one/integrated-account/{account_id}/mcp \
  -H "Authorization: Bearer YOUR_TRUTO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "IT Ops Agent Server",
    "config": {
      "methods": ["read", "update"],
      "tags": ["tickets", "assets", "change_management"]
    }
  }'

The response contains the secure URL you will provide to Claude:

{
  "id": "mcp_8f7e6d5c",
  "name": "IT Ops Agent Server",
  "config": { 
    "methods": ["read", "update"], 
    "tags": ["tickets", "assets", "change_management"] 
  },
  "expires_at": null,
  "url": "https://api.truto.one/mcp/a1b2c3d4e5f6..."
}

How to Connect the MCP Server to Claude

Once you have your Truto MCP server URL, connecting it to your AI framework takes less than a minute. You can configure this via the UI for desktop clients or via a configuration file for automated deployments.

Method A: Via the Claude UI (Desktop)

If you are using Claude Desktop to act as your daily IT assistant:

  1. Open Claude Desktop.
  2. Navigate to Settings -> Integrations -> Add MCP Server.
  3. Paste the Truto MCP URL into the connection field and click Add.
  4. Claude will immediately handshake with the server, discover the ManageEngine ServiceDesk Plus tools, and make them available in your chat context.

(Note: If you are configuring this for ChatGPT instead, the path is Settings -> Connectors -> Add.)

Method B: Via Manual Config File

If you are running Claude Desktop in a customized environment or using standard MCP client libraries, you can define the server in your claude_desktop_config.json file using Server-Sent Events (SSE).

{
  "mcpServers": {
    "manageengine-sdp": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-sse",
        "--url",
        "https://api.truto.one/mcp/a1b2c3d4e5f6..."
      ]
    }
  }
}

Hero Tools for ManageEngine ServiceDesk Plus

When connected, Claude gains access to ManageEngine SDP's API endpoints as structured tools. Truto automatically injects necessary pagination logic (like limit and next_cursor) and formats required parameters.

Here are the highest-leverage operations your AI agent can perform.

List All Help Desk Requests

list_all_manage_engine_service_desk_plus_requests

This tool retrieves the queue of help desk tickets. It returns high-level metadata including the id, subject, status, priority, requester, and technician. It is critical for triage and daily queue reviews.

"Claude, check the ManageEngine queue and list all high-priority requests that are currently unassigned in the networking group."

Get a Single Request by ID

get_single_manage_engine_service_desk_plus_request_by_id

Once a ticket is identified, this tool fetches the deep object data, including resolution history, due_by_time, and custom udf_fields. Agents use this to understand the full context of an ongoing issue.

"Retrieve the full details for request ID 8492. Tell me the current status and summarize the latest updates from the requester."

Create a Request Note

create_a_manage_engine_service_desk_plus_request_note

Automating communication is a massive time saver. This tool allows Claude to append work notes or customer-facing updates directly to a ticket.

"Add a note to request ID 8492 stating that the database migration is complete and we are monitoring the server logs for anomalies."

List All Assets

list_all_manage_engine_service_desk_plus_assets

This tool queries the physical and virtual assets tracked in ManageEngine SDP. It returns financial and lifecycle details including asset_tag, serial_number, ip_address, warranty_expiry, and current_cost.

"Find all MacBook Pro assets in the inventory that have a warranty expiring in the next 30 days."

List All Problems

list_all_manage_engine_service_desk_plus_problems

This tool retrieves the root cause analysis records (Problems) associated with recurring incidents. It returns fields like impact_details, root_cause, and symptoms.

"List all open problems related to the VPN gateway and show me their current impact details and assigned technicians."

List All Change Requests

list_all_manage_engine_service_desk_plus_changes

Change management requires strict oversight. This tool lists active change requests, allowing agents to monitor stage, status, risk, scheduled_start_time, and scheduled_end_time.

"Show me all emergency change requests scheduled for this weekend. Summarize their risk levels and back-out plans."

To view the complete schema details and the full list of available ManageEngine ServiceDesk Plus tools, visit the ManageEngine ServiceDesk Plus integration page.

Workflows in Action

With MCP, Claude transforms from a passive chat interface into an active ITSM operator. Here are concrete examples of how DevOps and IT Admin personas use these tools.

Workflow 1: IT Asset Troubleshooting and Triage

When a user reports hardware failure, IT teams spend valuable time cross-referencing tickets with asset databases. Claude can handle the entire discovery and update process autonomously.

User Prompt:

"A user reported their laptop battery is expanding. Check request ID 9015. Find the associated asset by the user's name, check if it is under warranty, and add a note to the ticket with your findings."

Execution Steps:

  1. Claude calls get_single_manage_engine_service_desk_plus_request_by_id with id: "9015" to pull the ticket and identify the requester.
  2. Claude calls list_all_manage_engine_service_desk_plus_assets using the requester's details to locate the assigned workstation.
  3. Claude analyzes the warranty_expiry field on the asset record.
  4. Claude calls create_a_manage_engine_service_desk_plus_request_note on ticket 9015, detailing the asset tag, warranty status, and a recommendation for hardware replacement.
sequenceDiagram
    participant Admin
    participant Claude
    participant Truto as Truto MCP Server
    participant SDP as ManageEngine SDP API

    Admin->>Claude: "Check request 9015, find asset, check warranty, add note"
    Claude->>Truto: Call get_single_request_by_id(9015)
    Truto->>SDP: GET /api/v3/requests/9015
    SDP-->>Truto: Return request & requester data
    Truto-->>Claude: Return tool result
    Claude->>Truto: Call list_assets(user)
    Truto->>SDP: GET /api/v3/assets?search=user
    SDP-->>Truto: Return asset data (warranty expires 2026)
    Truto-->>Claude: Return tool result
    Claude->>Truto: Call create_request_note(9015, "Asset under warranty...")
    Truto->>SDP: POST /api/v3/requests/9015/notes
    SDP-->>Truto: 201 Created
    Truto-->>Claude: Return success
    Claude-->>Admin: "I've verified the asset is under warranty and updated the ticket."

Workflow 2: Emergency Change Impact Analysis

During an outage, coordinating change requests and understanding dependencies is critical. Claude can quickly audit the environment and pull relevant tasks.

User Prompt:

"We have an ongoing database degradation. List all emergency changes currently in the 'Implementation' stage. For any found, list their associated change tasks to see what is currently being executed."

Execution Steps:

  1. Claude calls list_all_manage_engine_service_desk_plus_changes filtering for emergency: true and stage: "Implementation".
  2. Claude identifies Change ID 402.
  3. Claude calls list_all_manage_engine_service_desk_plus_change_tasks passing change_id: "402".
  4. Claude synthesizes the data and presents a summary of the executing tasks and the assigned implementation owners.

Security and Access Control

Granting AI agents write access to enterprise ITSM systems requires strict governance. Truto's MCP architecture provides multiple layers of access control, ensuring your ManageEngine ServiceDesk Plus data remains secure.

  • Method Filtering: Limit an MCP server to specific operations. For example, configure methods: ["read"] to allow an AI agent to view tickets and assets, but strictly prevent it from creating, updating, or deleting any records.
  • Tag Filtering: Group tools by business domain. You can restrict a server to only expose tools tagged with assets or changes, ensuring an agent meant for hardware audits cannot interact with user HR requests.
  • Secondary API Token Authentication: For elevated security, enable require_api_token_auth: true. This forces the MCP client to pass a valid Truto API token in the Authorization header. Possession of the MCP URL alone will not grant access.
  • Server Expiry (TTL): When provisioning servers for automated CI/CD pipelines or contractor access, set an expires_at timestamp. Truto automatically destroys the token and revokes access at the specified time, leaving no stale credentials behind.

A Factual Note on Rate Limits

ManageEngine ServiceDesk Plus enforces strict API rate limits to protect system stability. It is important to understand that Truto does not retry, throttle, or apply backoff on rate limit errors.

When the upstream ManageEngine ServiceDesk Plus API returns an HTTP 429 Too Many Requests error, Truto passes that error directly back to the caller. Truto normalizes upstream rate limit information into standardized headers (ratelimit-limit, ratelimit-remaining, ratelimit-reset) per the IETF specification. The calling agent, LLM framework, or client application is fully responsible for reading these headers and implementing its own retry and backoff logic.

Wrap Up

Connecting Claude to ManageEngine ServiceDesk Plus via an MCP server bridges the gap between natural language reasoning and strict ITIL workflows. Instead of writing brittle integration scripts to parse custom fields and navigate fragmented hierarchies, Truto handles the translation layer dynamically. This allows your engineering teams to focus on building intelligent agent behaviors rather than maintaining API plumbing.

By leveraging managed MCP servers, you can safely deploy AI agents that triage tickets, audit hardware inventories, and execute complex change management tasks, all while maintaining strict enterprise access controls.

FAQ

How do I connect ManageEngine ServiceDesk Plus to Claude?
You need a Model Context Protocol (MCP) server. You can generate a managed MCP server URL using Truto, which dynamically translates ManageEngine ServiceDesk Plus endpoints into Claude-compatible tools, bypassing the need to write custom integration code.
Can Claude update tickets and assets in ManageEngine ServiceDesk Plus?
Yes. By configuring your MCP server with write permissions, Claude can create request notes, update asset records, escalate incidents to problems, and manage change tasks.
How does Truto handle ManageEngine ServiceDesk Plus rate limits?
Truto does not retry or throttle rate limit errors. It passes HTTP 429 errors directly to the caller and normalizes the rate limit information into standard IETF headers (ratelimit-limit, ratelimit-remaining, ratelimit-reset). Your AI agent is responsible for backoff logic.
Is it safe to give an LLM access to my ITSM data?
Yes, provided you use strict access controls. Truto's managed MCP servers allow you to restrict access by API method (e.g., read-only), filter tools by specific tags, set server expiration dates, and mandate secondary API token authentication.

More from our Blog