# `4.0.0` Workspace-Core Default Profile

Status: Done

## Goal

Make the default MCP entrypoint match the product's recommended chat-first path
instead of preserving a wider compatibility surface by default.

## Public API Changes

This is an intentional breaking default change for the next major release:

- `pyro mcp serve` should default to `workspace-core`
- `create_server()` should default to `profile="workspace-core"`
- `Pyro.create_server()` should default to `profile="workspace-core"`

The full advanced surface remains available through explicit opt-in:

- `pyro mcp serve --profile workspace-full`
- `create_server(profile="workspace-full")`
- `Pyro.create_server(profile="workspace-full")`

## Implementation Boundaries

- keep all three profile names unchanged
- do not remove `workspace-full`
- make the default flip explicit in docs, changelog, help text, and migration
  notes
- keep bare `vm-run` available as the smallest one-shot profile

## Non-Goals

- no silent removal of advanced workspace capabilities
- no attempt to infer a profile from the client name
- no `3.x` backport that changes the current default behavior

## Acceptance Scenarios

- a bare `pyro mcp serve` command now exposes the recommended narrow profile
- a bare `create_server()` or `Pyro.create_server()` call matches that same
  default
- advanced hosts can still opt into `workspace-full` explicitly with no loss of
  functionality
- docs no longer need to explain that the recommended path and the default path
  are different

## Required Repo Updates

- help text, public contract, README, install docs, and integrations docs
  revised to reflect the new default
- migration note explaining the default change and the explicit
  `workspace-full` opt-in path
- examples audited so they only mention `--profile workspace-core` when the
  explicitness is useful rather than compensating for the old default
