Sentinel Solutions MCP Server

Sentinel Solutions MCP Server

Analyzes Microsoft Sentinel solutions from GitHub repositories to map data connectors to Log Analytics tables and query security content like detections and playbooks. It provides instant access to the official Content Hub or private repositories through a high-performance pre-built index.

Category
Visit Server

README

Sentinel Solutions MCP Server

An MCP (Model Context Protocol) server that analyzes Microsoft Sentinel solutions from any GitHub repository and maps data connectors to Log Analytics tables. Query the official Azure Sentinel Content Hub or your own custom/private solution repositories.

Quick Start

# Use with npx (recommended - instant startup with pre-built index)
npx 

# Or install globally
npm install -g sentinel-solutions-mcp

Add to Claude Desktop (claude_desktop_config.json):

{
  "mcpServers": {
    "sentinel-solutions": {
      "command": "npx",
      "args": ["sentinel-solutions-mcp"]
    }
  }
}

Features

Multi-Repository Support

Query any GitHub repository containing Sentinel solutions, not just the official Azure repo. Perfect for:

  • Private/Custom Solutions: Analyze your organization's private Sentinel repository
  • Forked Repositories: Test changes in your fork before contributing
  • Testing Environments: Analyze development or staging branches
  • Community Solutions: Explore third-party Sentinel solution repositories

Performance Optimizations

  • Optimized Pre-built Index: Ships with LLM-friendly index (3.8MB, excludes KQL queries) for instant startup (< 1 second first query)
  • 68% Size Reduction: Optimized index is 68% smaller than full index for better token efficiency
  • Direct GitHub Access: Uses GitHub API - no cloning or downloads required!
  • On-Demand Queries: KQL queries fetched from GitHub only when explicitly needed
  • Zero Setup: Works immediately, no git repository cloning or storage needed
  • Always Current: Accesses latest data directly from GitHub

Comprehensive Analysis

  • Full Content Hub Coverage: Analyzes the entire Microsoft Sentinel Content Hub repository
  • 15+ Content Types Indexed: Pre-built index includes 2,579 detections, 519 workbooks, 2,463 hunting queries, 696 playbooks, 895 parsers, 51 watchlists, 6 functions, 105 ASIM items, 16 summary rules, 41 tools, and more
  • 8,697 Total Items: Comprehensive index with 480 solutions and complete connector-table mappings
  • 23 MCP Tools: Query all content types including solutions, connectors, detections, workbooks, hunting queries, playbooks, parsers, watchlists, notebooks, functions, ASIM content, summary rules, tools, tutorials, dashboards, and data connectors
  • 6 Detection Methods: Implements all table detection strategies from the original Python tool:
    • graphQueries.{index}.baseQuery
    • sampleQueries.{index}.query
    • dataTypes.{index}.lastDataReceivedQuery
    • connectivityCriterias.{index}.value
    • ARM template logAnalyticsTableId variables
    • Parser function resolution with cycle prevention
  • Tolerant Parsing: Multi-stage JSON parsing with fallback strategies
  • KQL Query Analysis: Context-aware Kusto Query Language parser
  • YAML Parser Resolution: Recursive parser-to-table mapping with depth limiting

Installation & Usage

# Run with npx (recommended)
npx sentinel-solutions-mcp

# Or install globally
npm install -g sentinel-solutions-mcp

Claude Desktop Configuration:

{
  "mcpServers": {
    "sentinel-solutions": {
      "command": "npx",
      "args": ["sentinel-solutions-mcp"]
    }
  }
}

For detailed usage instructions, configuration options, and examples, see USAGE.md.

Available Tools

The MCP server provides 23 tools for querying Microsoft Sentinel content:

Solution & Connector Analysis (6 tools)

  • analyze_solutions - Full analysis of all solutions with connector-table mappings
  • get_connector_tables - Get Log Analytics tables for a specific connector
  • search_solutions - Search solutions by name, publisher, or support tier
  • get_solution_details - Comprehensive details about a specific solution
  • list_tables - List all Log Analytics tables (all/custom/standard)
  • validate_connector - Validate connector JSON and extract tables

