# simple-support-system-mcp [Health: Active]

**Category:** 🎧 Support & Service Management  
**Repository:** https://github.com/bitterdev/simple-support-system-mcp  
**GitHub Stars:** 0  
**Views:** 1  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/simple-support-system-mcp

## Description
MCP server for the Simple Support System helpdesk API: read, answer and move tickets.

## Tools
Capabilities this server exposes over MCP:

- **list_tickets** — Lists tickets with filters for project, state, type, priority, assignee, text search and change date, sorted and paged. Compact summaries by default.
- **get_ticket** — Reads one ticket with its attachments and, unless switched off, all of its comments.
- **reply_to_ticket** — Posts a reply as a comment on a ticket and triggers the notification mails.
- **set_ticket_state** — Moves a ticket to another workflow state and notifies everyone involved.
- **create_ticket** — Creates a ticket in a project, by project id or project handle, optionally with uploaded files.
- **update_ticket** — Changes title, content, type, priority or assignee. Only the given fields are touched.
- **approve_ticket** — Approves a moderated ticket.
- **delete_ticket** — Deletes a ticket with all comments and attachment links. Irreversible, needs `confirm: true`.
- **list_ticket_comments** — Lists the comments of a ticket.
- **update_comment** — Replaces the text of a comment.
- **approve_comment** — Approves a moderated comment.
- **delete_comment** — Deletes a comment. Irreversible, needs `confirm: true`.
- **list_projects** — Lists the support projects, with access tokens when an API key is configured.
- **get_project** — Reads one project by id.
- **create_project** — Creates a project, private projects get a generated access token.
- **update_project** — Changes name, handle or visibility of a project.
- **delete_project** — Deletes a project with every ticket and comment inside it. Irreversible, needs `confirm: true`.
- **list_ticket_attachments** — Lists the files attached to a ticket.
- **upload_attachment** — Uploads a local file into the file manager and returns its file id.
- **add_ticket_attachments** — Links uploaded file ids to a ticket.
- **download_attachment** — Resolves the download URL of an attachment and can save it to a local path.
- **delete_attachment** — Removes a file from a ticket. Irreversible, needs `confirm: true`.
- **get_server_info** — Shows the configured API URL, whether a key is present and the accepted states, types and priorities. The key itself is never returned.

## Claude Desktop Quick Installation
No confirmed install details yet, so no config is published. Follow the setup steps in the repository above.

## Documentation

## What simple-support-system-mcp MCP server does

The simple-support-system-mcp MCP server gives an MCP-compatible assistant access to a Simple Support System installation running on Concrete CMS. It covers the main support workflow: finding tickets, reading their comments and attachments, replying, and moving tickets through workflow states. It also supports ticket creation and editing, project administration, moderation, and attachment handling.

Ticket searches can be filtered by project, state, type, priority, assignee, text, and change date. Results support sorting and pagination, with compact summaries available by default. Ticket reads can include the full comment history and attached files. Replies trigger the helpdesk's notification emails, and state changes notify the people involved.

## How it works

The process runs as a local Node.js program and communicates through stdio. It does not open a listening port. Requests are sent to the configured Simple Support System REST API, whose response formats and error envelopes are normalized before results are returned to the client.

The API base URL comes from configuration. By default, the server appends `/index.php/api/v1`; an existing `/api/v1` suffix is preserved, and a custom API path can be supplied for installations with a different dispatcher. Creating a ticket returns a status response rather than the new record, so callers must use ticket listing to find the created ticket's ID.

## Setup and configuration

Install dependencies and compile the project with `npm install` followed by `npm run build`. Register the compiled entry point in an MCP client, passing the server's environment variables in that client's configuration.

`SIMPLE_SUPPORT_SYSTEM_BASE_URL` is required and identifies the Concrete CMS site. `SIMPLE_SUPPORT_SYSTEM_API_KEY` is optional; when present, it is sent as the `X-Api-Key` header and enables administrative operations. Without it, anonymous access can still read public projects and approved tickets, create tickets, and write comments, but cannot change states, approve, delete, or manage projects.

`SIMPLE_SUPPORT_SYSTEM_API_PATH` overrides the default API path. `SIMPLE_SUPPORT_SYSTEM_PROJECT_TOKEN` supplies a default token for private projects when a tool call does not provide one. `SIMPLE_SUPPORT_SYSTEM_TIMEOUT_MS` changes the request timeout from its 30-second default.

## Tools and capabilities

The simple-support-system-mcp MCP server exposes tools for:

- Listing, reading, creating, updating, replying to, approving, and deleting tickets.
- Listing, editing, approving, and deleting ticket comments.
- Listing, creating, updating, reading, and deleting support projects.
- Uploading files, linking them to tickets, listing attachments, downloading them, and removing them.
- Inspecting the configured API URL, key presence, and accepted ticket values through `get_server_info`.

Accepted ticket types are `bug`, `enhancement`, `proposal`, and `task`. Priorities range from `trivial` to `blocker`. Workflow states include `new`, `open`, `in_progress`, `on_hold`, `resolved`, `duplicate`, `invalid`, `wont_fix`, and `closed`; `new` is creation-only. Closed and invalid tickets cannot be edited until their state changes.

## Limitations and notes

Deletion of tickets, comments, projects, or attachments is irreversible and requires `confirm: true`. The API has no trash or restore function. Project deletion also removes all tickets and comments inside that project.

Private projects require their access token unless an API key grants full access. Uploaded files are initially placed in the site's file manager; a separate attachment operation links them to a ticket. Tests use a stubbed HTTP layer and do not require live credentials.

_Full upstream README: https://allmcps.com/mcp/simple-support-system-mcp/readme_

