Splunk MCP
MCP server for interacting with Splunk Enterprise/Cloud for search, index management, and administration
Score Breakdown
Server Info
- Package
- splunk-mcp
- Registry
- npm
- Repository
- MichaelSp/splunk-mcp
- Maintainer
- Community
- Category
- Developer Tools
- Tags
- logssiemobservability
- Last Scanned
- 7 Apr 2026
Findings
10 issuesAuthentication & Identity
HIGHNo per-request auth - requires instance-per-user
Stdio transport only. Authenticates to Splunk via username/password or token from environment variables. Supports configurable host, port, and scheme. VERIFY_SSL can be set to 'false' to disable SSL verification. Uses dotenv for loading .env files. For multi-tenant deployment, the platform must spawn a separate server instance per user.
Add HTTP/SSE transport to accept per-request Authorization headers, or implement the MCP OAuth spec.
Tool Schema Quality
HIGHRequired fields missing on 1 write operations
Write tools without required field declarations: list_users.
Add required arrays to all write/delete tool schemas.
MEDIUMOnly 0 of 11 schemas have parameter constraints
Most schemas lack maxLength, enum, or pattern constraints on string parameters.
Add constraints to string parameters, especially on write operations.
CRITICALDangerous execution surface: search_splunk accepts arbitrary SPL search queries which can perform destructive operations, data exfiltration, or resource-intensive operations on Splunk
Tool allows raw code/query execution which could be exploited via prompt injection.
Use parameterized queries or validated command sets.
Permission Granularity
HIGH1 destructive operations not isolated
Admin/delete tools are mixed with regular operations and cannot be independently disabled.
Namespace admin tools separately for independent access control.
LLM Safety
MEDIUMOverlapping tool descriptions may cause wrong selection
Similar descriptions between tools could cause the LLM to pick the wrong one.
Differentiate descriptions with unique use cases.
Data Exposure
MEDIUM5 list operations lack pagination
search_splunk has a max_results parameter (default 100) which limits result count, but no cursor/offset pagination. list_indexes, list_saved_searches, list_users, list_kvstore_collections, and get_indexes_and_sourcetypes return all results with no pagination. All responses return full records with no field selection.
Add limit/offset or cursor-based pagination.
LOWNo field selection on responses
Responses return full records rather than projected fields.
Implement field selection to return only relevant fields.
Maintenance & Trust
LOWCommunity-maintained by MichaelSp
No official vendor backing.
Seek vendor verification.
MEDIUM9 dependency vulnerabilities (7 high)
npm audit found 7 high severity CVEs.
Update vulnerable dependencies.
Tools
11 total| Name | Description | Risk |
|---|---|---|
| search_splunk | Execute a Splunk search query and return the results. | read |
| list_indexes | Get a list of all available Splunk indexes. | read |
| get_index_info | Get metadata for a specific Splunk index. | read |
| list_saved_searches | List all saved searches in Splunk. | read |
| current_user | Get information about the currently authenticated user including username, roles, and capabilities. | read |
| list_users | List all Splunk users (requires admin privileges). | admin |
| list_kvstore_collections | List all KV store collections across apps with metadata including app, fields, and accelerated fields. | read |
| health_check | Get basic Splunk connection information and list available apps. | read |
| get_indexes_and_sourcetypes | Get a list of all indexes and their sourcetypes with event counts and time range information. | read |
| ping | Simple ping endpoint to check server availability and get basic server information. | read |
| health | Get basic Splunk connection information and list available apps (alias for health_check). | read |
Deploy Splunk MCP securely
CompleteFlow adds per-user authentication, permission scoping, and audit logging to any MCP server out of the box.
Deploy on CompleteFlow