Skip to content

Commit 83c5d09

Browse files
authored
Merge pull request #308885 from poliveria/poliveria-logic-apps-12012025
Add guide for using Sentinel MCP tools in Logic Apps
2 parents 90ce6f1 + daf711f commit 83c5d09

8 files changed

Lines changed: 144 additions & 17 deletions

articles/sentinel/TOC.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -624,6 +624,8 @@
624624
href: datalake/sentinel-mcp-triage-tool.md
625625
- name: Create your own custom tool
626626
href: datalake/sentinel-mcp-create-custom-tool.md
627+
- name: Build logic apps with Microsoft Sentinel MCP
628+
href: datalake/sentinel-mcp-logic-apps.md
627629
- name: Troubleshooting
628630
href: datalake/troubleshoot-sentinel-mcp.md
629631
- name: Billing, limits, and availability
35.3 KB
Loading
230 KB
Loading
256 KB
Loading
419 KB
Loading

articles/sentinel/datalake/sentinel-mcp-billing.md

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ titleSuffix: Microsoft Security
44
description: Learn about the pricing, limits, and availability of using the different MCP collection of tools in Microsoft Sentinel
55
author: poliveria
66
ms.topic: concept-article
7-
ms.date: 12/01/2025
7+
ms.date: 12/09/2025
88
ms.author: pauloliveria
99
ms.service: microsoft-sentinel
1010
ms.custom: references_regions
@@ -19,29 +19,35 @@ This article provides information on pricing, limits, and availability when sett
1919

2020
## Pricing and billing
2121

22-
### Sentinel data lake tools
22+
### Microsoft Sentinel data lake tools
2323

