Splunk MCP server: official app vs community project
Which one is the official app, why a repository inside Splunk's own organization says it is not, and what each actually installs into.
Checked 31 August 2026 · from help.splunk.com, Splunkbase, the splunk GitHub organization and the project README
One of 91 guides to monitoring and developer tools. Each covers what an AI coding agent can get out of the tool through MCP, the protocol that lets the agent query the tool directly.
Summary
Splunk publishes an MCP server as a Splunkbase app. App 7931 is titled Splunk MCP Server and its listing resolved on 24 August 2026.
A second thing carries the same name. splunk/splunk-mcp-server2 sits in Splunk's own GitHub organization, and its repository description begins with the word Unofficial.
That project has 37 stars. Its description promises Python and TypeScript implementations, SPL input validation, output sanitization, and stdio, SSE and Docker deployment. The repository record is thinner. It was created 16 June 2025 at 18:37 and last pushed at 19:11 the same evening, a 34-minute window. It carries no license file and nothing since.
What is the Splunk MCP server?
Splunk is a log and event platform, and its query language is SPL. An MCP server over it lets an agent run searches and read results without a browser.
The official route is a Splunkbase app, which is how Splunk distributes functionality that runs inside a Splunk deployment. It installs into Splunk Enterprise or Splunk Cloud rather than running as a standalone process.
The GitHub project takes the other approach: a server you run yourself that talks to Splunk over its API. Its README describes safety guardrails for SPL input validation and output sanitization, which is the sensible concern when a model writes queries.
Two things are called the Splunk MCP Server:
| Server | Where it runs | State |
|---|---|---|
| Splunkbase app 7931 | Inside Splunk Enterprise or Splunk Cloud | The official route. Listing resolved 24 August 2026 |
splunk/splunk-mcp-server2 on GitHub | A process you run, talking to Splunk's API | In Splunk's own organization, and its description begins Unofficial. 37 stars, last pushed 16 June 2025 |
Both are titled Splunk MCP Server in their own documentation. The distinction is the repository description and the distribution channel, not the name.
Splunk's MCP server is about investigating indexed operational data. A deploy is reachable only where something logs an event for it. Nothing here reviews code, traces an agent or reports spend.
| Part of the work | What Splunk has here | Can an agent reach it |
|---|---|---|
| Code, tests & review | None | Nothing for code or review |
| CI & release | Deployment events, where they are logged | Partial, and only by convention. A deploy is reachable if something ships an event for it; nothing models releases |
| Production observability | Logs, events and search over them, plus Splunk Observability APM and metrics | Yes. Core strength. Search is what Splunk is, and search is what the server exposes |
| Agent observability & evals | None specific to agents | Agent traces and evaluations are out of scope. Model logs are reachable only if you ship them to Splunk yourself |
| AI cost management | None | No spend data of any kind |
In practice, Splunk answers whatever your logs contain, which is broader than most connectors and less structured. It has no model of a deploy, a service or an incident, so the quality of an answer depends entirely on what your pipeline indexed.
What can an AI agent do with Splunk?
| Task | Tools | Works | Watch out for |
|---|---|---|---|
| Run a search | splunk_run_query | Yes | It can fail past 1,000 events or 1 minute of run time, so bound by index and time range |
| See what is indexed | splunk_get_indexes splunk_get_index_info | Yes | The Splunk role's search permissions decide which indexes are visible |
| Write the SPL for me | saia_generate_spl saia_explain_spl | Yes | Generated SPL should be printed and read before its result is trusted |
| Re-run a search someone saved | splunk_run_saved_search | Partial | Splunk marks the saved-search tool beta, and the saved search has to exist already |
| Find out what a field or lookup means | splunk_get_knowledge_objects splunk_get_kv_store_collections | Yes | Returns the deployment's own saved searches, field extractions, tags and key-value lookups, not their contents |
| Why did this alert fire? | splunk_list_fired_alerts splunk_get_fired_alert_details splunk_get_alert_details | Yes | Added in app version 2.0.0 on 3 September 2026, so older installs lack them |
Splunk publishes the tool list in its own product documentation: 33 tools for version 2.0, with 16 prefixed splunk_, 5 prefixed saia_ and 12 prefixed o11y_. The splunk_ family covers search, instance and index metadata, users, KV Store collections, knowledge objects and alerts. The saia_ family is natural-language assistance over SPL rather than access to new data. The o11y_ family reaches Splunk Observability once configured. The core of the connector is Splunk Enterprise and Splunk Cloud search, so a useful question is one a search would answer.
33 tools documented for version 2.0, in three families, as of 6 October 2026
- Search and instance5
splunk_run_querysplunk_get_infosplunk_get_indexessplunk_get_index_infosplunk_get_metadata- Users and objects4
splunk_get_user_infosplunk_get_user_listsplunk_get_kv_store_collectionssplunk_get_knowledge_objects- Alerts (added in 2.0.0)6
splunk_list_alertssplunk_get_alert_detailssplunk_list_fired_alertssplunk_get_fired_alert_detailssplunk_get_alert_throttlesplunk_list_active_throttles- Saved searches (beta)1
splunk_run_saved_search- SPL assistance5
saia_find_data_sourcesaia_generate_splsaia_explain_splsaia_optimize_splsaia_ask_splunk_question- Splunk Observability12
o11y_get_apm_serviceso11y_get_apm_environmentso11y_get_apm_service_errors_and_requestso11y_get_apm_service_latencyo11y_get_apm_service_dependencieso11y_get_apm_trace_toolo11y_get_apm_exemplar_traceso11y_search_alerts_or_incidentso11y_get_metric_nameso11y_get_metric_metadatao11y_generate_signalflow_programo11y_execute_signalflow_program
Names and grouping are Splunk's own, from its MCP server tool reference for version 2.0. Splunk turns the platform tools on by default. The saia_ family generates, explains and optimizes SPL, answers questions about Splunk, or shortlists data sources. It does not reach data the splunk_ tools cannot. The o11y_ family reaches Splunk Observability APM, detectors and SignalFlow metrics, and needs its own configuration. KV Store collections are Splunk's key-value lookups. Knowledge objects are the saved searches, field extractions and tags a deployment defines. Splunk describes splunk_run_query as "intended for quick searches that are deemed safe and non-destructive". The 2.0.0 release notes also name splunk_get_sourcetypes, which the tool table does not list as of 6 October 2026. Splunk documents read and query tools only, and describes no server-side read-only flag.
Splunk MCP server limits: where answers come back incomplete
The first limit is a naming collision. A repository in Splunk's own GitHub organization carries the same title as the official Splunkbase app. Check which one you are installing before you follow any setup.
A repository inside Splunk's own organization describes itself as unofficial.
splunk/splunk-mcp-server2 is in the splunk GitHub organization, and its repository description begins with the word Unofficial. Its README is titled Splunk MCP Server.
The official route is a Splunkbase app, number 7931, carrying the same title. A GitHub search finds the repository long before anyone finds the Splunkbase listing.
Guard: Confirm which of the two you are installing, and treat the organization it sits in as insufficient evidence that it is supported.
The agent says: “There were no errors last night.” That index may not hold them.
Splunk returns an empty result for a search against an index that never received the data, which is indistinguishable from a search that found nothing.
Guard: Require the agent to name the index and the time range alongside any negative finding.
The agent says: “The search shows a spike.” A model wrote that SPL.
SPL is expressive, and a small change in the query changes what the result means. The GitHub project ships input validation for exactly this reason.
Guard: Have the agent print the SPL alongside the result so the query can be read before the number is trusted.
How to configure Splunk MCP for agents
- 1
Decide which of the two you mean
The Splunkbase app installs into Splunk; the GitHub project is a process you run and maintain yourself.
- 2
Read the unofficial label before adopting the repository
It is in Splunk's organization and its description still begins with that word.
- 3
Expect SPL to be the interface
An agent writing SPL is writing a query language, and the GitHub project documents validation guardrails specifically for that.
- 4
Scope the Splunk role
Search permissions in Splunk decide what any MCP route can read, whichever one you choose.
Paste this into your agent’s instructions
An SPL search returns exactly what the index holds, and an empty result can mean the data was never indexed. The block separates the two.
When you answer using Splunk MCP tools, state: - The SPL you ran and the time range it covered. - The index or source type you searched. An empty result may mean the data was never indexed rather than never happened. - Which server you used: the Splunkbase app, or the separate GitHub project that describes itself as unofficial. Never state that data does not exist. State that the search above returned no events. Write your answer in ASD-STE100 Simplified Technical English. Use short sentences with one idea in each.
Do you need the MCP server at all?
Not for a report that runs to a schedule. Splunk's REST API and the search endpoints are the direct route there, and they avoid both the app install and the context cost.
The connector earns its place during an investigation, where an agent can write a search, read the result and refine it without leaving the editor.
For application logs where Splunk is not already the destination, OpenSearch and Elastic both publish servers over their own stores.
For metrics rather than logs, Prometheus and Grafana answer a different class of question that Splunk indexes rarely hold in a useful shape.
Use the Splunkbase app for a supported route. Call the REST API for anything scheduled.
Splunk MCP server setup
Splunk's server is a Splunkbase app, which makes its install different from every other connector in this directory. It goes into Splunk, not next to your agent.
That is the prerequisite worth stating first: it needs an existing Splunk Enterprise or Splunk Cloud deployment. There is no standalone process to run without one.
The Splunkbase record lists it as live, licensed under Splunk General Terms, with app id Splunk_MCP_Server at uid 7931.
Nothing below configures Claude Code or Cursor. The app runs inside Splunk rather than beside the agent, and the client-side connection is documented in Splunk's own MCP server reference.
Install the app
Splunkbase records the single-instance install method as simple, which is the ordinary app install path through Splunk Web or by unpacking into $SPLUNK_HOME/etc/apps.
No credentials go into the install itself. The app authenticates as a Splunk app does, against the deployment it is installed into.
Splunk Web -> Apps -> Manage Apps -> Install app from file
# or unpack into $SPLUNK_HOME/etc/appsDistributed deployments
For a distributed environment Splunkbase records the method as appmgmt_phase, meaning it is pushed through Splunk's own app management rather than copied to each node.
No credentials are added at this step; the deployment's existing app management handles distribution.
Deployment server / App management -> push Splunk_MCP_Server
Every other client
Each block below is the configuration for one client, with the file path and the key that client expects.
Confirm the app record
The Splunkbase API returns the app's metadata without a login, which is a quick way to confirm the id and that the listing is live before you install anything.
The request carries no credentials; the record is public.
curl -s https://splunkbase.splunk.com/api/v1/app/7931/ \
| python3 -c "import json,sys; d=json.load(sys.stdin); \
print(d['title'], d['appid'], d['archive_status'])"Why there is no npm or PyPI package
Splunk distributes through Splunkbase, the same channel as any other Splunk app, so there is deliberately nothing on a language package registry.
Confirming that needs no credentials.
Splunkbase app 7931 -> installs into Splunk npm / PyPI -> nothing, by design
Read-only access, permissions and security
SPL is powerful, and a model writes it
The GitHub project documents input validation for SPL and sanitization of output, which is the right concern for generated queries.
The Splunk role is the boundary
Whatever the credentials can search is what an agent can read, and Splunk indexes tend to hold sensitive data.
Two servers means two review conversations
The Splunkbase app is reviewed as a Splunk app; the GitHub project is code you adopt yourself.
Results can be large
A search over a broad index can return far more than a context window holds, so bounding the search matters more here than on most connectors.
Troubleshooting
- You cannot find the server on GitHub
- The official route is Splunkbase app 7931, titled Splunk MCP Server. There is an official repository as well,
CiscoDevNet/Splunk-MCP-Server-official, though it is a single snapshot: created and pushed within two minutes on 18 February 2026, 4 stars, no license declared. - The GitHub project says it is unofficial
- That is accurate and it is in Splunk's own organization.
splunk/splunk-mcp-server2describes itself that way, and was last pushed 16 June 2025. - A search returns nothing
- Check the index and the time range before concluding the event did not happen. Splunk returns nothing for an unindexed source in exactly the same way.
- A long search is not what `splunk_run_query` is for
- Splunk describes it as "intended for quick searches that are deemed safe and non-destructive". It can fail when a search runs past 1 minute or returns more than 1,000 events. Bound the search by index and time range before you run it.
Splunk MCP server: Reference
| Item | Value |
|---|---|
| Official route | Splunkbase app 7931, titled Splunk MCP Server |
| Owner | Splunk, a Cisco company since March 2024 |
| Tools | 33 for version 2.0: 16 splunk_, 5 saia_ and 12 o11y_ (Splunk Observability) |
| Official repository | CiscoDevNet/Splunk-MCP-Server-official, created and pushed within two minutes on 18 February 2026 |
| App releases seen | 1.2.1 · 1.3.0 · 1.3.1 · 2.0.0 on 3 September 2026 |
| Search guardrails | splunk_run_query can fail past 1 minute or 1,000 events · default range 6 hours since 2.0.0 |
| Rate limits | Global and per-tool limits per minute, set by a Splunk admin · none set by default |
| Installs into | Splunk Enterprise or Splunk Cloud |
| Second project | splunk/splunk-mcp-server2, in Splunk's own organization |
| Its self-description | Begins with the word Unofficial |
| Its adoption | 37 stars · 34 minutes of commits on 16 June 2025 · no license · nothing since |
| Its implementations | Python and TypeScript, with stdio, SSE and Docker |
| Its guardrails | SPL input validation and output sanitization |
| Auth | Splunk credentials and role, whichever route is used |
| Inventory source | Splunk's MCP server tool reference for version 2.0 on help.splunk.com, read 6 October 2026 |
What engineers report
The two surfaces are the story, so the facts below distinguish them rather than summarizing Splunk.
| What was checked | What it shows |
|---|---|
| Splunkbase app number | 7931 |
| Its title | Splunk MCP Server |
| GitHub project | splunk/splunk-mcp-server2 |
| Its stars | 37 |
| Its last push | 16 June 2025 |
| Its self-description | Begins with Unofficial |
| Transports it documents | stdio, SSE and Docker |
The Splunkbase listing for app 7931 was fetched on 24 August 2026 and returned HTTP 200 with the title Splunk MCP Server. Repository facts and the README for splunk/splunk-mcp-server2 come from the GitHub API and raw content on the same date. Splunk publishes the tool list in its product documentation: 33 tools for version 2.0, with 16 prefixed splunk_, 5 prefixed saia_ and 12 prefixed o11y_, read from help.splunk.com on 6 October 2026.
Should you connect an agent to Splunk?
Yes. Best for the Splunkbase app, with searches bounded by index and time range.
- Strongest fit
- Splunk Enterprise or Splunk Cloud customers who want an agent writing searches against indexes they already run.
- Main advantage
- Search over whatever you have indexed, which is broader than any structured connector in this guide.
- Main weakness
- Two things share the name, and the more discoverable one describes itself as unofficial.
- Operational risk
- A model writing SPL against indexes that usually hold sensitive data, bounded only by the Splunk role.
From Oodle
One platform for agent traces and infrastructure
Agent traces usually sit in a different product from the rest of your telemetry, so when a slow database makes an agent slow the symptom is in one tool and the cause is in another. Oodle keeps both in one query surface.
See agent observabilityFrequently asked questions
Does Splunk have an official MCP server?
Yes. Splunkbase app 7931 is titled Splunk MCP Server and its listing resolved on 24 August 2026.
What is splunk/splunk-mcp-server2 then?
A separate project in Splunk's own GitHub organization whose repository description begins with the word Unofficial. It has 37 stars and was last pushed 16 June 2025.
How many tools does it expose?
Thirty-three in version 2.0, which Splunk documents by name. Sixteen splunk_ tools cover search, indexes, metadata, users, KV Store, knowledge objects and alerts. Five saia_ tools generate, explain and optimize SPL, answer questions about Splunk or find data sources. Twelve o11y_ tools reach Splunk Observability once configured.
What protects against a bad generated query?
The GitHub project documents SPL input validation and output sanitization. Beyond that, the Splunk role's search permissions are the boundary.
What if my logs are not in Splunk?
OpenSearch and Elastic publish servers over their own stores, and each runs against its own data rather than Splunk's.