The Best Zammad MCP Server? basher83 vs. Softoft-Orga in a Hard Test

2026-05-27

A detailed comparison of the two open-source Model Context Protocol (MCP) servers for Zammad. Learn how to securely connect your AI assistants (Claude, Cursor) to your helpdesk.

The Best Zammad MCP Server? basher83 vs. Softoft-Orga in a Hard Test

The Model Context Protocol (MCP), initiated by Anthropic, has rapidly established itself as the industry standard for connecting AI assistants (such as Claude Desktop, Cursor, or Copilot) with external data sources and APIs. For the popular open-source ticketing system Zammad, two outstanding MCP server implementations now exist, enabling AI models to interact directly with tickets, users, and organizations via natural language.

Since these integrations focus on different priorities, taking a close look at their architectures, licenses, and security features is worthwhile. In this post, we compare the community-driven server from basher83 with the production-oriented solution from Softoft-Orga (zammad-mcp-server).


The Candidates at a Glance

1. Zammad MCP by basher83

This project is an established, highly interactive community solution. It features a wide range of functions tailored especially to power users and developers who want to access Zammad directly from their local LLM runtime environments.

2. Zammad MCP Server by Softoft-Orga

This server is targeted at production-ready enterprise deployments. The focus lies on a fine-grained permission concept, flexible provisioning (SSE transport for distributed architectures), and modular connection to larger automation setups.

  • GitHub Repository: Softoft-Orga/zammad-mcp-server
  • PyPI Package: zammad-mcp-server
  • License: MIT (extremely permissive license, ideal for commercial integrations and customizations)

Direct Feature Comparison

Feature / Propertybasher83 (iflow-mcp-basher83-zammad)Softoft-Orga (zammad-mcp-server)
LicenseAGPL-3.0 (Copyleft)MIT (Permissive)
Tool NamingPrefixed (e.g., zammad_search_tickets)Flat/Clear (e.g., search_tickets)
Number of Tools~20 standard operations30+ tools (full API coverage)
Access Control (ACL)Simple blacklist via MCP_DENIED_TOOLSFine-grained tiers (DENIED, READ_ONLY, WRITE, ADMIN), category and group restrictions
SSE Transport (Remote)Requires additional wrapper / SSE proxyBuilt-in natively (--transport sse --port 8000)
Resources & PromptsComprehensive resources (zammad://ticket/{id}) & prompt templatesFocus on core APIs and programmatic integration
CachingCaching for groups, priorities, and ticket statesIntelligent caching of static system metadata
Interface CoverageTickets, articles, attachments (Base64), tags, users, orgs, groups, states, statsTickets, articles, users, orgs, groups, caching, system health checks

Detailed Analysis of Differences

1. Permissions and Security (Access Control)

Companies granting AI models access to their internal ticketing system must enforce strict security guidelines. This is where both servers differ most significantly:

  • basher83 offers robust yet simple protection: Using the environment variable MCP_DENIED_TOOLS, specific tools (such as deletion or update functions) can be disabled completely.
  • Softoft-Orga implements a fine-grained permission concept. Beyond a tool blacklist, access rights can be restricted at the category level (e.g., tickets read-only, users blocked) or even at the Zammad group level (e.g., granting access only to tickets in the "Support" and "Sales" groups). Furthermore, security policies can be adjusted declaratively in Python code:
    python
    policy = AccessPolicy(
        default_permission=Permission.READ_ONLY,
        category_permissions={
            ToolCategory.TICKETS: Permission.WRITE,
            ToolCategory.ADMIN: Permission.DENIED,
        },
        denied_tools={"delete_ticket"},
    )
    

2. Naming Conventions and Tool Collisions

Running multiple MCP servers simultaneously in your AI client (e.g., Claude Desktop) can lead to tool name collisions:

  • basher83 uses the zammad_ prefix for all offered tools (e.g., zammad_get_ticket). This reliably prevents naming conflicts in the AI context.
  • Softoft-Orga relies on short, direct method names (e.g., get_ticket). This is easier for dedicated, specialized AI agents to read, but requires attention when other MCP servers with similar generic tools run in parallel.

3. Network and Deployment Architecture

How is the MCP server started and connected?

  • basher83 is optimized for classic stdio scenarios (called directly via uvx or Docker on the same machine running the client). It sets up exceptionally well as a local assistant.
  • Softoft-Orga offers native SSE support (Server-Sent Events). This allows the server to run as a standalone web service within the corporate network. External clients or centralized agent platforms can connect via HTTP/SSE instead of requiring the process to run locally on the desktop.

4. Integration into AI Infrastructure

  • The basher83 server brings its own MCP prompts (such as analyze_ticket or draft_response) and resource URIs directly. This enables the AI assistant to instantly know how to structure typical workflows.
  • The Softoft-Orga server is designed as a modular building block and suits deployments in larger automation pipelines—such as classifying and answering tickets via on-premise models while agents make ad-hoc queries via MCP.

Configuration Examples

To test both servers directly, you can find the corresponding configurations for your claude_desktop_config.json or Cursor MCP settings below.

Configuration for basher83 (via PyPI/uvx)

json
{
  "mcpServers": {
    "zammad-community": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/basher83/zammad-mcp.git",
        "mcp-zammad"
      ],
      "env": {
        "ZAMMAD_URL": "https://your-instance.zammad.com/api/v1",
        "ZAMMAD_HTTP_TOKEN": "your_api_token",
        "MCP_DENIED_TOOLS": "zammad_delete_attachment"
      }
    }
  }
}

Configuration for Softoft-Orga (via PyPI/uvx)

json
{
  "mcpServers": {
    "zammad-enterprise": {
      "command": "uvx",
      "args": [
        "zammad-mcp-server"
      ],
      "env": {
        "ZAMMAD_URL": "https://your-instance.zammad.com",
        "ZAMMAD_HTTP_TOKEN": "your_api_token",
        "MCP_DENIED_TOOLS": "delete_ticket,delete_user,delete_organization"
      }
    }
  }
}

Conclusion: Which Zammad MCP Server Is Right for You?

Both projects impressively demonstrate the potential of MCP in the ITSM environment. Your choice primarily depends on your use case:

  • Choose the basher83 server if you are a developer or IT professional looking for a fast, feature-rich connection for your local Claude or Cursor client. The built-in prompts and prefixed tool names make daily hacking extremely comfortable.
  • Choose the Softoft-Orga server if you are connecting Zammad in an enterprise environment. When you need to enforce fine-grained access controls, run the server as a centralized SSE service in a Kubernetes cluster, or embed it into a larger automation pipeline, this server is the right choice.

You can find further details on compatible extensions and plugins for Zammad in our Zammad plugin directory.