frontmcp CLI provides commands for development, process management, and package management. Install it globally or use via npx.
Development Commands
Commands for building, testing, and debugging your FrontMCP server.Process Manager Commands
Manage long-running MCP servers with automatic supervision, restart policies, and logging.Package Manager Commands
Install, configure, and manage MCP apps from npm, local paths, or git repositories.Plugin Commands (issue #411)
Emit the current FrontMCP server as a plugin for an AI tool. Today supports Claude Code (.claude/plugins/<name>/) and Codex (~/.codex/config.toml).
Flags shared across the three subcommands:
End-user path (built bin): every CLI built with
frontmcp build --target cli
inherits install -p claude|codex AND uninstall -p claude|codex. Pass -p
(repeatable) plus the same scope flags above to get the same plugin emit (or
removal) from the installed binary — the bin reads its sibling
bin-meta.json and _skills/ tree, no SDK boot or schema extraction required
at install time.
@Skill metadata. When a server
ships @Skill({ name, description, tags, license, instructions: { file } })
entries, the install flow composes proper YAML frontmatter from the decorator
fields (so Claude Code’s filesystem loader can index the skill) and copies
the instruction file body verbatim. If the source body already starts with a
--- frontmatter block, it is preserved as-is — the user’s authoring is
treated as authoritative.
Options Reference
General Options
Build Options
Start Options
Stop Options
Logs Options
Install Options
Create Options
The
create command automatically initializes a git repository and creates an initial commit after scaffolding.
If git is not installed, this step is silently skipped.Socket Options
Test Options
Generated Executable CLI
When you build with--target cli, the output is a self-contained executable whose commands are auto-generated from your MCP server’s tools, resources, prompts, and templates.
Building
dist/ that can be distributed and run directly. Use --js to emit a plain JavaScript bundle instead.
Global Options
Command Groups
The generated CLI organizes commands into five groups: Tools — Each MCP tool becomes a kebab-case subcommand. Flags are derived from the tool’s input schema. Object-typed parameters accept JSON strings:resource list, resource read <uri>, template list, template <name>, prompt list, prompt <name>.
Auth — login, logout, sessions list, sessions switch <name>, connect --token <TOKEN>.
Subscriptions — subscribe resource <uri>, subscribe notification <name>.
System — serve, daemon start|stop|status|logs, doctor, install, uninstall.
Example Session
Configuration
Control the generated CLI via thecli block on the cli deployment in frontmcp.config.js:
Tool Name Conflicts
If a tool name collides with a built-in command (login, logout, serve, connect, doctor, install, uninstall, resource, template, prompt, subscribe, sessions, daemon, job, skills), the tool subcommand is automatically suffixed with -tool (e.g., login-tool).