InvGate Service Desk

io.github.tracegazer由 GitHub 账号 tracegazer 发布v0.2.0更新于 Oct 24, 2026

InvGate Service Desk MCP: 96 tools/11 domains, 3-tier access (none/support/full), OTel.

概览

AI 生成的概览

面向 InvGate Service Desk 的 MCP 服务器,让助手查询工单、用户、知识库文章、资产与工时记录,并可选地写入工单。

可以做什么
  • 查询工单:获取详情、按状态/坐席/客户列出、查看审批
  • 查找用户与群组,按邮箱或电话定位人员
  • 搜索与浏览知识库,在开启写入后可创建和更新文章
  • 查看目录数据、自定义字段、组织结构、资产与配置项关系
  • 查看工时记录、自动化触发器、工作流与公告
  • 在显式开启的写入配置下创建、更新、转派、评论工单并登记工时
适用场景
适合让助手在不离开对话的情况下回答 InvGate Service Desk 实例中的问题,例如工单状态、客户历史、知识库文章查找或资产关联。只有在希望助手直接操作工单或文章时才开启写入配置。
运行要求
以 stdio 在本地运行,可通过 uvx、pip 或预构建的 Claude Desktop 安装包部署。需要 INVGATE_BASE_URL 指定实例地址,以及从实例 API 设置获取的 INVGATE_API_TOKEN。可选 ~/.config/invgate-service-desk-mcp/config.toml 配置文件,以及可选的 OpenTelemetry 导出。
安装前请注意
API 令牌可访问真实的服务台数据,并通过 HTTP Basic 发送。写入默认关闭;将 INVGATE_WRITE_PROFILE 设为 support 或 full 后,助手可创建、修改和删除真实内容,且工单无法删除、只能取消。sse 与 streamable-http 传输没有内置认证。启用遥测后会把追踪、指标和日志发送到 OTLP 后端。

安装

在 SourceWeft 中

  1. 打开 控制台中的 InvGate Service Desk,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

invgate-service-desk-mcp

[CI] [PyPI] [Python] [License: MIT] [MCP Registry] [Smithery]

A Model Context Protocol server for InvGate Service Desk / Service Management.

Give your AI assistant full access to your InvGate Service Desk — query incidents, look up users, search the knowledge base, check assets, and manage tickets — all through natural language.

96 tools across 11 domains. Read-only by default, with optional write operations behind explicit opt-in.

Install in one click

The easiest way to use this server with Claude Desktop (and other MCPB-compatible clients) is the prebuilt bundle:

➡️ Download invgate-service-desk.mcpb — then double-click it. Claude Desktop opens the installer, prompts for your InvGate base URL and API token, and you're done. No Python, no npx/uvx, no config files.

The .mcpb is attached to every GitHub Release and mirrored on Smithery. Prefer a package manager or container? See Quick start below.

What can it do?

DomainToolsExamples
Catalog5List priorities, statuses, incident types, categories (with search), sources
Incidents34Get ticket details, list by status/agent/customer, create & update tickets, reassign, comment, manage approvals
Users & Groups7Look up users, find by email/phone, list group members
Knowledge Base10Search articles, browse categories, create & update articles
Custom Fields9List field definitions, get options (list/tree), fields by category
Organization11Helpdesks, levels, locations, company structure
Assets / CIs6Find assets linked to incidents, CI relationships
Time Tracking4View logged hours, log new time entries
Triggers2List automation rules and their executions
Workflows3Inspect workflow fields, processes, and field values
Breaking News5View announcements, statuses, types

63 read-only tools work out of the box. 33 write tools (incidents, KB, time tracking) activate only when you explicitly opt in.

Quick start

1. Install

bash
pip install invgate-service-desk-mcp

Or run without installing (requires uv):

bash
uvx invgate-service-desk-mcp

2. Connect to Claude Desktop

Add this to your claude_desktop_config.json:

jsonc
{  "mcpServers": {    "invgate": {      "command": "uvx",      "args": ["invgate-service-desk-mcp"],      "env": {        "INVGATE_BASE_URL": "https://acme.sd.cloud.invgate.net",        "INVGATE_API_TOKEN": "your-api-token"      }    }  }}

Restart Claude Desktop. That's it — start asking about your tickets.

Using pip install instead of uvx
jsonc
{  "mcpServers": {    "invgate": {      "command": "invgate-service-desk-mcp",      "env": {        "INVGATE_BASE_URL": "https://acme.sd.cloud.invgate.net",        "INVGATE_API_TOKEN": "your-api-token"      }    }  }}
Enabling write operations

