Create complete FastMCP server with all features - orchestrates setup, components, auth, deployment, verification, and testing
Orchestrates building complete FastMCP servers by chaining setup, API integration, auth, deployment, verification, and testing commands. Use this as your single command to create production-ready servers with all features configured.
/plugin marketplace add vanman2024/mcp-servers-marketplace/plugin install fastmcp@mcp-servers-marketplace<server-name> [--language=python|typescript] [--purpose="description"] [--collection=path] [--auth=type] [--deployment=type] [--skip-questions]šØ EXECUTION NOTICE FOR CLAUDE
When you invoke this command via SlashCommand, the system returns THESE INSTRUCTIONS below.
YOU are the executor. This is NOT an autonomous subprocess.
Immediately after SlashCommand returns, start executing Phase 0, then Phase 1, etc.
See @CLAUDE.md section "SlashCommand Execution - YOU Are The Executor" for detailed explanation.
CRITICAL: All generated files must follow security rules:
@docs/security/SECURITY-RULES.md
Key requirements:
your_service_key_here.env files with .gitignore.env.example with placeholders onlyArguments: $ARGUMENTS
/fastmcp:new-server is the MAIN ORCHESTRATOR for building complete FastMCP servers.
It chains multiple slash commands sequentially to build a production-ready server:
This command ORCHESTRATES other commands - it does NOT invoke agents directly!
Parse $ARGUMENTS to extract:
server-name - First positional argument--language=python|typescript - Language choice--purpose="description" - Server purpose--collection=/path/to/collection.json - Optional Postman collection--auth=oauth|jwt|bearer - Optional authentication type--deployment=stdio|http|cloud - Optional deployment type--skip-questions - Skip interactive questionsIf --skip-questions provided OR all parameters present:
If parameters missing:
Update TodoWrite with detected/gathered parameters
Action: Invoke new-server-base setup agent
For Python servers:
Use Task tool NOW to invoke the fastmcp-setup agent:
Task(
subagent_type="fastmcp:fastmcp-setup",
description="Create Python FastMCP server structure",
prompt="Create FastMCP Python server with these requirements:
**Project name:** {server-name}
**Purpose:** {purpose from Phase 1}
**Location:** {current-directory}/{server-name}
Create complete Python FastMCP server with:
- Project directory structure
- pyproject.toml with fastmcp dependency
- server.py with FastMCP initialization
- .env.example with placeholders
- .gitignore for Python projects
- README.md with setup instructions
Follow FastMCP SDK best practices. Generate functional starter code, not placeholders."
)
For TypeScript servers:
Use Task tool NOW to invoke the fastmcp-setup-ts agent:
Task(
subagent_type="fastmcp:fastmcp-setup-ts",
description="Create TypeScript FastMCP server structure",
prompt="Create FastMCP TypeScript server with these requirements:
**Project name:** {server-name}
**Purpose:** {purpose from Phase 1}
**Location:** {current-directory}/{server-name}
Create complete TypeScript FastMCP server with:
- Project directory structure
- package.json with fastmcp dependency
- tsconfig.json with proper configuration
- src/server.ts with FastMCP initialization
- .env.example with placeholders
- .gitignore for Node.js/TypeScript
- README.md with setup instructions
Follow FastMCP SDK best practices. Generate functional starter code, not placeholders."
)
WAIT for agent completion.
After completion:
If agent failed:
Check if --collection parameter was provided in Phase 1.
If YES:
Use SlashCommand tool NOW to invoke add-api-wrapper command:
SlashCommand(command="/fastmcp:add-api-wrapper {server-name} --collection={collection-path}")
WAIT for command completion.
After completion:
If NO collection provided:
Check if additional components needed beyond API wrapper.
Common scenarios:
If additional components needed:
Use SlashCommand tool NOW:
SlashCommand(command="/fastmcp:add-components {component-types} --server-path={detected-path}")
Where {component-types} might be: tools, resources, prompts, or combinations.
WAIT for command completion.
After completion:
If no additional components needed:
Check if --auth parameter was provided in Phase 1.
If YES:
Use SlashCommand tool NOW:
SlashCommand(command="/fastmcp:add-auth {auth-type} --server-path={detected-path}")
Where {auth-type} is: oauth, jwt, or bearer
WAIT for command completion.
After completion:
If NO auth specified:
Check if --deployment parameter was provided in Phase 1.
If YES:
Use SlashCommand tool NOW:
SlashCommand(command="/fastmcp:add-deployment {deployment-type} --server-path={detected-path}")
Where {deployment-type} is: stdio, http, or cloud
WAIT for command completion.
After completion:
If NO deployment specified:
Action: Verify server compliance
Use SlashCommand tool NOW:
SlashCommand(command="/fastmcp:fastmcp-verify {detected-path}")
WAIT for command completion.
After completion:
If verification found critical issues:
Action: Create comprehensive test suite
Use SlashCommand tool NOW:
SlashCommand(command="/fastmcp:test --server-path={detected-path} --run --coverage")
WAIT for command completion.
After completion:
If tests failed:
Display comprehensive summary:
ā
FastMCP Server Created Successfully!
**Server Details:**
- Name: {server-name}
- Language: {Python|TypeScript}
- Location: {full-path}
- Purpose: {purpose}
**Components Added:**
- Base server structure ā
- API wrapper tools (if applicable) ā
- Additional components (if applicable) ā
- Authentication (if applicable) ā
- Deployment configuration (if applicable) ā
**Verification:**
- Structure validation: {PASSED|FAILED}
- Test results: {PASSED|FAILED}
- Test coverage: {percentage}%
**Next Steps:**
1. Navigate to server: cd {server-name}
2. Review and customize server.py (or src/server.ts)
3. Run server locally: {command based on language}
4. Test with MCP client
5. Deploy to {deployment-target}
**Documentation:**
- FastMCP Docs: https://gofastmcp.com
- Server README: {server-name}/README.md
Update TodoWrite: mark all tasks completed
At each phase, if a command or agent fails:
Do NOT silently continue past errors.
CRITICAL:
This ensures the orchestration actually executes, not just describes the workflow.