Generated project files and check stages
Generated by running a real mcpgen new --dry-run (via ops.New with DryRun: true) and by parsing the stage list out of internal/checks/checks.go.
File tree (default: stdio, with the greet/welcome/readme stubs)
Section titled “File tree (default: stdio, with the greet/welcome/readme stubs)”| Path | Owner |
|---|---|
go.mod |
mcpgen |
.gitignore |
mcpgen |
README.md |
mcpgen |
AGENTS.md |
mcpgen |
Makefile |
mcpgen |
Dockerfile |
mcpgen |
.github/workflows/ci.yml |
mcpgen |
server.json |
mcpgen |
cmd/weather/main.go |
mcpgen |
internal/mcpapp/mcpapp.go |
mcpgen |
internal/mcpapp/instructions.go |
mcpgen |
internal/mcpapp/tools.go |
mcpgen |
internal/mcpapp/prompts.go |
mcpgen |
internal/mcpapp/resources.go |
mcpgen |
internal/mcpapp/tools/handlers/doc.go |
mcpgen |
internal/mcpapp/prompts/doc.go |
mcpgen |
internal/mcpapp/resources/doc.go |
mcpgen |
internal/mcpapp/tools/handlers/greet.go |
user |
internal/mcpapp/tools/handlers/greet_test.go |
user |
internal/mcpapp/prompts/welcome.go |
user |
internal/mcpapp/prompts/welcome_test.go |
user |
internal/mcpapp/resources/readme.go |
user |
internal/mcpapp/resources/readme_test.go |
user |
mcpgen.json |
mcpgen |
.mcpgen/manifest.json |
mcpgen |
Extra files when --features tasks,skills,oauth is passed:
| Path | Owner |
|---|---|
internal/mcpapp/tasks.go |
mcpgen |
internal/mcpapp/skills.go |
mcpgen |
internal/mcpapp/oauth.go |
mcpgen |
mcpgen-owned files carry a // Code generated by mcpgen ... DO NOT EDIT. header and are tracked with a sha256 in .mcpgen/manifest.json. user-owned files (handler, prompt, and resource implementations and their tests) are never overwritten. See the ownership model.
mcpgen check stages
Section titled “mcpgen check stages”Stages run in this order; each reports passed, failed, or skipped. Exit 0 means no stage failed.
| # | Stage | What it does |
|---|---|---|
| 1 | prerequisite |
the Go toolchain is on PATH (otherwise the pipeline stops with exit 6) |
| 2 | config |
mcpgen.json loads and validates (format version 1) |
| 3 | serverjson |
server.json is a valid MCP Registry descriptor (required fields, semver, OCI package block) |
| 4 | tidy |
go mod tidy succeeds and go.mod still pins github.com/modelcontextprotocol/go-sdk v1.8.0 |
| 5 | fmt |
gofmt -l . reports no files |
| 6 | vet |
go vet ./... is clean |
| 7 | build |
go build ./... succeeds |
| 8 | test |
go test -race ./... passes |
| 9 | conformance |
the official @modelcontextprotocol/conformance suite passes its protocol-level scenarios against the built server on a loopback address (see check and conformance) |
| 10 | inspector |
optional (--inspector) Inspector v2 CLI smoke check; a debugging aid, not a gate |
Skip rules: stages after a failed config are skipped (config invalid); conformance is skipped unless node/npx are present and the transport is http and the protocol is compat (an explicit --conformance without node/npx fails with exit 6); inspector runs only with --inspector. The prerequisite stage appears only when the Go toolchain is missing.