The MCP (Model Context Protocol) ecosystem is growing rapidly, with excitement and collaboration but also significant room for improvement.
The spec is still early in development; the MCP steering committee recently held its first in-person meeting.
Adoption currently centers on tools due to their immediate usefulness, and other features of the MCP spec are underutilized.
Microsoft's VS Code has been progressing from basic tool support to full MCP spec implementation, with the latest (Insiders) build supporting the full spec.
Tools provide well-defined actions and are commonly used due to ease of integration.
Overabundance of tools leads to quality issues: AI confusion from too many tools, overlapping domains, and repetitiveness can degrade performance.
VS Code introduced features like per-chat tool selection and user-defined tool sets to manage tool complexity and improve usability.
The MCP spec enables dynamic discovery of tools, allowing servers to adjust available tools based on context (e.g., only showing a battle tool when a monster is present in a game).
Beyond Tools: Unlocking Full MCP Capabilities 05:55
Resources extend capabilities by letting servers provide references to artifacts (e.g., files, screenshots) for both user and LLM to access.
Better state awareness emerges when resources and environment info (like Python settings or installed packages) are leveraged, enabling more context-aware and dynamic experiences.
MCP servers can enhance end-to-end developer workflows by integrating with CI/CD pipelines and other dev tools.
Sampling is an underused MCP primitive allowing servers to request completions directly from the client's LLM.
In VS Code Insiders, sampling is now enabled, supporting additional workflows like resource summarization and website formatting for LLMs.
Sampling provides a form of progressive enhancement, allowing gradual adoption and richer interactions as client/server capabilities improve.
Dynamic Environments and Developer Experience 09:00
MCP servers can update roots, tools, and prompts dynamically as the user's workspace or context changes, providing a highly adaptive experience.
Developer debugging and logging has been enhanced in VS Code with a new "dev mode" and attached debugger, simplifying the diagnosis of server issues for Python and Node.
Staying current with the evolving MCP spec is important; community feedback helps stabilize and improve new features.
The recently updated authorization spec delivers enterprise-grade access controls, with ongoing work on HTTP streaming support for better server efficiency.
Discovery of MCP servers remains a challenge, but a community registry is being developed to make server discovery easier.
An upcoming feature, "elicitations", will allow tools to directly prompt users for needed input, increasing interactivity and statefulness.
VS Code and other clients already support the full MCP spec, enabling best practices and closing the interoperability gap as more users adopt these features.
Users and developers are encouraged to contribute feedback, participate in RFCs, and help shape the ecosystem by reporting issues and sharing experiences.
The transformative potential of MCP depends on widespread adoption of the full spec and community-driven progress—developers are urged to get involved and ensure new features are well-supported.