# feat\(mcp\): expose preview list and close · PR \#10559 · pingdotgg/t3code

[View on GitCafe](https://git.cafe/pingdotgg/t3code/pull/10559)

Repository: [pingdotgg/t3code](https://git.cafe/pingdotgg/t3code)

Visibility: public

State: merged

Source repository: pingdotgg/t3code

Source branch: agents/mcp-thin/preview

Target branch: agents/mcp-thin/conversation-transfer

Head commit: bcb7b210e0d6d4f2dd2bb3f698fcb36442b536ff

[Discussion and reviews](https://git.cafe/pingdotgg/t3code/pull/10559)

[Commits](https://git.cafe/pingdotgg/t3code/pull/10559/commits?format=markdown)

[Files changed](https://git.cafe/pingdotgg/t3code/pull/10559/diffs?format=markdown)

## Description

---

Part 9/16 of the [shared-core and MCP stack](https://github.com/pingdotgg/t3code/stacks/10582). Based on [#10558](https://github.com/pingdotgg/t3code/pull/10558). Next: [#10560](https://github.com/pingdotgg/t3code/pull/10560).

Expose the existing PreviewManager list and explicit-tab close operations for the calling thread.

The existing preview capability and browser-access setting are required. Close uses the existing server/host lifecycle and does not claim renderer cleanup has finished. Broker race hardening is separate.

MCP-only rebuild of [#8724](https://github.com/pingdotgg/t3code/pull/8724), preserving attribution to Julius Marminge's original work. Original branches remain available for separate service follow-ups.

Validation: The composed stack passes 94 tests across 12 focused files, including shared core MCP and real MCP/V2 integration, attachment intake, project RPC/service contracts, and client model command selection. Server/contracts/shared/client-runtime typechecks and targeted format/lint/diff checks pass. New behavior coverage lives with the shared operation; no per-tool mock suite was added. Current-head CI is shown below.

Layer size: 7 files, +102/-1. No domain-service production implementation or documentation files change in this MCP layer.

Prepared with Codex in the OpenAI agent runtime.

