Skip to main content
04 / Case Study _05

Microsoft MCP Server

Enterprise Integration on Azure

StatusActive — in development
Stack
.NET 8Azure FunctionsMicrosoft GraphEntra IDCosmos DBMCPBicep
Overview

A full-featured MCP server built entirely on the Microsoft stack, designed for enterprise environments where Azure and Microsoft 365 are the foundation. Exposes Teams channels, SharePoint document libraries, Outlook mail/calendar, OneDrive files, and Planner tasks as MCP resources and tools. AI agents can read documents from SharePoint, post to Teams channels, create calendar events, manage Planner boards, and search across the entire M365 tenant — all through the standardized MCP protocol. Built with .NET 8, hosted on Azure Functions for serverless scale, authenticated via Entra ID with granular Graph API permission scoping.

Key Features

What Was Built

01

Teams Integration

read/post to channels, create meetings, manage team membership, search message history. Agents can participate in conversations and respond to mentions.

02

SharePoint & OneDrive

browse document libraries, read/write files, search content, manage permissions. Agents can retrieve documents by content or metadata query.

03

Outlook Integration

read/send email, manage calendar events, search mailboxes. Agents can draft responses, schedule meetings, and triage inboxes.

04

Planner & Tasks

create/update tasks, manage boards, assign work, track progress. Agents can orchestrate project workflows across teams.

05

Unified Search

cross-service search across Teams messages, SharePoint documents, Outlook mail, and OneDrive files using Microsoft Search API.

06

Admin & Governance

audit logging for all agent actions, rate limiting per tenant, permission scoping per MCP connection, tenant isolation for multi-tenant deployments.

Architecture

How It's Built

01

.NET 8 with minimal APIs for MCP protocol handling

02

Azure Functions v4 (isolated worker) for serverless hosting

03

Microsoft Graph SDK v5 for M365 API integration

04

Entra ID with OAuth 2.0 on-behalf-of flow for delegated permissions

05

Cosmos DB for session state and audit log persistence

06

Azure Key Vault for secrets and certificate management

07

Application Insights for telemetry and request tracing

08

Bicep IaC for reproducible Azure deployments

Tech Stack

Technical Stack

Layer
Technology
Runtime
C# / .NET 8
Hosting
Azure Functions v4 (isolated worker, serverless)
M365 API
Microsoft Graph SDK v5
Auth
Entra ID (Azure AD), OAuth 2.0, on-behalf-of flow
MCP Transports
stdio, HTTP+SSE, Streamable HTTP
Database
Azure Cosmos DB (session state, audit logs)
Secrets
Azure Key Vault
Observability
Application Insights, structured logging
IaC
Bicep templates for Azure resource provisioning
CI/CD
GitHub Actions to Azure deployment slots
Outcomes

Results & Impact

30+

30+ MCP tools covering the full Microsoft 365 surface area

02

Enterprise-ready with audit logging, rate limiting, and tenant isolation

03

Serverless deployment scales to zero — no idle compute costs

04

Enables AI agents to operate natively within Microsoft-centric organizations

Tags
.NET 8Azure FunctionsMicrosoft GraphEntra IDCosmos DBMCPBicep