Skip to main content

MCP server for TOPdesk API using FastMCP and TOPdeskPy SDK

Project description

topdesk-mcp

This project is a Model Context Protocol (MCP) server implemented in Python. It exposes the Topdesk API via the TOPdeskPy SDK.

Project Purpose

  • Acts as an MCP server to bridge MCP clients with the Topdesk API.
  • Uses the TOPdeskPy SDK (with some modifications) for all Topdesk API interactions.

MCP Config JSON

{
  "servers": {
    "topdesk-mcp": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "--from", 
        "git+https://github.com/dbsanfte/topdesk-mcp@master",
        "topdesk-mcp"
      ],
      "env": {
         "TOPDESK_URL": "<your topdesk URL>",
         "TOPDESK_USERNAME": "<your topdesk username>",
         "TOPDESK_PASSWORD": "<your topdesk api key>"
      }
    }
  }
}

Environment Variables

  • TOPDESK_URL: The base URL of your Topdesk instance. e.g. https://yourcompany.topdesk.net
  • TOPDESK_USERNAME: The username you generated the API token against.
  • TOPDESK_PASSWORD: Your API token
  • TOPDESK_MCP_TRANSPORT: (Optional) The transport to use: 'stdio', 'streamable-http', 'sse'. Defaults to 'stdio'.
  • TOPDESK_MCP_HOST: (Optional) The host to listen on (for 'streamable-http' and 'sse'). Defaults to '0.0.0.0'.
  • TOPDESK_MCP_PORT: (Optional) The port to listen on (for 'streamable-http' and 'sse'). Defaults to '3030'.

Setup for Local Development

  1. Ensure Python 3.11+ is installed.

  2. Create and activate a virtual environment:

    PowerShell:

    python -m venv .venv
    .venv\Scripts\Activate.ps1
    

    Bash:

    python3 -m venv .venv
    source .venv/bin/activate
    
  3. Install dependencies:

    pip install uv
    uv pip install -r requirements.txt
    
  4. Run:

    python -m topdesk_mcp.main
    

Notes:

  • The server skeleton was generated using the official MCP server template.
  • Contributions are welcome.

Package Structure

topdesk_mcp/  # Directory for the MCP server package
    __init__.py     # Marks as a Python package
    main.py         # Entry point for the MCP server
    
    _topdesk_sdk.py # TOPdeskPy SDK
    _incident.py    # Incidents API
    _operator.py    # Operator API
    _person.py      # Person API
    _utils.py       # Helper methods for Requests

References

License

MIT license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

topdesk_mcp-0.5.0.tar.gz (52.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

topdesk_mcp-0.5.0-py3-none-any.whl (23.6 kB view details)

Uploaded Python 3

File details

Details for the file topdesk_mcp-0.5.0.tar.gz.

File metadata

  • Download URL: topdesk_mcp-0.5.0.tar.gz
  • Upload date:
  • Size: 52.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for topdesk_mcp-0.5.0.tar.gz
Algorithm Hash digest
SHA256 75cfd8d1ea48a015fca0f99c4a2eeb13d85664b8ab05041279ef267b8f157bbd
MD5 423daa60edc317c5ec20c0cb951d1d6c
BLAKE2b-256 f6b7acff6a83621de126990f8c8f529289b9237e5ea59eb42b40c18a6ca37dca

See more details on using hashes here.

Provenance

The following attestation bundles were made for topdesk_mcp-0.5.0.tar.gz:

Publisher: pypi.yml on dbsanfte/topdesk-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file topdesk_mcp-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: topdesk_mcp-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 23.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for topdesk_mcp-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 72199e2c2deb60df2ac9a05ea79bb263c739b8570c301959a32a22dc14c12f21
MD5 22cee6964260d6230948fb029682ad7e
BLAKE2b-256 29148d44cf767997587f9382bedaa990ae5b6bd302b30c75469e76c00b211806

See more details on using hashes here.

Provenance

The following attestation bundles were made for topdesk_mcp-0.5.0-py3-none-any.whl:

Publisher: pypi.yml on dbsanfte/topdesk-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page