SentinelOne MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@SentinelOne MCP ServerSummarize threats by site for the past week"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
SentinelOne MCP Server
Read-only MCP server for the SentinelOne management API (v2.1). Exposes sites, endpoint agents, threats and the activity log to Claude (Claude Desktop / Cowork, Claude Code, or any MCP client), with aggregation tools built for MSP/MSSP reporting across a site-segmented client base.
Tools
Tool | Purpose |
| Sites (how clients are segmented in an MSP console) with licence counts, SKU, expiry and health |
| Estate-wide endpoint health by site: agents, online/offline, infected, needs-update, reboot-required, stale, OS mix — the health reporting tool |
| Endpoint drill-down: per-machine status, version, last active, last user (filterable by site, health flags, OS) |
| Threat drill-down: name, classification, verdict, incident/mitigation status, affected machine (filterable by site, status, date range) |
| Aggregated threat counts by site, verdict, classification, top threats and machines — the periodic reporting tool |
| Console activity/audit log: mitigations, installs, policy changes, logins |
| Raw GET to any other SentinelOne endpoint — disabled unless |
The tool set is deliberately lean, focused on endpoint health and threat reporting across clients. The raw API tool covers anything else (groups, exclusions, installed applications, STAR alerts, system info) but is off by default so shared deployments stay strictly read-only.
Related MCP server: redash-mcp
Quick start (Claude Desktop / Cowork)
Add to mcpServers in your claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/claude_desktop_config.json):
"sentinelone": {
"command": "npx",
"args": ["-y", "sentinelone-mcp"],
"env": {
"S1_API_TOKEN": "your-api-token",
"S1_BASE_URL": "https://your-console.sentinelone.net"
}
}For Claude Code:
claude mcp add-json sentinelone --scope user '{"type":"stdio","command":"npx","args":["-y","sentinelone-mcp"],"env":{"S1_API_TOKEN":"your-api-token","S1_BASE_URL":"https://your-console.sentinelone.net"}}'Requires Node.js 18+.
Configuration
Variable | Value |
| API token — generate in the console under My User → Actions → API Token Operations |
| Your management console URL, e.g. |
| Optional — set to |
Notes on tokens:
API tokens expire on a schedule set in the console (commonly 30 days, extendable under Settings → Users, or use a service user for longer-lived tokens). A 401 from this server almost always means the token has expired — regenerate it.
The token inherits the scope and role of the user who generated it. A Viewer-role user scoped to the account is ideal: the server only ever issues GET requests, but a least-privilege token means mistakes elsewhere can't mutate anything.
Each team member should generate their own token so console audit logs attribute API reads correctly.
Reporting across a client base
Sites are how clients are segmented in an MSP/MSSP console. The intended flow for "state of our clients' endpoints" reporting:
s1_list_sites— the client list, with licence usage and expiry per site.s1_estate_overview— one call sweeps every agent and returns a site-by-site health table: agent count, online/offline, infected, agents needing an update, reboot-required, stale agents (default: not seen in 30 days) and OS mix. Aggregation happens inside the server, so thousands of agents come back as a few KB of counts.s1_threat_summarywithcreated_after— threats for the reporting period, grouped by site with verdict/classification breakdowns, top threat names and noisiest machines.s1_agents/s1_threats— drill into the individual machines or detections behind any number, thens1_activitiesfor the audit trail of what was done about them.
Development
git clone https://github.com/jamescash1976/sentinelone-mcp.git
cd sentinelone-mcp
npm install
cp .env.example .env # fill in token + console URL
npm run dev # watch mode
npm run inspector # MCP Inspector UI
npm run build # compile to dist/Notes
Strictly read-only: every tool issues GET requests only. Mitigation, policy and agent actions are deliberately not implemented.
Pagination is cursor-based throughout: responses include
nextCursor— pass it back ascursorto continue. The sweep tools (s1_estate_overview,s1_threat_summary) page automatically up to their safety caps and say so when truncated.Rate limits (HTTP 429) are retried automatically using the
Retry-Afterheader, up to 3 times.Compact projections drop the (many) null fields SentinelOne returns and exclude site registration tokens from output. Use
full_details: trueons1_agents/s1_threatswhen you need the complete raw records.Dates in filters are ISO 8601, e.g.
2026-07-01T00:00:00Z.
Available Tools
6 toolss1_activitiesA
Activity/audit log from the management console: threat mitigations, agent installs/upgrades, policy changes, user logins, exclusion changes and more, newest first. Useful as evidence of actions taken (e.g. "show what was done about the threat on machine X").
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max records per response (default 25, max 1000). | |
| cursor | No | Pagination cursor: pass the nextCursor from the previous response to get the next page. | |
| site_ids | No | Comma-separated site IDs to scope to | |
| agent_ids | No | Comma-separated agent IDs to scope to | |
| user_emails | No | Comma-separated console user emails to filter to | |
| created_after | No | Only activities after this ISO 8601 datetime | |
| activity_types | No | Comma-separated numeric activity type codes (omit to include all) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Since no annotations are provided, the description carries the full burden of behavioral disclosure. It does disclose the ordering ('newest first') and gives examples of activity types, but it does not mention pagination details, the fact that it is read-only, or any authentication requirements. For a log tool, some of these are implied, but the description lacks explicit behavioral context beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the core purpose and provides an illustrative use case. No unnecessary words or repetition; every phrase adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 7 optional parameters, no output schema, and no annotations, the description adequately conveys the tool's role and typical use. It explains the content area and gives an example usage, which is sufficient for tool selection. It does not describe the response structure, but the absence of an output schema and the nature of a log list make this a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and each parameter has a clear description (e.g., 'Max records per response', 'Comma-separated site IDs'). The tool description adds no additional parameter semantics, but the schema already does the heavy lifting, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as an activity/audit log from the management console, listing specific content types (threat mitigations, agent installs/upgrades, etc.) and noting the 'newest first' ordering. This distinguishes it from sibling tools like s1_threats or s1_agents, which focus on different resources. The use case example further clarifies its purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a concrete use case ('show what was done about the threat on machine X'), indicating when the tool is appropriate. It does not explicitly discuss when not to use it or compare to alternatives, but the sibling tools are distinct enough that the intended usage is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
s1_agentsA
List endpoint agents with filters — the drill-down tool for machines. Returns each agent's computer name, site, OS, agent version, online/infected/up-to-date status, last active date, last logged-in user and network status. Filter by site, name, health flags or OS. Returns a compact summary per agent by default; set full_details=true for complete raw records (large). Call s1_list_sites first to resolve site IDs.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max records per response (default 25, max 1000). | |
| cursor | No | Pagination cursor: pass the nextCursor from the previous response to get the next page. | |
| infected | No | Only agents with (true) or without (false) unresolved threats | |
| os_types | No | Comma-separated OS types: "windows", "macos", "linux", "windows_legacy" | |
| site_ids | No | Comma-separated site IDs to scope to (sites are how clients are segmented) | |
| is_active | No | Online status: true = online now, false = offline | |
| full_details | No | Return complete raw agent records instead of the compact summary. Default false. | |
| computer_name | No | Filter to computer names containing this text | |
| is_up_to_date | No | false = agents whose SentinelOne agent software needs updating | |
| machine_types | No | Comma-separated machine types: "desktop", "laptop", "server", "kubernetes node", "unknown" | |
| reboot_required | No | true = agents waiting on a reboot to complete threat mitigation | |
| network_statuses | No | Comma-separated: "connected", "disconnected", "connecting", "disconnecting" | |
| last_active_after | No | Only agents last active after this ISO 8601 datetime | |
| last_active_before | No | Only agents last active before this ISO 8601 datetime (find stale machines), e.g. "2026-07-01T00:00:00Z" |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden and does a good job: it discloses the default compact summary format, warns that full_details=true returns 'large' raw records, and lists the exact fields returned. It does not mention pagination behavior or rate limits, but the cursor is documented in the schema and the warning about large payloads adds useful safety context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences deliver a wealth of information without fluff. The description is front-loaded with the core purpose, then lists return fields, then covers the key behavioral switch (full_details) and the prerequisite call—every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 14 parameters, no output schema, and no annotations, the description is remarkably complete. It explains the compact summary fields, the alternative raw mode and its size caveat, and the site-resolution prerequisite. Minor gaps include no explicit mention of pagination or how the filters combine, but the schema covers parameters and the cursor field.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds high-level grouping of filters ('site, name, health flags or OS') and the crucial instruction to call s1_list_sites for site IDs, but it does not elaborate on parameter syntax or value formats beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Opens with a specific verb+resource ('List endpoint agents with filters') and immediately positions it as 'the drill-down tool for machines', clearly distinguishing it from sibling tools like s1_estate_overview. The description further specifies the output fields (computer name, site, OS, status) and the default vs full-details modes, making the tool's purpose unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides concrete guidance to resolve site IDs using s1_list_sites before calling this tool, which is essential for using the site_ids filter correctly. It also implies when to use it (drill-down, compact summaries) versus other estate-level tools, though it does not explicitly list alternative tools or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
s1_estate_overviewA
Estate-wide endpoint health overview grouped by site — one call answers "what is the state of every client's endpoints?". Sweeps all agents server-side and returns a table per site: agent count, online/offline, infected, agents needing an update, reboot-required, stale agents (not seen for N days) and OS breakdown. This is the primary tool for MSP health/AV reporting. Use s1_agents to drill into the individual machines afterwards.
| Name | Required | Description | Default |
|---|---|---|---|
| site_ids | No | Optionally restrict the sweep to comma-separated site IDs. Default: whole estate. | |
| max_agents | No | Safety cap on agents to sweep (default 10000) | |
| stale_days | No | Agents not active for more than this many days are counted as stale (default 30) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden. It discloses that the tool 'sweeps all agents server-side', lists the exact metrics returned, and references the safety cap. It doesn't cover performance or rate limits, but this is sufficient for a read-only overview.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with purpose, followed by concrete output details and usage guidance. Every sentence earns its place with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema, so the description compensates by enumerating the table columns and clarifying the server-side sweep. It doesn't mention pagination, but max_agents serves as a safety cap, making the description adequate for an overview tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with detailed parameter descriptions. The description only adds incidental context (e.g., 'not seen for N days' for stale agents) but doesn't meaningfully enhance parameter understanding beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'Estate-wide endpoint health overview grouped by site' which is a specific verb+resource+scope. It clearly differentiates from siblings by stating this is 'the primary tool for MSP health/AV reporting' and explicitly points to s1_agents for individual machine drill-down.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives a clear use case ('what is the state of every client's endpoints?') and explicitly instructs to 'Use s1_agents to drill into the individual machines afterwards.' However, it doesn't provide explicit when-not-to-use guidance for other siblings like s1_threats.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
s1_list_sitesA
List sites in the SentinelOne management console. In an MSP/MSSP console, sites are how clients are segmented — use this to discover the client list, then feed site IDs into the other tools. Returns name, state, licence counts (active/total), SKU/suite, expiration and health status per site.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Filter to sites whose name contains this text | |
| limit | No | Max records per response (default 25, max 1000). | |
| cursor | No | Pagination cursor: pass the nextCursor from the previous response to get the next page. | |
| states | No | Comma-separated site states to include: "active", "expired", "deleted". Default "active". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses what the tool returns (name, state, licence counts, SKU/suite, expiration, health status) and implies read-only behavior. It doesn't mention pagination or rate limits, but the schema covers params; the return-field disclosure adds meaningful value beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise, front-loaded sentences. The first states the main action and context; the second explains additional return fields and usage. No wasted words or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, but the description explicitly lists the returned fields, which fulfills that need. It also provides the MSP/MSSP context and workflow, making the tool self-contained for an agent unfamiliar with SentinelOne.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with each parameter adequately described. The description does not add extra parameter semantics, but it does mention feeding site IDs into other tools, which relates to output rather than parameters. Baseline 3 is appropriate given the schema already handles parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'List sites' with a specific resource (sites) and adds context about MSP/MSSP segmentation. It distinguishes itself from sibling tools by focusing on site discovery as the client list entry point, not agents, threats, or activities.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly says 'use this to discover the client list, then feed site IDs into the other tools,' giving clear workflow guidance. This tells the agent when to use this tool and how it relates to alternatives, making it a natural first step in an MSP/MSSP context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
s1_threatsA
List threats/detections with filters — the drill-down tool for incidents. Returns each threat's name, classification, confidence level (malicious/suspicious), analyst verdict, incident status, mitigation status and actions, detection engine, file path/hash, affected machine and site, sorted newest first. Returns a compact summary per threat by default; set full_details=true for complete raw records. Use s1_threat_summary for aggregated counts across the estate.
| Name | Required | Description | Default |
|---|---|---|---|
| ids | No | Comma-separated threat IDs to fetch specific threats | |
| limit | No | Max records per response (default 25, max 1000). | |
| cursor | No | Pagination cursor: pass the nextCursor from the previous response to get the next page. | |
| site_ids | No | Comma-separated site IDs to scope to | |
| full_details | No | Return complete raw threat records instead of the compact summary. Default false. | |
| computer_name | No | Filter to threats on machines whose name contains this text | |
| created_after | No | Only threats detected after this ISO 8601 datetime, e.g. "2026-07-01T00:00:00Z" | |
| content_hashes | No | Comma-separated SHA1 hashes to search for | |
| created_before | No | Only threats detected before this ISO 8601 datetime | |
| classifications | No | Comma-separated threat classifications, e.g. "Malware,Ransomware,PUA,Trojan" | |
| analyst_verdicts | No | Comma-separated: "undefined", "true_positive", "false_positive", "suspicious" | |
| confidence_levels | No | Comma-separated: "malicious", "suspicious", "n/a" | |
| incident_statuses | No | Comma-separated: "unresolved", "in_progress", "resolved". Use "unresolved,in_progress" for open incidents. | |
| mitigation_statuses | No | Comma-separated: "not_mitigated", "mitigated", "marked_as_benign" |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the default compact summary behavior, the full_details flag for raw records, and the sorting order (newest first). It does not mention rate limits or pagination details, but the core behavioral traits are well-covered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, each earning its place: purpose, return fields/behavior, and alternative tool. It is front-loaded and tightly written with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (14 params, no output schema, no annotations), the description covers the essential aspects: purpose, return field list, default vs full_details, sorting, and sibling distinction. It does not explain the pagination return structure, but the schema covers the cursor parameter, making this a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 14 parameters thoroughly. The description adds no additional parameter-level detail beyond mentioning full_details behavior, which is also in the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool 'List threats/detections with filters' and identifies it as 'the drill-down tool for incidents,' which distinguishes it from the sibling s1_threat_summary. It enumerates the specific fields returned, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly directs users to 'Use s1_threat_summary for aggregated counts across the estate,' providing a clear alternative. The description also frames this as the drill-down tool for incidents, implying when detailed threat data is needed versus aggregate summaries.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
s1_threat_summaryA
Aggregated threat counts grouped by site — the reporting/dashboard tool. Sweeps ALL matching threats server-side and returns compact counts: per site by incident status, analyst verdict and classification, plus estate-wide totals, the most common threat names and the machines with the most detections. Ideal for "threats this month across all clients" reporting — pass created_after for the period. Use s1_threats to drill into individual detections afterwards.
| Name | Required | Description | Default |
|---|---|---|---|
| site_ids | No | Comma-separated site IDs to scope to. Default: whole estate. | |
| max_threats | No | Safety cap on threats to sweep (default 5000) | |
| created_after | No | Only threats detected after this ISO 8601 datetime — set this for period reporting, e.g. "2026-07-01T00:00:00Z". Default: all time. | |
| created_before | No | Only threats detected before this ISO 8601 datetime | |
| incident_statuses | No | Comma-separated: "unresolved", "in_progress", "resolved". Default: all. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that the tool 'sweeps ALL matching threats server-side' (implying a potentially heavy query) and returns 'compact counts' rather than full data. It also mentions the safety cap indirectly by referencing the period filter. However, it does not explicitly note the read-only nature or any rate limits, though these are implied by the reporting context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with purpose and usage. Every clause adds value: scope, output details, when to use, and which sibling to use instead. No redundant words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite no output schema, the description summarizes the output structure: 'per site by incident status, analyst verdict and classification, plus estate-wide totals, the most common threat names and the machines with the most detections.' Combined with usage guidance and safety cap context, it gives a complete picture for selecting and invoking the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents all five parameters with meaningful descriptions. The description adds a usage hint for created_after ('pass created_after for the period') but does not introduce new parameter-level details beyond the schema. Baseline 3 applies because the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool's purpose: 'Aggregated threat counts grouped by site' with a specific verb ('sweeps' and 'returns compact counts'). It explicitly distinguishes itself from sibling tools by identifying as 'the reporting/dashboard tool' and directing users to 'Use s1_threats to drill into individual detections afterwards.'
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit when-to-use guidance: 'Ideal for "threats this month across all clients" reporting' and instructs to 'pass created_after for the period.' It also names an alternative tool (s1_threats) for downstream drilling, making the decision boundary clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
6 tool updates
v0.1.0- First observed
s1_activities - First observed
s1_agents - First observed
s1_estate_overview - First observed
s1_list_sites - First observed
s1_threat_summary - First observed
s1_threats
TDQS
Scored across 6 tools
Each tool has a distinct purpose: site discovery, estate health, agent detail, threat detail, threat aggregation, and activity logging. There is no overlap in functionality; even the overview/summary tools are clearly differentiated by granularity and use case.
All tools share the 's1_' prefix and snake_case, but the second part mixes verb+noun (s1_list_sites), noun+noun (s1_estate_overview, s1_threat_summary), and bare plural nouns (s1_agents, s1_threats, s1_activities). This is inconsistent but still readable and predictable enough to navigate.
With 6 tools, the server is well-scoped for its apparent purpose of read-only SentinelOne monitoring and reporting. Each tool covers a necessary facet of the domain without redundancy or bloat.
The read-only surface is fairly complete, covering sites, estate health, agents, threats, threat summaries, and activity logs. Minor gaps exist, such as lack of per-site detail beyond the list view and no direct single-threat lookup, but these can be worked around with existing filters and drill-downs.
Maintenance
Related MCP Connectors
Read-only MCP server for AIStatusDashboard status, incidents, metrics, and fallback recommendations.
Read-only MCP server for ClassQuill, a tutoring-business-management platform.
XFA's remote MCP server — query device posture, compliance, policies & CVEs. Read-only.
Read-only MCP server for The Quiet Protocol's engines, benchmarks, proof, and business data.
Related MCP Servers
- FlicenseBqualityDmaintenanceMCP server for Signal Sciences (Fastly NGWAF) API, providing progressive disclosure and 40+ read-only tools for managing corporations and sites.481-
- FlicenseBqualityBmaintenanceRead-only MCP server wrapping the Redash REST API, enabling query listing, execution, data source inspection, and dashboard retrieval with optional per-user API key support.7-
- FlicenseNot gradedqualityBmaintenanceMCP server that exposes Acronis Cyber Protect Cloud APIs as 14 read-only tools for managing alerts, tasks, agents, resources, policies, and tenants.-
- AlicenseBqualityBmaintenanceA read-only MCP server for Microsoft Intune and Entra ID that enables list, get, search, and reporting operations for tenant visibility, audits, troubleshooting, and health reporting without write actions. It includes authentication helpers, report exports, and metadata discovery tools.361MIT