Semantic Kernel adds Model Context Protocol (MCP) support for Python

- Introduction to MCP: MCP is a protocol that standardizes how models, tools, and agents communicate and share context. It enables seamless interoperability between different tools and systems.
- SK as an MCP Host - Consuming MCP Servers: Semantic Kernel can now act as an MCP host, connecting to MCP servers locally or remotely. This allows for sampling using services registered in the kernel.
- SK as an MCP Server - Exposing Functions and Prompts: SK functions and prompts can be exposed as an MCP server, providing access to custom tools and integrating with other ecosystems.
- Sampling Support: Functions can delegate sampling requests to the host, allowing for text generation or other operations that require model access.
- Using MCP with Agents: Agents can call tools and prompts from MCP servers, chain multiple servers together, and use sampling and tool calls in their reasoning.
- Exposing Agents as MCP Servers: Entire SK agents can be exposed as MCP servers, enabling their reasoning and tool orchestration to be accessed by other clients and agents.
- Sample Code and Demos: Check out the samples and demos folders in Semantic Kernel for more scenarios and code examples showcasing the use of MCP features.
- Get Involved: Try out the new MCP features in Semantic Kernel, experiment with connecting to servers, exposing tools, and chaining agents, and share your creations on GitHub for feedback and collaboration.