By default the server is read-only. Opt into writes with INVGATE_WRITE_PROFILE:

ProfileReadsWrites
none (default)everythingnothing
supporteverythingincidents (tickets, comments, reassign, approve) + time tracking
fulleverythingincidents + time tracking + Knowledge Base
jsonc
{  "mcpServers": {    "invgate": {      "command": "uvx",      "args": ["invgate-service-desk-mcp"],      "env": {        "INVGATE_BASE_URL": "https://acme.sd.cloud.invgate.net",        "INVGATE_API_TOKEN": "your-api-token",        "INVGATE_WRITE_PROFILE": "support"      }    }  }}

Compatibility: the legacy INVGATE_ENABLE_WRITES=1 still works and maps to full. If both are set, the profile wins and a warning is printed to stderr. Note: support deliberately keeps the Knowledge Base read-only. An invalid profile name fails fast at startup.

Warning: write mode lets the connected agent create, modify, and delete real content through your InvGate credential. There is no API to delete a ticket — created tickets can only be cancelled, not removed.

3. Get your API token

In your InvGate Service Desk instance: Settings > Integrations > API (or ask your admin). The server authenticates via HTTP Basic with username api and your token as the password.

Configuration

Configuration resolves in this order (highest priority first):

  1. Environment variables (always win)
  2. TOML config at ~/.config/invgate-service-desk-mcp/config.toml
Env varTOML keyDescription
INVGATE_BASE_URLbase_urlInstance URL, e.g. https://acme.sd.cloud.invgate.net
INVGATE_API_TOKENapi_tokenAPI token (HTTP Basic password)
INVGATE_API_USERNAMEapi_usernameHTTP Basic username (optional, defaults to api)
INVGATE_WRITE_PROFILEwrite_profileWrite access profile: none (default), support, or full
INVGATE_TELEMETRYtelemetry_enabledEnable OpenTelemetry (default: false)
INVGATE_TELEMETRY_DETAILtelemetry_detailSpan detail: metadata (default), ids, or full
toml
# ~/.config/invgate-service-desk-mcp/config.tomlbase_url = "https://acme.sd.cloud.invgate.net"api_token = "..."# api_username = "api"# write_profile = "none"  # "none" (default) | "support" | "full"# telemetry_enabled = false# telemetry_detail = "metadata"

Tip: create the config directory first: mkdir -p ~/.config/invgate-service-desk-mcp

See config.toml.example for a copy-paste template.

Running the server

bash
invgate-service-desk-mcp                 # STDIO transport (default)invgate-service-desk-mcp --transport sse # SSE/HTTP transport

Security note: STDIO (the default) keeps everything local. The sse and streamable-http transports have no built-in authentication — only use them bound to loopback or behind an authenticated reverse proxy.

Observability (optional)

The server can emit OpenTelemetry traces, metrics, and logs — completely opt-in and vendor-neutral. Export to any OTLP-compatible backend (Dynatrace, Grafana, Datadog, Jaeger, etc.).

bash
pip install "invgate-service-desk-mcp[telemetry]"
export INVGATE_TELEMETRY=1

OTLP endpoint and headers are configured via standard OpenTelemetry env vars (not in the TOML file):

Dynatrace setup
bash
export OTEL_EXPORTER_OTLP_ENDPOINT="https://<your-env>.live.dynatrace.com/api/v2/otlp"export OTEL_EXPORTER_OTLP_HEADERS="Authorization=Api-Token <YOUR_DT_TOKEN>"export OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE=deltaexport OTEL_SERVICE_NAME=invgate-service-desk-mcp

Token scopes needed: openTelemetryTrace.ingest, metrics.ingest, logs.ingest. See docs/observability-dynatrace.md for a detailed guide.

Generic OTLP collector
bash
export OTEL_EXPORTER_OTLP_ENDPOINT="http://localhost:4318"export OTEL_SERVICE_NAME=invgate-service-desk-mcp

Signals emitted:

  • Traces — tool execution spans (GenAI semantic conventions) + InvGate API request spans with response size and item count
  • Metrics — mcp.tool.duration, invgate.client.request.duration, mcp.tool.errors, invgate.response.item_count, invgate.response.size
  • Logs — tool errors and unexpected API response shapes, correlated to traces (OTLP only, never stdout)

Development

bash
git clone https://github.com/tracegazer/invgate-service-desk-mcp.gitcd invgate-service-desk-mcpuv venv && uv pip install -e ".[dev]"pytest

License

MIT

来源:README.md,提交 608bb85

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.2.0最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分