{"ok":true,"protocolVersion":"2025-06-18","endpoint":"/mcp","serverInfo":{"name":"microservices.sh","version":"0.1.0"},"tools":[{"name":"list_templates","description":"List available application templates.","inputSchema":{"type":"object","additionalProperties":false,"properties":{}}},{"name":"inspect_template","description":"Inspect a template contract by id.","inputSchema":{"type":"object","additionalProperties":false,"required":["id"],"properties":{"id":{"type":"string"}}}},{"name":"list_modules","description":"List available verified modules.","inputSchema":{"type":"object","additionalProperties":false,"properties":{}}},{"name":"inspect_module","description":"Inspect a module contract by id.","inputSchema":{"type":"object","additionalProperties":false,"required":["id"],"properties":{"id":{"type":"string"}}}},{"name":"list_module_docs","description":"List LLM-readable module documentation entries.","inputSchema":{"type":"object","additionalProperties":false,"properties":{}}},{"name":"get_module_doc","description":"Get an LLM-readable module documentation page by id.","inputSchema":{"type":"object","additionalProperties":false,"required":["id"],"properties":{"id":{"type":"string"}}}},{"name":"plan_add_module","description":"Create an approval-aware module add plan without mutating source.","inputSchema":{"type":"object","additionalProperties":false,"required":["id"],"properties":{"id":{"type":"string"},"templateId":{"type":"string","description":"Template id to use when no lockfile is provided. Defaults to booking-business."},"modules":{"type":"array","description":"Optional module ids to add to the template defaults.","items":{"type":"string"}},"config":{"type":"object","description":"Template configuration overrides.","additionalProperties":true},"lock":{"type":"object","description":"Optional microservices.lock.json contents for exact installed-version planning.","additionalProperties":true}}}},{"name":"get_secrets_status","description":"List required secret names and configured/missing status without exposing values.","inputSchema":{"type":"object","additionalProperties":false,"properties":{"templateId":{"type":"string","description":"Template id to compose. Defaults to booking-business."},"modules":{"type":"array","description":"Optional module ids to add to the template defaults.","items":{"type":"string"}},"config":{"type":"object","description":"Template configuration overrides.","additionalProperties":true},"lock":{"type":"object","description":"Optional microservices.lock.json contents for exact installed-version checks.","additionalProperties":true}}}},{"name":"check_updates","description":"Check locked module versions against the current registry.","inputSchema":{"type":"object","additionalProperties":false,"properties":{"templateId":{"type":"string","description":"Template id to compose. Defaults to booking-business."},"modules":{"type":"array","description":"Optional module ids to add to the template defaults.","items":{"type":"string"}},"config":{"type":"object","description":"Template configuration overrides.","additionalProperties":true},"lock":{"type":"object","description":"Optional microservices.lock.json contents for exact installed-version checks.","additionalProperties":true}}}},{"name":"plan_module_upgrade","description":"Create an approval-aware module upgrade plan from the current lockfile or template composition.","inputSchema":{"type":"object","additionalProperties":false,"required":["id"],"properties":{"id":{"type":"string"},"templateId":{"type":"string","description":"Template id to use when no lockfile is provided. Defaults to booking-business."},"modules":{"type":"array","description":"Optional module ids to add to the template defaults.","items":{"type":"string"}},"config":{"type":"object","description":"Template configuration overrides.","additionalProperties":true},"lock":{"type":"object","description":"Optional microservices.lock.json contents for exact installed-version planning.","additionalProperties":true}}}},{"name":"compose_app","description":"Compose a template and modules into an app contract.","inputSchema":{"type":"object","additionalProperties":false,"properties":{"templateId":{"type":"string","description":"Template id to compose. Defaults to booking-business."},"modules":{"type":"array","description":"Optional module ids to add to the template defaults.","items":{"type":"string"}},"config":{"type":"object","description":"Template configuration overrides.","additionalProperties":true},"lock":{"type":"object","description":"Optional microservices.lock.json contents for exact installed-version checks.","additionalProperties":true}}}},{"name":"validate_config","description":"Validate template configuration and required Cloudflare bindings.","inputSchema":{"type":"object","additionalProperties":false,"properties":{"templateId":{"type":"string","description":"Template id to compose. Defaults to booking-business."},"modules":{"type":"array","description":"Optional module ids to add to the template defaults.","items":{"type":"string"}},"config":{"type":"object","description":"Template configuration overrides.","additionalProperties":true},"lock":{"type":"object","description":"Optional microservices.lock.json contents for exact installed-version checks.","additionalProperties":true}}}},{"name":"generate_project","description":"Generate project files for the composed app.","inputSchema":{"type":"object","additionalProperties":false,"properties":{"templateId":{"type":"string","description":"Template id to compose. Defaults to booking-business."},"modules":{"type":"array","description":"Optional module ids to add to the template defaults.","items":{"type":"string"}},"config":{"type":"object","description":"Template configuration overrides.","additionalProperties":true},"lock":{"type":"object","description":"Optional microservices.lock.json contents for exact installed-version checks.","additionalProperties":true}}}},{"name":"run_checks","description":"Run local contract checks for the composed app.","inputSchema":{"type":"object","additionalProperties":false,"properties":{"templateId":{"type":"string","description":"Template id to compose. Defaults to booking-business."},"modules":{"type":"array","description":"Optional module ids to add to the template defaults.","items":{"type":"string"}},"config":{"type":"object","description":"Template configuration overrides.","additionalProperties":true},"lock":{"type":"object","description":"Optional microservices.lock.json contents for exact installed-version checks.","additionalProperties":true}}}},{"name":"deploy_preview","description":"Prepare a managed preview deployment record and generated artifact.","inputSchema":{"type":"object","additionalProperties":false,"properties":{"projectId":{"type":"string","description":"Existing project id. If omitted, a project is created from the template input."},"name":{"type":"string","description":"Project name to use when creating a new project."},"templateId":{"type":"string","description":"Template id to deploy. Defaults to booking-business."},"modules":{"type":"array","description":"Optional module ids to add to the template defaults.","items":{"type":"string"}},"config":{"type":"object","description":"Template configuration overrides.","additionalProperties":true},"actor":{"type":"string","description":"Agent or user requesting the deployment."}}}},{"name":"deploy_dev","description":"Prepare a managed dev deployment record and generated artifact for agent iteration.","inputSchema":{"type":"object","additionalProperties":false,"properties":{"projectId":{"type":"string","description":"Existing project id. If omitted, a project is created from the template input."},"name":{"type":"string","description":"Project name to use when creating a new project."},"templateId":{"type":"string","description":"Template id to deploy. Defaults to booking-business."},"modules":{"type":"array","description":"Optional module ids to add to the template defaults.","items":{"type":"string"}},"config":{"type":"object","description":"Template configuration overrides.","additionalProperties":true},"actor":{"type":"string","description":"Agent or user requesting the deployment."}}}},{"name":"deploy_production","description":"Prepare a production deployment record and generated artifact after explicit confirmation.","inputSchema":{"type":"object","additionalProperties":false,"required":["confirm"],"properties":{"projectId":{"type":"string","description":"Existing project id. If omitted, a project is created from the template input."},"name":{"type":"string","description":"Project name to use when creating a new project."},"templateId":{"type":"string","description":"Template id to deploy. Defaults to booking-business."},"modules":{"type":"array","description":"Optional module ids to add to the template defaults.","items":{"type":"string"}},"config":{"type":"object","description":"Template configuration overrides.","additionalProperties":true},"actor":{"type":"string","description":"Agent or user requesting the deployment."},"confirm":{"type":"string","description":"Required as 'production' to prepare a production deployment artifact."}}}},{"name":"get_deployment_status","description":"Get deployment status by deployment id.","inputSchema":{"type":"object","additionalProperties":false,"required":["deploymentId"],"properties":{"deploymentId":{"type":"string"}}}},{"name":"get_deployment_artifact","description":"Get generated deployment artifact files by deployment id.","inputSchema":{"type":"object","additionalProperties":false,"required":["deploymentId"],"properties":{"deploymentId":{"type":"string"}}}},{"name":"provision_deployment","description":"Plan and, when configured, provision Cloudflare resources for a prepared deployment.","inputSchema":{"type":"object","additionalProperties":false,"required":["deploymentId"],"properties":{"deploymentId":{"type":"string"},"confirm":{"type":"string","description":"Required as 'production' when provisioning a production deployment."}}}},{"name":"migrate_deployment","description":"Apply uploaded artifact migrations to the managed D1 database through the control-plane API.","inputSchema":{"type":"object","additionalProperties":false,"required":["deploymentId"],"properties":{"deploymentId":{"type":"string"},"confirm":{"type":"string","description":"Required confirmation token for the action, for example migrate, upload, cleanup, or production-specific variants."}}}},{"name":"plan_deployment_upload","description":"Plan hosted Worker upload readiness and return API-side blockers.","inputSchema":{"type":"object","additionalProperties":false,"required":["deploymentId"],"properties":{"deploymentId":{"type":"string"}}}},{"name":"upload_deployment","description":"Attempt hosted Worker upload through the control-plane API after explicit confirmation.","inputSchema":{"type":"object","additionalProperties":false,"required":["deploymentId"],"properties":{"deploymentId":{"type":"string"},"confirm":{"type":"string","description":"Required confirmation token for the action, for example migrate, upload, cleanup, or production-specific variants."}}}},{"name":"activate_deployment","description":"Mark a deployment live by recording the URL returned from Worker upload.","inputSchema":{"type":"object","additionalProperties":false,"required":["deploymentId","url"],"properties":{"deploymentId":{"type":"string"},"url":{"type":"string","description":"Live Worker URL returned by Wrangler deploy."},"mode":{"type":"string","description":"Activation mode. Defaults to wrangler-local."},"confirm":{"type":"string","description":"Required as 'production' when activating a production deployment."}}}},{"name":"get_deployment_resources","description":"Get planned or created Cloudflare resources for a deployment.","inputSchema":{"type":"object","additionalProperties":false,"required":["deploymentId"],"properties":{"deploymentId":{"type":"string"}}}},{"name":"get_deployment_resource_usage","description":"Get read-only Cloudflare D1/R2 status and usage details for a deployment.","inputSchema":{"type":"object","additionalProperties":false,"required":["deploymentId"],"properties":{"deploymentId":{"type":"string"}}}},{"name":"cleanup_deployment","description":"Delete managed Cloudflare deployment resources and disable a deployment after explicit confirmation.","inputSchema":{"type":"object","additionalProperties":false,"required":["deploymentId"],"properties":{"deploymentId":{"type":"string"},"confirm":{"type":"string","description":"Required confirmation token for the action, for example migrate, upload, cleanup, or production-specific variants."}}}},{"name":"get_logs","description":"Get deployment logs by deployment id.","inputSchema":{"type":"object","additionalProperties":false,"required":["deploymentId"],"properties":{"deploymentId":{"type":"string"}}}}]}