Overview
mcpill is a CLI for building MCP servers from a plain-English spec called PILL.md. You describe your server's tools, resources, and prompts in structured Markdown — then hand the file to Claude and run mcpill compile to get a deployable artifact.
mcpill uses mcpster under the hood for the generated server code.
Install
npm install -g mcpill
Quickstart
# 1. Scaffold a new project
mcpill init my-server
# 2. Edit PILL.md to describe your server
# 3. Hand PILL.md to Claude for implementation guidance
# 4. Compile to a deployable artifact
mcpill compile
# 5. Start the server
mcpill run
PILL.md structure
A PILL.md has three required sections and one optional:
# My Server
## Description
One paragraph describing what this server does and for whom.
## Tools
List each tool — name, description, inputs, outputs.
## Resources (optional)
List each MCP resource URI and what it exposes.
## Constraints
Any hard rules the implementation must follow.
Specifying tools
Each tool entry in ## Tools follows this pattern:
### search_docs
Search the documentation index.
**Input:** `query` (string, required) — the search query
**Output:** Array of matching doc sections with titles and excerpts.
Specifying resources
### docs://index
Lists all available documentation sections.
Returns a Markdown index with section titles and URIs.
init
Scaffold a new mcpill project:
mcpill init [project-name]
Creates a directory with PILL.md, package.json, and a README.md.
compile
Validate the PILL.md and generate the server artifact:
mcpill compile [--pill PILL.md] [--out dist/]
Validation checks that all tool inputs and outputs are described, required sections are present, and constraint rules are parseable.
run
Start the compiled server (stdio transport by default):
mcpill run [--port 3000]
Pass --port to start an HTTP server instead of stdio.