Skip to content

Latest commit

 

History

History
79 lines (59 loc) · 1.94 KB

File metadata and controls

79 lines (59 loc) · 1.94 KB

Microsoft Teams MCP Plugin

Model Context Protocol (MCP) integration for Microsoft Teams AI applications. Enables Teams bots to both expose tools as MCP servers and use MCP servers as clients.

📖 Documentation

Installation

pip install microsoft-teams-mcpplugin

Or if using uv:

uv add microsoft-teams-mcpplugin

Usage

MCP Client (Use MCP Servers)

from microsoft_teams.apps import App
from microsoft_teams.mcpplugin import McpClientPlugin
from microsoft_teams.ai import ChatPrompt
from microsoft_teams.openai import OpenAICompletionsAIModel

# Create MCP client plugin
mcp_client = McpClientPlugin()

# Connect to MCP servers
mcp_client.use_mcp_server("https://example.com/mcp")

# Use with ChatPrompt
model = OpenAICompletionsAIModel(api_key="your-api-key", model="gpt-4")
prompt = ChatPrompt(model, plugins=[mcp_client])

MCP Server (Expose Tools)

from microsoft_teams.apps import App
from microsoft_teams.mcpplugin import McpServerPlugin
from microsoft_teams.ai import Function
from pydantic import BaseModel

# Create MCP server plugin
mcp_server = McpServerPlugin(name="my-mcp-server")

# Define a tool
class EchoParams(BaseModel):
    input: str

async def echo_handler(params: EchoParams) -> str:
    return f"You said {params.input}"

# Register tool with MCP server
mcp_server.use_tool(
    Function(
        name="echo",
        description="Echo back whatever you said",
        parameter_schema=EchoParams,
        handler=echo_handler
    )
)

app = App(plugins=[mcp_server])