Content Analysis (17 tools)

  • list_detections / get_detection_details - Detection rules with MITRE ATT&CK mappings
  • list_workbooks / get_workbook_details - Workbooks and visualizations
  • list_hunting_queries - Threat hunting queries
  • list_playbooks - Automation playbooks (Logic Apps)
  • list_parsers - KQL parsers and functions
  • list_watchlists - Watchlist definitions
  • list_notebooks - Jupyter notebooks
  • list_exploration_queries - Exploration queries
  • list_functions - Saved KQL functions
  • list_asim_content - ASIM (Advanced Security Information Model) content
  • list_summary_rules - Summary rules
  • list_tools - Sentinel tools and utilities
  • list_tutorials - Learning resources and tutorials
  • list_dashboards - Sentinel dashboards
  • list_data_connectors - Data connector definitions

All tools support filtering by solution and querying custom/private repositories via the pre-built index or live GitHub API. See USAGE.md for detailed documentation and examples.

How It Works

The server provides instant access to the Microsoft Sentinel Content Hub:

  1. Optimized Pre-built Index: Ships with a LLM-friendly 3.8MB index containing all 8,697+ items from the Azure-Sentinel repository
  2. Token Efficient: Excludes KQL queries from index (68% size reduction) for better LLM performance
  3. Instant Queries: First query returns results in < 1 second using the pre-built index
  4. On-Demand Queries: KQL queries fetched from GitHub API only when explicitly requested
  5. GitHub API Access: Optional live queries via GitHub API for custom repositories or latest updates
  6. Smart Caching: Results cached by repository commit SHA for optimal performance
  7. Multi-Repository Support: Query any GitHub repository containing Sentinel solutions

The analyzer uses 6 sophisticated detection methods to identify Log Analytics tables from connector definitions, including KQL query parsing, ARM template analysis, and recursive parser resolution. See USAGE.md for technical details.

Architecture

Built with TypeScript and the Model Context Protocol SDK:

  • MCP Server: Stdio-based communication for AI agent integration
  • Content Analyzer: Parses all Sentinel content types from GitHub repositories
  • Optimized Pre-built Index: 3.8MB LLM-friendly JSON index with 8,697+ items shipped with the package
  • Token Efficiency: Excludes KQL queries from index for 68% size reduction
  • GitHub Client: Direct API access with smart caching and rate limit handling
  • Type Safety: Full TypeScript definitions for all content types

Performance

  • Pre-built Index: Instant first query (< 1 second) using pre-built analysis shipped with package
  • Smart Caching: Analysis results and file contents cached by repository commit hash
  • Parallel Requests: Multiple files fetched concurrently
  • No Downloads: Zero initial download time - starts instantly
  • Auto-refresh: Weekly automated index updates via GitHub Actions
  • Typical Performance:
    • Default repo (with pre-built index): < 1 second
    • Custom repo (fresh analysis): 100+ solutions analyzed in ~30-60 seconds
    • Subsequent queries: Instant (cached)

Comparison to Python Version

This TypeScript implementation provides:

  • Feature Parity: All 6 detection methods implemented
  • Same Logic: Matching parsing and resolution algorithms
  • MCP Integration: Exposed via Model Context Protocol for AI agents
  • Multi-Repository: Analyze any GitHub repo, not just official Azure repo
  • Pre-built Index: Instant startup (< 1s) vs. full analysis every time
  • GitHub API Access: No cloning, no storage, instant start
  • Better Distribution: Runnable via npx, no Python or Git dependency
  • Type Safety: Full TypeScript type definitions
  • Auto-updates: Weekly index refresh via GitHub Actions

Troubleshooting

GitHub API Rate Limits: The pre-built index eliminates the need for GitHub API access in most cases. For custom repositories or live updates, use a GitHub token:

export MCP_GITHUB_TOKEN=your_token_here

Custom Repositories: Configure via environment variables or tool parameters. See USAGE.md for details.

Performance: The pre-built index provides instant results (< 1s). Custom repository analysis takes 30-60 seconds for first query, then cached.

Development

npm install          # Install dependencies
npm run build        # Build TypeScript + pre-built index
npm run dev          # Run in development mode
npm test             # Verify index loads correctly

Contributing

Contributions welcome! This project maintains feature parity with the Microsoft Sentinel Solutions Analyzer Python tool while adding MCP integration.

License

MIT

Credits

Based on the Microsoft Sentinel Solutions Analyzer Python tool from the Azure-Sentinel repository.

Related Projects

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured