OpenCode releases v1.17.7 with MCP workspace roots and SDK auto-refresh
OpenCode v1.17.7 added active-server reuse for plugin clients, workspace roots for MCP servers, and SDK auto-refresh for models and credentials. It follows a 1.17.6 compatibility update that declared OpenCode's supported client capabilities to improve MCP interoperability.

TL;DR
- OpenCode v1.17.7, which LLMpsycho's v1.17.7 post linked on June 14, bundles four user-facing fixes: active-server reuse for plugin clients, earlier shell command visibility, workspace roots for MCP servers, and SDK auto-refresh.
- The workspace-root change lines OpenCode up with the MCP roots spec, and LLMpsycho's release summary called it out as one of the headline improvements.
- The shell and SDK changes go a bit wider than the tweet: the release notes also mention plugin-provided environment variables reaching PTY sessions, MCP debug moving to the SDK's latest protocol version, and a fix that keeps new sessions scoped to their draft server.
- One day earlier, v1.17.6 shipped a narrower MCP fix, and LLMpsycho's v1.17.6 post described it as declaring OpenCode's supported client capabilities to improve server compatibility.
You can read the full v1.17.7 notes, the smaller v1.17.6 patch, the OpenCode plugin docs that explain shell environment injection, and the MCP roots spec that defines how clients expose workspace boundaries to servers.
Active server reuse
The cleanest fix in 1.17.7 is also the least flashy. Plugin client requests now reuse the active server instead of assuming the default local port, according to the release notes.
That closes a class of routing mistakes that show up when a tool has more than one server in play. The same release also keeps the new session route scoped to its draft server, another small plumbing fix that points at the same problem.
Workspace roots
OpenCode now passes the current workspace to MCP servers as a client root. In MCP's roots spec, roots are the directories and files a client tells a server it can operate within.
That makes the change more specific than a generic compatibility tweak. It gives MCP servers an explicit project boundary, which is the bit they need for path resolution and workspace-aware behavior.
Shell visibility and SDK refresh
OpenCode's shell tool now shows the command and working directory from the start of an ACP shell call, per the v1.17.7 notes. The same release also applies plugin-provided shell environment variables to PTY sessions, which matches the behavior described in OpenCode's plugin docs, where shell.env can inject variables into AI tools and user terminals.
On the SDK side, 1.17.7 auto-refreshes model and provider availability when integrations change, and credential update or removal calls now accept a location parameter, according to the release notes.
MCP capability declaration
The 1.17.7 patch landed immediately after 1.17.6, which only carried one line item: declaring OpenCode's supported client capabilities for better MCP server compatibility in the official release.
That matters because the MCP surface had already been a live issue. In issue #28567, a contributor argued OpenCode lagged the newer MCP standard on several client capabilities, including sampling and elicitation support.
A /slow mode request popped up in the release thread
The only visible user reaction in the evidence pool was not about workspace roots or SDK refresh. LLMpsycho's reply in the release thread asked for a /slow mode with higher rate limits, which suggests the next round of OpenCode requests may be about throughput controls rather than more MCP plumbing.