Microsoft Sentinel MCP Server
Microsoft-hosted MCP server for natural language exploration of the Microsoft Sentinel data lake, including KQL queries and AI-powered user and URL entity analysis.
The Microsoft Sentinel MCP server (data exploration collection) is a remote, Microsoft-hosted MCP endpoint that lets AI agents search for relevant tables and retrieve security data from the Microsoft Sentinel data lake using natural language. It is part of Microsoft Sentinel's unified MCP tool collection and is accessible to any MCP-compatible client, including Visual Studio Code, Microsoft Security Copilot, Microsoft Copilot Studio, and Microsoft Foundry.
The data exploration collection exposes tools for semantic table discovery (search_tables), running Kusto Query Language (KQL) queries against the data lake (query_lake), listing connected Sentinel workspaces (list_sentinel_workspaces), and AI-driven entity analyzers that reason over authentication patterns, threat intelligence, and behavioral data to produce verdicts on user and URL entities (analyze_user_entity, analyze_url_entity, get_entity_analysis). The entity analyzers consume Security Compute Units (SCUs) and require Security Copilot Contributor permissions.
The server itself is hosted by Microsoft at https://sentinel.microsoft.com/mcp/data-exploration and authenticates users via OAuth 2.0. The linked GitHub repository (microsoft/sentinel-data-exploration-mcp) primarily provides install badges and pointers to the official documentation rather than runnable source code, since the server runs as a managed Microsoft service.
Tools
| Tool | Description |
|---|---|
search_tables |
Semantic search over the Sentinel data lake table catalog. Returns schemas of tables relevant to a natural language input so agents can author valid KQL queries. |
query_lake |
Executes a single KQL query against a specified Microsoft Sentinel data lake workspace and returns the raw result set. Intended for targeted investigative retrieval, not bulk export. |
list_sentinel_workspaces |
Lists all Microsoft Sentinel data lake workspace name and ID pairs available to the caller. Typically run first because most other tools need a workspaceId. |
analyze_user_entity |
Starts an AI analysis job that reasons over a user's authentication patterns, behavioral anomalies, and organizational activity to produce a verdict and detailed insights. Supports a maximum 7-day window. Requires the user to have a Microsoft Entra object ID. |
analyze_url_entity |
Starts an AI analysis job that reasons over Microsoft threat intelligence, custom TIP indicators, click/email/connection activity, and Sentinel watchlists to produce a verdict for a URL or domain. |
get_entity_analysis |
Polls for and retrieves the results of a previously started user or URL entity analysis. May need to be called multiple times for long analyses. |
Prerequisites
- Onboarded Microsoft Sentinel data lake tenant.
- An identity (user, managed identity, or service principal) with at least one of these roles: Security Reader, Security Operator, or Security Administrator.
- For entity analyzer tools (
analyze_user_entity,analyze_url_entity,get_entity_analysis): Security Copilot Contributor role. These tools consume Security Compute Units (SCUs). - An MCP-compatible client: VS Code, Microsoft Security Copilot, Microsoft Copilot Studio, or Microsoft Foundry.
Server endpoint
The data exploration collection is hosted at:
https://sentinel.microsoft.com/mcp/data-exploration
Authentication uses OAuth 2.0 against the signed-in Microsoft account.
Visual Studio Code setup
- Press
Ctrl+Shift+Pand selectMCP: Add Server. - Choose HTTP (HTTP or Server-Sent Events).
- Enter the server URL:
https://sentinel.microsoft.com/mcp/data-exploration - Assign a Server ID (for example,
Microsoft Sentinel MCP server). - Choose whether the server is available globally or per workspace.
- When prompted, select Allow and sign in with an account that has a Security reader role (or higher).
The resulting VS Code mcp.json entry looks like:
{
"servers": {
"Microsoft Sentinel MCP server": {
"type": "http",
"url": "https://sentinel.microsoft.com/mcp/data-exploration"
}
}
}
For other clients (Security Copilot, Copilot Studio, Foundry), follow the platform-specific instructions in the Microsoft Sentinel MCP get-started guide.
- Discover relevant Sentinel tables and their schemas from a natural-language description before authoring a KQL hunt.
- Run targeted KQL queries against the Sentinel data lake to retrieve sign-in events, alerts, or device telemetry inline from an AI agent.
- Investigate a suspected compromised user by triggering
analyze_user_entityover a 7-day window and consuming the AI-generated verdict and behavioral insights. - Triage URL or domain IOCs from a threat report by running
analyze_url_entityagainst organizational click, email, and threat intelligence data. - Build security agents that autonomously detect password spray, impossible travel, MFA failure spikes, or dormant account reactivation by orchestrating
search_tablesandquery_lakecalls.
- "List my Sentinel workspaces, then find sign-in failures in the last 24 hours and summarize the key findings."
- "Find the top three users at risk in workspace X over the last 7 days and explain why they are at risk."
- "Investigate users with a password spray alert in the last seven days and tell me if any of them are compromised."
- "Identify devices that showed an outstanding number of outgoing network connections last week."
- "Analyze the URLs in this threat analytics report and tell me everything Microsoft knows about them."
- Official Microsoft-hosted server with no infrastructure to run, authenticated via the user's Entra ID.
- Combines schema-aware semantic search with direct KQL execution, so agents can self-correct queries against the Sentinel data lake.
- Includes managed AI entity analyzers for users and URLs that reason over Microsoft threat intelligence and behavioral data.
- Works across multiple Microsoft and third-party MCP clients (VS Code, Security Copilot, Copilot Studio, Foundry).
- Requires onboarding to the Microsoft Sentinel data lake and appropriate Defender/Sentinel roles, so it is not usable without an existing Sentinel tenant.
- Entity analyzer tools consume billable Security Compute Units (SCUs) and have preview thresholds that limit concurrent runs.
- A long list of
_CLcustom Sentinel tables is explicitly unsupported bysearch_tables, andanalyze_user_entitydoes not support on-premises Active Directory-only users.
- Microsoft Sentinel triage tool collection: sibling Microsoft-hosted MCP collection focused on incident triage rather than raw data exploration.
- dstreefkerk/ms-sentinel-mcp-server: community, non-production MCP server for Sentinel logs, incidents, analytics, and Entra ID data.
- Azure MCP server: broader Azure resource access including Log Analytics workspaces underlying Sentinel.