entra-id-mcp-server-session-demo

entra-id-mcp-server-session-demo

11

This project showcases a minimal implementation of an MCP server integrated with Entra ID authentication, utilizing HTTP+SSE transport. It emphasizes session management via token-like mechanisms and is intended for demonstration purposes only.

🔒 Minimal Entra ID-authenticated MCP Server

Minimal server showing how to implement Entra ID authentication with MCP and HTTP+SSE transport. Unlike the previous server implementation, this relies on a confidential client living inside the MCP server, and then using "session mapping" to make sure that the client gets a session assignment through, what looks like, a JWT token (since we can't use cookies).

[!IMPORTANT] This repository has been archived. Refer to the reference collection for latest samples and best practices.

[!WARNING] This is not intended for production use. If you are to adopt any of the practices in this implementation, ensure that you are implementing proper caching and secure token/credential handling practices.

Run server

npm install
npm run build
npm run start

Testing

You will need to use MCP Inspector or a tool that supports HTTP+SSE transport for MCP servers and authentication.