D

Splunk MCP

MCP server for interacting with Splunk Enterprise/Cloud for search, index management, and administration

Overall Score49/100

Score Breakdown

Server Info

Package
splunk-mcp
Registry
npm
Maintainer
Community
Category
Developer Tools
Tags
logssiemobservability
Last Scanned
7 Apr 2026

Findings

10 issues

Authentication & 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.

Remediation

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.

Remediation

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.

Remediation

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.

Remediation

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.

Remediation

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.

Remediation

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.

Remediation

Add limit/offset or cursor-based pagination.

LOWNo field selection on responses

Responses return full records rather than projected fields.

Remediation

Implement field selection to return only relevant fields.

Maintenance & Trust

LOWCommunity-maintained by MichaelSp

No official vendor backing.

Remediation

Seek vendor verification.

MEDIUM9 dependency vulnerabilities (7 high)

npm audit found 7 high severity CVEs.

Remediation

Update vulnerable dependencies.

Tools

11 total
NameDescriptionRisk
search_splunkExecute a Splunk search query and return the results.read
list_indexesGet a list of all available Splunk indexes.read
get_index_infoGet metadata for a specific Splunk index.read
list_saved_searchesList all saved searches in Splunk.read
current_userGet information about the currently authenticated user including username, roles, and capabilities.read
list_usersList all Splunk users (requires admin privileges).admin
list_kvstore_collectionsList all KV store collections across apps with metadata including app, fields, and accelerated fields.read
health_checkGet basic Splunk connection information and list available apps.read
get_indexes_and_sourcetypesGet a list of all indexes and their sourcetypes with event counts and time range information.read
pingSimple ping endpoint to check server availability and get basic server information.read
healthGet 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