{
  "version": "2",
  "generatedAt": "2026-11-03T22:49:39.280Z",
  "listing": {
    "slug": "minthcm--minthcm",
    "name": "MintHCM",
    "tagline": "AGPL HR platform with time and attendance, leave and resource booking, shipping its own MCP server module with OAuth 2.1.",
    "shortTagline": "AGPL HR platform with MCP",
    "description": "MintHCM is a SuiteCRM-derived human capital management system: recruitment, onboarding, employee records, competences, time and attendance, leave, resource and workplace booking, reporting, with iOS and Android apps. The repo carries an mcp/ module that serves an MCP endpoint at <site_url>/mcp behind OAuth 2.1 with PKCE, alongside a JSON:API-style REST API (Api/V8) that reads and writes any module. There is no shift rostering or payroll.",
    "capabilities": [
      "adaptable",
      "operable"
    ],
    "vertical": "scheduling-staffing",
    "alternativeTo": [
      "BambooHR",
      "Personio"
    ],
    "shape": "business-app",
    "formFactor": "web-app",
    "executionModel": "hybrid",
    "provenance": "human-written",
    "codeStack": {
      "languages": [
        "PHP",
        "TypeScript"
      ],
      "frameworks": [
        "Vue",
        "SuiteCRM",
        "SugarCRM CE"
      ],
      "packageManager": "composer",
      "database": [
        "MySQL",
        "MariaDB",
        "Elasticsearch"
      ],
      "hostingTarget": [
        "apache",
        "docker",
        "on-premise"
      ]
    },
    "modelStack": {
      "providers": [
        "LLM-agnostic per README: OpenAI, Anthropic, Mistral, local Llama"
      ],
      "models": [],
      "requiredKeys": [],
      "promptLocations": [
        "mcp/SKILL.md"
      ],
      "tools": [
        "browse_documentation",
        "get_documentation_entry"
      ]
    },
    "repos": [
      {
        "url": "https://github.com/minthcm/minthcm",
        "owner": "minthcm",
        "name": "minthcm",
        "license": "AGPL-3.0",
        "stars": 432,
        "lastCommit": "2026-08-20"
      }
    ],
    "interface": {
      "kind": "mcp",
      "url": "https://github.com/minthcm/minthcm/tree/main/mcp",
      "official": true,
      "hosted": "local"
    },
    "operability": "official",
    "recommendedWrapper": null,
    "reach": [
      {
        "job": "Read and update employee records",
        "reachable": true,
        "evidence": "Api/V8 JSON:API CRUD on any module (minthcm.org/support/how-to-use-mint-api); MCP module in repo"
      },
      {
        "job": "Leave requests and balances",
        "reachable": true,
        "evidence": "leave management module; module records are reachable through Api/V8"
      },
      {
        "job": "Time and attendance entries",
        "reachable": true,
        "evidence": "time and attendance module; Api/V8 module CRUD"
      },
      {
        "job": "Book resources and workplaces",
        "reachable": true,
        "evidence": "resources booking module; Api/V8 module CRUD"
      },
      {
        "job": "Manage candidates and recruitment",
        "reachable": true,
        "evidence": "recruitment module; Api/V8 module CRUD"
      },
      {
        "job": "Run onboarding and offboarding processes",
        "reachable": null,
        "evidence": "modules exist; whether process steps are driven through API or only the UI is not documented"
      },
      {
        "job": "Run reports",
        "reachable": null,
        "evidence": "reporting module; no API or MCP tool for report execution seen"
      },
      {
        "job": "Look up how-to guidance from inside the agent",
        "reachable": true,
        "evidence": "mcp/SKILL.md: browse_documentation and get_documentation_entry tools"
      },
      {
        "job": "Shift scheduling and rostering",
        "reachable": false,
        "evidence": "not a module: minthcm.org lists time management, calendar and leave, no shift roster"
      },
      {
        "job": "Payroll",
        "reachable": false,
        "evidence": "minthcm.org: payroll requires external integration"
      }
    ],
    "editions": [
      {
        "name": "Free",
        "price": null,
        "open": true,
        "distributions": [
          {
            "kind": "source",
            "url": "https://github.com/minthcm/minthcm"
          },
          {
            "kind": "container",
            "url": "https://github.com/minthcm/minthcm/tree/main/docker"
          }
        ]
      },
      {
        "name": "Implementation services",
        "price": null,
        "open": false,
        "distributions": [
          {
            "kind": "hosted",
            "url": "https://minthcm.com/"
          }
        ]
      }
    ],
    "skills": {
      "kind": "bundled",
      "paths": [
        "mcp/SKILL.md"
      ],
      "install": null,
      "note": "A single SKILL.md next to the bundled MCP server, teaching an agent to drive MintHCM through it."
    },
    "customization": {
      "summary": "Deploy with docker/docker-compose.yml and docker/.env or the MintCLI installer, which also writes the root .htaccess the MCP module needs. Runtime settings follow the SuiteCRM pattern under legacy/ (config and config_override files); modules, fields, workflows and the Vue UI are customizable in-app and at framework level. The MCP module in mcp/ has its own composer setup and a SKILL.md for clients. Model provider for the built-in agent is chosen per instance.",
      "envVars": [],
      "configFiles": [
        "docker/docker-compose.yml",
        "docker/.env",
        "docker/config",
        "mcp/SKILL.md",
        "legacy/config_override.php (SuiteCRM-derived; path not verified this run)"
      ],
      "promptFiles": [
        "mcp/SKILL.md"
      ],
      "effort": "config-only",
      "editCount": 6
    },
    "useWhen": [
      "I need an HR system for a 50 to 500 person company that I host, with leave, attendance and room booking, and I want agents to work inside it",
      "I want to build HR copilots on my own employee data without sending it to a SaaS"
    ],
    "accounts": [
      "a model provider for the built-in agent (optional)"
    ],
    "active": true,
    "lastActivity": "2026-08-20",
    "gotchas": [
      "AGPL-3.0 copyleft",
      "Heavy for an SMB: Apache with mod_rewrite and AllowOverride, PHP 8.2, MySQL or MariaDB, and Elasticsearch 7.10+ are required",
      "No shift rostering and no payroll; this is HR administration, not staffing",
      "Zero open GitHub issues on a 432-star repo: support runs through the minthcm.org forum and Discord, so issue history is not a signal here",
      "MCP discovery URLs depend on the root .htaccess generated by MintCLI; a hand installation must reproduce it"
    ],
    "fit": {
      "adaptable": 2,
      "operable": 3
    },
    "evidence": {
      "formFactor": "README: Apache-served PHP application with a Vue front end and mobile apps",
      "executionModel": "README: built-in AI agent, LLM-agnostic; core HR modules are deterministic",
      "operability": "mcp/ directory in the Builder's repo with OAuth 2.1 README; Api/V8 REST documented on minthcm.org",
      "effort": "docker/ directory with docker-compose.yml, .env and config; MintCLI installer in repo",
      "editions": "README and minthcm.org: free, no license fees, self-hosted; paid implementation from minthcm.com",
      "active": "shortlist pushedAt 2026-08-20; minthcm.org reports 37,800+ downloads"
    },
    "confidence": {
      "formFactor": 0.9,
      "executionModel": 0.6,
      "operability": 0.85,
      "effort": 0.5,
      "reach": 0.6,
      "editions": 0.85
    },
    "openQuestions": [
      "Which MCP tools exist beyond the two documentation tools in mcp/SKILL.md? Read mcp/Capabilities",
      "Exact SuiteCRM-derived config file paths under legacy/ were not verified; confirm config_override.php before quoting it",
      "Builder describes the architecture as agent-native; recorded as official because the HR UI remains primary. Curator to decide",
      "Which env var names does docker/.env carry?"
    ],
    "sources": [
      {
        "url": "https://github.com/minthcm/minthcm",
        "foundBy": "sourcing:scheduling-staffing:curated"
      },
      {
        "url": "https://minthcm.org/",
        "foundBy": "sourcing:scheduling-staffing:curated"
      },
      {
        "url": "https://minthcm.org/support/how-to-use-mint-api/",
        "foundBy": "analysis:scheduling-staffing"
      },
      {
        "url": "https://github.com/minthcm/minthcm/blob/main/mcp/README.md",
        "foundBy": "analysis:scheduling-staffing"
      }
    ],
    "research": {
      "stage": "verified",
      "verdict": "unverified",
      "reason": "Builder ships an MCP module and a generic module REST API; HR-adjacent rather than rostering. Config surface is real but SuiteCRM-shaped and partly unverified.",
      "disputed": []
    },
    "url": "apps/minthcm--minthcm.html",
    "coverage": "partial",
    "paid": false,
    "source": "research/verified/minthcm--minthcm.json"
  }
}