24-
Pricing in Microsoft Sentinel is based on the tier that you ingest data into. The **data lake tier** is a cost-effective option for ingesting secondary security data and querying security data over the long term. In this tier, Microsoft Sentinel's unified MCP server interface is offered **at no extra cost**. You pay for invoking tools that search and retrieve data by using Kusto Query Language (KQL) queries from Microsoft Sentinel data lake. With Microsoft Sentinel data lake's billing model, you pay as you go for queries that retrieve data. [Read more about Microsoft Sentinel data lake’s pricing here](../billing.md#data-lake-tier).
24+
Microsoft Sentinel pricing is based on the tier that you ingest data into. The **data lake tier** is a cost-effective option for ingesting secondary security data and querying security data over the long term. In this tier, Microsoft Sentinel's unified MCP server interface is offered **at no extra cost**. You pay for invoking tools that search and retrieve data by using Kusto Query Language (KQL) queries from Microsoft Sentinel data lake. With Microsoft Sentinel data lake's billing model, you pay as you go for queries that retrieve data. [Read more about Microsoft Sentinel data lake’s pricing here](../billing.md#data-lake-tier).
25+
26+
### Microsoft Sentinel entity analyzer tool
27+
You pay for the KQL queries the [entity analyzer](sentinel-mcp-data-exploration-tool.md#entity-analyzer-preview)
28+
performs over the Microsoft Sentinel data lake. AI compute used by the analyzer to reason over this data doesn't incur any cost.
2529

2630
### Triage tool
2731

28-
You can use the [triage tool collection](sentinel-mcp-triage-tool.md) at no extra cost, provided that youre onboarded to the required products and services.
32+
You can use the [triage tool collection](sentinel-mcp-triage-tool.md) at no extra cost, if you're onboarded to the required products and services.
2933

3034
## Quotas and limits
3135

32-
### Sentinel data lake tools
36+
### Microsoft Sentinel data lake tools
3337

3438
All [service parameters and limits for Microsoft Sentinel data lake](sentinel-lake-service-limits.md#service-parameters-and-limits-for-tables-data-management-and-ingestion) also apply when you use Microsoft Sentinel's MCP collection of tools.
3539

36-
The following limits are specific to Sentinel data lake MCP tools:
40+
The following limits are specific to Microsoft Sentinel data lake MCP tools:
3741

3842
| Feature | Limits |
3943
|----------|----------|
4044
| MCP streaming | 120 seconds |
4145
| Query window for tools | 800 characters |
4246

43-
### Sentinel entity analyzer tool
44-
Each tenant can use the [entity analyzer](sentinel-mcp-data-exploration-tool.md#entity-analyzer-preview) MCP tool up to 100 times an hour and 250 times a day.
47+
### Microsoft Sentinel entity analyzer tool
48+
Each tenant can use the entity analyzer MCP tool up to the following limits:
49+
- 100 total runs an hour
50+
- 250 total runs a day
4551

4652
### Triage tool
4753
Regular API throttling applies to the tools in the triage tool collection. In addition, tools that call the advanced hunting API are bound by the existing advanced hunting quotas and service limits. [Learn more about advanced hunting quotas and usage parameters](/defender-xdr/advanced-hunting-limits#understand-advanced-hunting-quotas-and-usage-parameters)

articles/sentinel/datalake/sentinel-mcp-data-exploration-tool.md

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ titleSuffix: Microsoft Security
44
description: Learn about the different tools available in the Data exploration collection in Microsoft Sentinel
55
author: poliveria
66
ms.topic: how-to
7-
ms.date: 11/24/2025
7+
ms.date: 12/12/2025
88
ms.author: pauloliveria
99
ms.service: microsoft-sentinel
1010

@@ -30,7 +30,7 @@ To access the data exploration tool collection, you need the following prerequis
3030

3131
## Add the data exploration collection
3232

33-
To add the data exploration collection, you must first set up add Microsoft Sentinel's unified MCP server interface. Follow the step-by-step instructions for compatible [AI-powered code editors and agent-building platforms](sentinel-mcp-get-started.md#add-microsoft-sentinels-collection-of-mcp-tools).
33+
To add the data exploration collection, first set up Microsoft Sentinel's unified MCP server interface. Follow the step-by-step instructions for compatible [AI-powered code editors and agent-building platforms](sentinel-mcp-get-started.md#add-microsoft-sentinels-collection-of-mcp-tools).
3434

3535
The data exploration collection is hosted at the following URL:
3636
```
@@ -67,7 +67,7 @@ This tool lists all Microsoft Sentinel data lake workspace name and ID pairs ava
6767

6868
These tools use AI to analyze your organization's data in the Microsoft Sentinel data lake. They provide a verdict and detailed insights on URLs, domains, and user entities. They help eliminate the need for manual data collection and complex integrations typically required for enriching and investigating entities.
6969

70-
For example, `analyze_user_entity` reasons over the user's authentication patterns, behavioral anomalies, activity within your organization, and more to provide a verdict and analysis. Meanwhile, `analyze_url_entity` reasons over threat intelligence from Microsoft, your custom threat intelligence in Sentinel threat intelligence platform (TIP), click, email, or connection activity on the URL within your organization, and presence in Sentinel watchlists, among others to similarly provide a verdict and analysis.
70+
For example, `analyze_user_entity` reasons over the user's authentication patterns, behavioral anomalies, activity within your organization, and more to provide a verdict and analysis. Meanwhile, `analyze_url_entity` reasons over threat intelligence from Microsoft, your custom threat intelligence in Microsoft Sentinel threat intelligence platform (TIP), click, email, or connection activity on the URL within your organization, and presence in Microsoft Sentinel watchlists, among others to similarly provide a verdict and analysis.
7171

7272
Entity analysis tools might require a few minutes to generate results, so there are tools to start analysis for each entity and another one that polls for the analysis results.
7373

@@ -76,7 +76,8 @@ Entity analysis tools might require a few minutes to generate results, so there
7676
| Parameters | Required? | Description |
7777
|----------|----------|----------|
7878
| Microsoft Entra object ID or URL| Yes |This parameter takes in the user or URL you want to analyze. |
79-
| Lookback time| No |This parameter takes in the lookback time. Default is seven days. |
79+
| `startTime`| Yes |This parameter takes in the start time of the analysis window. |
80+
| `endTime`| Yes |This parameter takes in the end time of the analysis window. |
8081
| `workspaceId`| No |This parameter takes in a workspace identifier to limit the search to a single connected Microsoft Sentinel data lake workspace. |
8182

8283
These tools return an identifier value that you can provide to the retrieve analysis tool as input.
@@ -101,7 +102,7 @@ While this tool automatically polls for a few minutes until results are ready, i
101102
- [CloudAppEvents](../connect-microsoft-365-defender.md)
102103
- [IdentityInfo](/defender-xdr/advanced-hunting-identityinfo-table) (Available only for tenants with Microsoft Defender for Identity, Microsoft Defender for Cloud Apps, or Microsoft Defender for Endpoint P2 licensing)
103104

104-
If you don't have any of these required tables, `analyze_user_entity` generates an error message that lists the tables you didn't onboard, along with links to their corresponding onboarding documentation:
105+
If you don't have any of these required tables, `analyze_user_entity` generates an error message that lists the tables you didn't onboard, along with links to their corresponding onboarding documentation.
105106

106107
- `analyze_user_entity` works best when the following table is also present in the data lake, but continues to work and assess risk, even if the said table is unavailable:
107108
- [AADNonInteractiveUserSignInLogs](../connect-azure-active-directory.md)
@@ -113,7 +114,9 @@ While this tool automatically polls for a few minutes until results are ready, i
113114
- [Watchlist](../watchlists-create.md)
114115
- [DeviceNetworkEvents](../connect-microsoft-365-defender.md)
115116

116-
If you don't have any of these tables, `analyze_url_entity` generates a response with a disclaimer that lists the tables you didn't onboard, along with links to their corresponding onboarding documentation:
117+
If you don't have any of these tables, `analyze_url_entity` generates a response with a disclaimer that lists the tables you didn't onboard, along with links to their corresponding onboarding documentation.
118+
119+
- Running multiple instances of the entity analyzer at the same time can increase latency for each run. To prevent timeouts, start by running a maximum of five analyses at once and then adjust this number as needed based on how the analyzer runs in your organization.
117120

118121
## Sample prompts
119122

@@ -128,9 +131,9 @@ The following sample prompts demonstrate what you can do with the data explorati
128131

129132
## How Microsoft Sentinel MCP tools work alongside your agent
130133

131-
Let's take a deeper look into how an agent answers a prompt by dynamically orchestrating over our tools.
134+
Let's take a deeper look into how an agent answers a prompt by dynamically orchestrating over the tools.
132135

133-
**Sample prompt:** `Find the top three users that are at risk and explain why they are at risk.`
136+
**Sample prompt:** `Find the top three users that are at risk and explain why they're at risk.`
134137

135138
**Typical response (GitHub Copilot using Claude Sonnet 4):**
136139

@@ -147,7 +150,7 @@ Let's take a deeper look into how an agent answers a prompt by dynamically orche
147150

148151
:::image type="content" source="media/sentinel-mcp/mcp-tool-search-table.png" alt-text="Screenshot of the agent searching for relevant tables that contain user risk and security information." lightbox="media/sentinel-mcp/mcp-tool-search-table.png":::
149152

150-
- The agent does another search using the **Semantic search on table catalog** (`search_tables`) tool, this time with broader terms, to find other tables that it should query data from to influence its reasoning.
153+
- The agent does another search by using the **Semantic search on table catalog** (`search_tables`) tool, this time with broader terms, to find other tables that it should query data from to influence its reasoning.
151154

152155
:::image type="content" source="media/sentinel-mcp/mcp-tool-semantic-search.png" alt-text="Screenshot of the agent searching using broader terms." lightbox="media/sentinel-mcp/mcp-tool-semantic-search.png":::
153156

Lines changed: 116 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,116 @@
1+
---
2+
title: Build Azure Logic Apps with Microsoft Sentinel MCP tools
3+
titleSuffix: Microsoft Security
4+
description: Learn how to set up an Azure Logic App using Microsoft Sentinel's collection of Model Context Protocol (MCP) tools
5+
author: poliveria
6+
ms.topic: how-to
7+
ms.date: 12/12/2025
8+
ms.author: pauloliveria
9+
ms.service: microsoft-sentinel
10+
11+
#customer intent: As a security analyst, I want to build Azure Logic Apps using Microsoft Sentinel MCP tools.
12+
---
13+
14+
# Build logic apps with Microsoft Sentinel MCP tools (preview)
15+
16+
> [!IMPORTANT]
17+
> This information relates to a prerelease product that may be substantially modified before it's released. Microsoft makes no warranties, expressed or implied, with respect to the information provided here.
18+
19+
You can access the value of Microsoft Sentinel's collection of Model Context Protocol (MCP) tools in [Azure Logic Apps](../../logic-apps/logic-apps-overview.md), starting with the [entity analyzer tool](sentinel-mcp-data-exploration-tool.md#entity-analyzer-preview). Security analysts and automation engineers often spend significant time creating complex Security Orchestration, Automation, and Response (SOAR) templates to enrich entities and reach verdicts.
20+
21+
The entity analyzer tool, built on Microsoft Sentinel data lake data, offers a single action that combines multiple data points to deliver a verdict for the entity. It supports user and URL entities, and you can easily access it through templates or integrate it into preexisting playbooks.
22+
23+
## Prerequisites to building a logic app
24+
25+
If you're new to using logic apps, see [Automate Threat Response with Playbooks in Microsoft Sentinel](../automation/automate-responses-with-playbooks.md) to get started with building them before proceeding to adding the entity analyzer tool.
26+
27+
28+
## Add entity analyzer tool to a logic app
29+
30+
You have two options for adding the entity analyzer tool to your logic app:
31+
- [Use an existing logic app template](#use-an-existing-logic-app-template)
32+
- [Add to an existing logic app](#add-to-an-existing-logic-app)
33+
34+
### Use an existing logic app template
35+
You can use a logic app template for an easy and quick implementation of the entity analyzer tool. The following screenshot shows how one of the available templates (Incident Trigger Entity Analyzer) takes all users and URLs in an incident, enriches them by using the entity analyzer tool, and sends that analysis as a comment to the original incident:
36+
37+
:::image type="content" source="media/sentinel-mcp/logic-app-template.png" alt-text="Screenshot of the entity analyzer tool added to logic app template." lightbox="media/sentinel-mcp/logic-app-template.png":::
38+
39+
>[!IMPORTANT]
40+
> Make sure that you have the **Sentinel SOAR Essentials** solution installed and up-to-date before installing a preexisting logic app template for entity analyzer. From the Microsoft Defender portal navigation menu, go to **Microsoft Sentinel** > **Content management** > **Content hub** to check and install or update.
41+
42+
To install a preexisting logic app template:
43+
44+
1. From the Microsoft Defender portal navigation menu, go to **Microsoft Sentinel** > **Configuration** > **Automation**.
45+
1. Select **Playbook templates**, then search for **Entity Analyzer**.
46+
1. Choose any of the following playbooks:
47+
- Incident Trigger Entity Analyzer
48+
- Url Trigger Entity Analyzer
49+
- HTTP Trigger Entity Analyzer
50+
1. Select **Create playbook**.
51+
52+
When you create and run a playbook, insights from the entity analyzer appear as comments within an incident's details:
53+
54+
- The following screenshot shows the analyzer's top-level classification that a user account is compromised along with its supporting evidence, starting with the series of alerts and their associated [MITRE ATT&CK techniques](https://attack.mitre.org/), a list of malicious IP addresses the user signed in from, and a few suspicious user agents the user's activity originated from. (The IP addresses have been redacted.)
55+
56+
:::image type="content" source="media/sentinel-mcp/logic-app-incident-classification.png" alt-text="Screenshot of the entity analyzer tool incident classification and evidence added to incident comments." lightbox="media/sentinel-mcp/logic-app-incident-classification.png":::
57+
58+
- The following screenshot shows the rest of the supporting evidence (the remaining suspicious user agents and a list of anomalous behavior). By providing these pieces of evidence, the analyzer can make security analysts, who typically have to query and analyze these themselves, feel more comfortable trusting its classification. The analyzer also gives recommendations to remediate the account compromise, and a list of data sources it used during analysis.
59+
60+
:::image type="content" source="media/sentinel-mcp/logic-app-incident-recommendation.png" alt-text="Screenshot of the entity analyzer tool evidence and recommendations added to incident comments." lightbox="media/sentinel-mcp/logic-app-incident-recommendation.png":::
61+
62+
63+
### Add to an existing logic app
64+
65+
To add the entity analyzer tool by using an existing logic app:
66+
67+
1. Access your logic app.
68+
1. Select **Add a new action** and then search for **New Action**.
69+
1. Search for `entity analyzer` and choose the action listed under **Microsoft Sentinel MCP tools connector**.
70+
71+
![Screenshot of entity analyzer as listed under Microsoft Sentinel MCP tools connector.](media/sentinel-mcp/logic-app-existing.png)
72+
73+
1. Provide the following required information:
74+
- **Analyze Entity Request Workspace ID** - Microsoft Sentinel data lake workspace ID (GUID)
75+
- **Analyze Entity Request Look Back Days** - How far back this tool searches (depending on your use case)
76+
- **Analyze Entity Request Properties** - Any of the following options:
77+
- For URL entity:
78+
```
79+
{
80+
"entityType": "Url",
81+
"url": "[URL]"
82+
}
83+
```
84+
- For user entity
85+
```
86+
{
87+
"entityType": "User",
88+
"userId": "[Microsoft Entra object ID]"
89+
}
90+
```
91+
You can enter these properties either manually or as dynamic values from previous actions.
92+
93+
The following screenshot is an example output you receive from the action in the logic app:
94+
95+
:::image type="content" source="media/sentinel-mcp/logic-app-output.png" alt-text="Screenshot of a sample output received from the action in the logic app." lightbox="media/sentinel-mcp/logic-app-output.png":::
96+
97+
For more information about the specific input and output in the Connector, see [Microsoft Sentinel MCP](/connectors/sentinelmcp/).
98+
99+
## Authenticate to the connector
100+
Every logic app connector requires an authentication connection. This new action type supports Microsoft Entra ID, service principals, and managed identities. As is the case with the MCP server, the logic app's identity requires **Security reader** to operate.
101+
102+
## Additional information
103+
104+
Running multiple instances of the entity analyzer at the same time can increase latency for each run. This issue is especially important when you use a **For each** loop in your entity analyzer logic apps, because it can queue multiple analyses at once (for example, multiple users in an incident, multiple incidents triggered at once).
105+
106+
To prevent timeouts from too many analyses running at once, turn on the **Concurrency control** in the **For each** action. Start by setting the **Degree of parallelism** to `5` and then adjust it as needed based on how the analyzer runs in your organization.
107+
108+
:::image type="content" source="media/sentinel-mcp/logic-app-concurrency.png" alt-text="Screenshot of the logic app loop settings." lightbox="media/sentinel-mcp/logic-app-concurrency.png":::
109+
110+
111+
For more information about loops, see [Add loops to repeat actions in workflows for Azure Logic Apps](../../logic-apps/logic-apps-control-flow-loops.md).
112+
113+
114+
## Related content
115+
- [Get started with Microsoft Sentinel MCP server](sentinel-mcp-get-started.md)
116+
- [Tool collection in Microsoft Sentinel MCP server](sentinel-mcp-tools-overview.md)

0 commit comments

Comments
 (0)