hyper-pm-mcp
v0.1.6
Published
stdio MCP server that runs the hyper-pm CLI
Readme
hyper-pm-mcp
stdio Model Context Protocol server that exposes the hyper-pm CLI to MCP hosts (for example Cursor or Claude Desktop).
Publishing to npm
Publish hyper-pm first, then this package. Use pnpm publish from each app directory (or --filter) so pnpm rewrites the workspace:^ range on hyper-pm to a real semver in the published manifest. Plain npm publish can leave workspace: specifiers intact and produce an uninstallable tarball.
Security
The hyper_pm_run tool runs the same hyper-pm process you would run locally with the given arguments. Only enable this server in MCP configurations you trust.
Build order
From the monorepo root:
- Build the CLI bundle:
pnpm --filter hyper-pm build - Build this server:
pnpm --filter hyper-pm-mcp build
The server resolves the CLI at hyper-pm/dist/main.cjs via require.resolve("hyper-pm") (published packages use dist/index.cjs as the package entry; see @workspace/hyper-pm-cli-runner). Ensure hyper-pm is built so dist/main.cjs exists before starting the MCP server.
Environment
Optional variables are documented in env.example and parsed through @workspace/env. Notable:
HYPER_PM_CLI_PATH: absolute path tomain.cjswhen resolution from the workspace package is not sufficient.
Cursor MCP example
After building, point the host at the bundled ESM entry:
{
"mcpServers": {
"hyper-pm": {
"command": "node",
"args": ["/absolute/path/to/hyper-pm/apps/hyper-pm-mcp/dist/main.mjs"],
"env": {}
}
}
}Use the real absolute path to dist/main.mjs on your machine (or a pnpm exec / wrapper script that runs it).
Tool: hyper_pm_run
argv(required): CLI tokens after global options, e.g.["epic", "read"]or["doctor"].- Optional fields mirror hyper-pm globals:
cwd,repo,tempDir,actor,githubRepo,dataBranch,remote,sync,keepWorktree.
--format json is always injected. The tool response is JSON text with exitCode, stdout, stderr, signal, and parsedStdout (when stdout is valid JSON).
Scripts
pnpm build— bundle todist/main.mjspnpm test/pnpm test:coveragepnpm check-types/pnpm lint
