Puppet Master MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| pm_initA | Initialize a Puppet Master project. Checks dependencies, reads pmMode from config, and guides through setup (develop or build mode). Optionally starts the dev server. |
| pm_devA | Manage the PM development server. Start, stop, restart, or check status. The dev server runs on port 3000 by default. |
| pm_statusA | Display full Puppet Master project status: config mode, database state, dev server, enabled modules, features, and sections. |
| pm_db_pushA | Push Drizzle ORM schema to SQLite database. Creates the database file and applies schema changes. |
| pm_db_seedB | Seed the database with initial data (users, roles, sample content). Requires an existing database. |
| pm_db_resetA | Reset the database: delete the SQLite file, re-run migrations, and seed with initial data. |
| pm_db_migrateB | Run Drizzle migrations against the database. |
| pm_db_studioB | Open Drizzle Studio (web UI for browsing the database). |
| pm_deployA | Deploy the Puppet Master project to its configured VPS. Builds Docker image, pushes via SSH, runs Ansible deploy playbook, regenerates Traefik config, and health checks. |
| pm_rollbackB | Roll back the deployment to the previous Docker image. |
| pm_deploy_logsA | View deployment logs from the VPS. |
| pm_setupB | Provision the VPS with Docker, Dockge, Traefik, and SSH setup. |
| pm_buildA | Run a production build of the Puppet Master project. Creates optimized output in .output/ directory. Only use when explicitly requested for deployment or testing. |
| pm_lintB | Run linting on the project. Supports ESLint and formatting checks. Can auto-fix issues with the fix option. |
| pm_testA | Run tests for the Puppet Master project. Supports unit tests, API tests, E2E tests (Playwright), and the full staged suite. |
| pm_config_getA | Read Puppet Master configuration values. Returns pmMode, entities, features, modules, sections, locales, colors, admin settings. |
| pm_config_setA | Modify a Puppet Master configuration value directly in project/puppet-master.config.ts. Supports dot-notation keys. WARNING: rewrites the config file as JavaScript. |
| pm_knowledgeC | Load the Puppet Master framework knowledge base. Returns CSS system, component architecture, composables, database schema, API patterns, config system, and RTL reference. |
| pm_knowledge_entrypointA | Load greenfield or brownfield entrypoint documentation. Greenfield = new project from PM baseline. Brownfield = migrating existing codebase into PM. |
| pm_knowledge_contributingC | List or read PM contribution documents. Contributions are fixes/features exported from client projects for application back into the PM framework. Stored in docs/contributing/. |
| pm_contribute_listA | List all existing contribution documents in docs/contributing/. These are fixes/features exported from client projects that can be applied to the PM framework. |
| pm_contribute_readA | Read a specific contribution document. Returns the full content for review or application. |
| pm_contribute_exportA | Export current git changes as a PM contribution document. Generates a .pm-contribution.md file with diffs, descriptions, and testing instructions. Use this when you fix a bug or add a feature in a client project that should be contributed back to the PM framework. |
| pm_contribute_applyA | Read a .pm-contribution.md file and display its contents for manual application. Lists changed files, affected domains, dependencies, and testing instructions. Does NOT auto-apply — the AI agent reviews and applies. |
| pm_review_checklistA | Get the review checklist for a given PM specialty. Returns a structured checklist of items reviewers should verify. |
| pm_review_runB | Run automated checks relevant to a given specialty domain. Executes lint, typecheck, or test commands to validate code quality. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 26 tools
Most tools have clearly distinct purposes, such as separate tools for config get/set, each database operation, and contribution actions. However, there is potential overlap between pm_contribute_list and pm_knowledge_contributing, and between pm_knowledge variations, which causes slight ambiguity.
Tools consistently use the 'pm_' prefix, but naming patterns vary: some are single-word verbs (pm_build, pm_init) while others follow a noun_verb pattern (pm_config_get, pm_db_migrate). This inconsistency, though not chaotic, reduces predictability.
With 26 tools, the set is on the higher side but remains well-scoped to the Puppet Master ecosystem, covering development, database, deployment, contributions, and knowledge. A few tools could be consolidated (e.g., knowledge and contribute overlap), but overall the count is appropriate.
The tool surface covers the main lifecycle: init, dev, build, test, lint, config, db operations, deploy, rollback, and contributions. Some areas like monitoring or version management are absent but are not core to the stated purpose. Minor gaps exist, such as no direct tool for managing environment variables.