MCP ITSM Integration

by madosh
Verified

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Used for configuration of ITSM credentials and environment variables, enabling secure storage of connection details for various ITSM systems.

  • Allows creation, retrieval, updating, and management of tickets in Jira, including assigning tickets to users and adding comments.

  • Provides the runtime environment for the MCP server, supporting the ITSM integrations and MCP protocol implementation.

MCP ITSM Integration

A Model Context Protocol (MCP) implementation for IT Service Management (ITSM) tools, designed to work with Smithery.

Overview

This project provides a unified interface for LLMs to interact with multiple ITSM systems (ServiceNow, Jira, Zendesk, Ivanti Neurons for ITSM, and Cherwell) using the Model Context Protocol (MCP). Instead of requiring LLMs to learn different APIs for each ITSM system, this integration provides a standardized set of tools that work across all systems.

MCP Server Information

This is an MCP-compliant server that implements the Model Context Protocol specification. It provides a standardized interface for Large Language Models to interact with multiple ITSM systems through a unified set of tools.

MCP Compatibility

  • Protocol Version: MCP 1.0
  • Tool Format: JSON Schema compliant
  • Runtime: Node.js
  • Transport: HTTP and stdio
  • Authentication: API key

MCP Server Usage

The server can be used directly with any MCP-compatible client, including:

  • MCP Inspector CLI tool
  • Claude via MCP integration
  • Any LLM with MCP support

To inspect the server locally:

npx @modelcontextprotocol/inspector node index.js

Features

  • Unified Interface: Consistent tool definitions across all ITSM systems
  • Intelligent Routing: Automatically routes requests to the appropriate ITSM system
  • Context Management: Maintains context across interactions
  • MCP Compliant: Follows the Model Context Protocol specification
  • Smithery Integration: Designed to work seamlessly with Smithery

Prerequisites

  • Node.js (v14 or higher)
  • Smithery CLI
  • Access to ITSM systems (ServiceNow, Jira, Zendesk, Ivanti Neurons for ITSM, Cherwell)

Installation

  1. Clone the repository:
    git clone https://github.com/yourusername/mcp-itsm.git cd mcp-itsm
  2. Install dependencies:
    npm install
  3. Configure your ITSM credentials (see Configuration section)
  4. Deploy to Smithery:
    smithery deploy

Configuration

ITSM Credentials

Create a .env file with your ITSM credentials:

# ServiceNow SERVICENOW_INSTANCE=your-instance SERVICENOW_USERNAME=your-username SERVICENOW_PASSWORD=your-password # Jira JIRA_URL=https://your-instance.atlassian.net JIRA_USERNAME=your-username JIRA_API_TOKEN=your-api-token # Zendesk ZENDESK_URL=https://your-instance.zendesk.com ZENDESK_EMAIL=your-email ZENDESK_API_TOKEN=your-api-token # Ivanti Neurons for ITSM IVANTI_URL=https://your-instance.ivanti.com IVANTI_CLIENT_ID=your-client-id IVANTI_CLIENT_SECRET=your-client-secret IVANTI_TENANT_ID=your-tenant-id # Cherwell CHERWELL_URL=https://your-instance.cherwell.com CHERWELL_CLIENT_ID=your-client-id CHERWELL_AUTH_MODE=internal CHERWELL_USERNAME=your-username CHERWELL_PASSWORD=your-password

Smithery Configuration

The smithery.yaml file configures how your tools are deployed to Smithery:

name: mcp-itsm description: MCP ITSM Tools for ticket management across multiple systems version: 1.0.0 tools: ./tools.json command: node index.js

Available Tools

This integration provides the following tools:

  • create_ticket: Create a new ticket in any ITSM system
  • get_ticket: Retrieve ticket details
  • update_ticket: Update an existing ticket
  • list_tickets: List tickets with filtering options
  • assign_ticket: Assign a ticket to a user
  • add_comment: Add a comment to a ticket
  • search_knowledge_base: Search the knowledge base for relevant articles

See tools.json for the complete tool definitions.

Usage

Once deployed to Smithery, LLMs can use these tools to interact with your ITSM systems. Here's an example of how an LLM might create a ticket:

User: "I need to report a bug in our accounting software" LLM: (Makes a tool call) { "type": "tool_call", "data": { "name": "create_ticket", "parameters": { "title": "Bug in accounting software", "description": "User reported an issue with the accounting software", "priority": "medium", "system": "jira" } } } Response: { "type": "tool_response", "data": { "name": "create_ticket", "content": { "id": "ACCT-123", "status": "open", "url": "https://your-instance.atlassian.net/browse/ACCT-123" } } }

Debugging

This project includes several debugging tools:

  • debug_smithery_mcp.bat: Diagnoses MCP-specific issues with Smithery
  • force_redeploy_smithery.bat: Forces redeployment with MCP configuration
  • test_tools.js: Tests MCP tool calls locally

Documentation

Diagrams

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Resources

-
security - not tested
A
license - permissive license
-
quality - not tested

An MCP-compliant server that provides a standardized interface for LLMs to interact with multiple ITSM systems (ServiceNow, Jira, Zendesk, Ivanti, Cherwell) through a unified set of tools.

  1. Overview
    1. MCP Server Information
      1. MCP Compatibility
      2. MCP Server Usage
    2. Features
      1. Prerequisites
        1. Installation
          1. Configuration
            1. ITSM Credentials
            2. Smithery Configuration
          2. Available Tools
            1. Usage
              1. Debugging
                1. Documentation
                  1. Diagrams
                    1. Contributing
                      1. License
                        1. Resources