mothermachine

Browse / Scheduling and staffing

MintHCM

AGPL HR platform with time and attendance, leave and resource booking, shipping its own MCP server module with OAuth 2.1.

AdaptableOperable Business appWeb app Hybrid PHPTypeScript MCP server License: AGPL-3.0

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.

Use it when
  • 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
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

Last activity Aug 20, 2026. Fit: adaptable 2, operable 3.

Editions

Free · Free open source

  • Clonegit clone https://github.com/minthcm/minthcm
  • ImageContainer

Implementation services · Free closed source

For agents: JSON · Markdown

Adaptable: what is yours to change

Make it yours

Config only6 things to edit

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.

Env vars
none
Config files
docker/docker-compose.yml docker/.env docker/config mcp/SKILL.md legacy/config_override.php (SuiteCRM-derived; path not verified this run)
Prompt files
mcp/SKILL.md
Accounts you need
a model provider for the built-in agent (optional)

Source

Operable: what an agent can drive

Interface

OfficialMCP serverpublished by the builderlocal

How an agent can drive an Operable Listing, in five levels: native (built for the agent as the primary interface), official (the Builder ships an agent interface), wrapped (a third party wraps the software's API), config (an agent can only drive it by editing files), gui (screen control only). An interface is official only when it is published by the same organization that ships the software. GUI-level Listings are allowed and sorted last.

Docs
github.com/minthcm/minthcm/tree/main/mcp
Tools
browse_documentation get_documentation_entry

Reach

Partial coverage. 6 of 10 jobs reachable through the stated interface.

JobThrough the interfaceEvidence
Read and update employee recordsReachableApi/V8 JSON:API CRUD on any module (minthcm.org/support/how-to-use-mint-api); MCP module in repo
Leave requests and balancesReachableleave management module; module records are reachable through Api/V8
Time and attendance entriesReachabletime and attendance module; Api/V8 module CRUD
Book resources and workplacesReachableresources booking module; Api/V8 module CRUD
Manage candidates and recruitmentReachablerecruitment module; Api/V8 module CRUD
Run onboarding and offboarding processesUndeterminedmodules exist; whether process steps are driven through API or only the UI is not documented
Run reportsUndeterminedreporting module; no API or MCP tool for report execution seen
Look up how-to guidance from inside the agentReachablemcp/SKILL.md: browse_documentation and get_documentation_entry tools
Shift scheduling and rosteringNot reachablenot a module: minthcm.org lists time management, calendar and leave, no shift roster
PayrollNot reachableminthcm.org: payroll requires external integration

Code stack

Languages
PHPTypeScript
Frameworks
VueSuiteCRMSugarCRM CE
Package manager
composer
Database
MySQLMariaDBElasticsearch
Hosting target
apachedockeron-premise
Built
Human-written (recorded, never ranked)

Model stack

Providers
LLM-agnostic per README: OpenAI, Anthropic, Mistral, local Llama
Models
none
Keys you need
none
Prompts live in
mcp/SKILL.md

Skills

A single SKILL.md next to the bundled MCP server, teaching an agent to drive MintHCM through it.

Kind
bundled
Paths
mcp/SKILL.md

Evidence and confidence

FieldWhere it was seenConfidence
formFactorREADME: Apache-served PHP application with a Vue front end and mobile apps90%
executionModelREADME: built-in AI agent, LLM-agnostic; core HR modules are deterministic60%
operabilitymcp/ directory in the Builder's repo with OAuth 2.1 README; Api/V8 REST documented on minthcm.org85%
effortdocker/ directory with docker-compose.yml, .env and config; MintCLI installer in repo50%
editionsREADME and minthcm.org: free, no license fees, self-hosted; paid implementation from minthcm.com85%
activeshortlist pushedAt 2026-08-20; minthcm.org reports 37,800+ downloads–
reach60%

Open questions

  • 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