> ## Documentation Index
> Fetch the complete documentation index at: https://agent-observability-docs.splunk.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Splunk Agent Observability MCP Server

> Learn how to integrate Splunk Agent Observability's Model Context Protocol (MCP) server with AI-enabled IDEs like Cursor and VS Code

The Splunk Agent Observability Model Context Protocol (MCP) server enables seamless integration between AI-powered IDEs, such as Cursor, or VS Code with GitHub Copilot, and Splunk Agent Observability's evaluation and observability platform.

With MCP, you can access Splunk Agent Observability's capabilities directly from your development environment, including:

* Creating and managing datasets
* Running experiments
* Setting up prompt templates
* Getting signals on Agent Streams
* Integrating Splunk Agent Observability with your code

## Prerequisites

Before you begin, ensure you have the following:

<Steps>
  <Step title="AI-enabled IDE">
    Install an AI-enabled IDE such as [Cursor](https://cursor.sh) or [VS Code](https://code.visualstudio.com) with AI capabilities
  </Step>

  <Step title="API key">
    Generate your Splunk Agent Observability API key from the **API keys** page in the UI.
  </Step>
</Steps>

## Configure your IDE

The Splunk Agent Observability MCP server works with both Cursor and VS Code. Follow the steps below for your IDE:

<Tabs>
  <Tab title="VS Code">
    <Steps>
      <Step title="Install GitHub Copilot">
        Install the [GitHub Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot) extension if you haven't already
      </Step>

      <Step title="Open MCP settings">
        Open the Command Palette (`Ctrl + Shift + P` on Windows/Linux, or `Cmd + Shift + P` on Mac) and search for **"MCP: Open User Configuration"**
      </Step>

      <Step title="Add the Splunk Agent Observability MCP server configuration">
        Copy and paste the configuration below. Replace `YOUR-API-KEY` with your actual Splunk Agent Observability API key.

        ```json VSCode MCP Configuration highlight={3-9} theme={null}
        {
          "servers": {
            "splunk_ao_mcp_server": {
              "url": "<your-splunk-ao-api-url>/mcp/http/mcp",
              "headers": {
                "Splunk-AO-API-Key": "YOUR-API-KEY",
                "Accept": "text/event-stream"
              }
            }
          },
          "inputs": []
        }
        ```

        If you're using a self-hosted Splunk Agent Observability deployment, replace the `<your-splunk-ao-api-url>/mcp/http/mcp` url with your deployment URL. The format of this URL is based on your URL, replacing `console` with `api` and appending `/mcp/http/mcp`.
      </Step>

      <Step title="Reload VS Code">
        Reload VS Code by opening the Command Palette and running **"Developer: Reload Window"** for the changes to take effect
      </Step>
    </Steps>
  </Tab>

  <Tab title="Cursor">
    <Steps>
      <Step title="Open the Tools & MCP settings">
        Open the Cursor command palette (`Ctrl + Shift + P` on Windows/Linux, or `Cmd + Shift + P` on Mac), then choose "Open MCP Settings".
      </Step>

      <Step title="Open the MCP server configuration file">
        Click on **Add Custom MCP** to open the `mcp.json` MCP configuration file, or **New MCP Server** if you already have other MCP servers configured.
      </Step>

      <Step title="Add the Splunk Agent Observability MCP server configuration">
        Copy and paste the configuration below. Replace `YOUR-API-KEY` with your actual Splunk Agent Observability API key.

        ```json Cursor MCP Configuration highlight={3-9} theme={null}
        {
          "mcpServers": {
            "splunk_ao_mcp_server": {
              "url": "<your-splunk-ao-api-url>/mcp/http/mcp",
              "headers": {
                "Splunk-AO-API-Key": "YOUR-API-KEY",
                "Accept": "text/event-stream"
              }
            }
          }
        }
        ```

        If you're using a self-hosted Splunk Agent Observability deployment, replace the `<your-splunk-ao-api-url>/mcp/http/mcp` url with your deployment URL. The format of this URL is based on your URL, replacing `console` with `api` and appending `/mcp/http/mcp`.
      </Step>

      <Step title="Save and restart">
        Save the configuration and restart Cursor for the changes to take effect
      </Step>
    </Steps>
  </Tab>
</Tabs>

<Tip>
  The configuration is the same for both Cursor and VS Code. Make sure to replace `YOUR-API-KEY` with your actual Splunk Agent Observability API key from the **API keys** page in the UI.
</Tip>

## Verify your setup

Once configured, you can verify your MCP setup by asking your AI assistant
in your IDE:

<CodeGroup>
  ```text Example Query theme={null}
  Can you show me how to add Splunk Agent Observability logging to my agent bot?
  ```

  ```text Create Dataset Query theme={null}
  Help me create a synthetic dataset for customer support queries
  ```

  ```text Integration Query theme={null}
  How do I integrate Splunk Agent Observability with LangChain?
  ```
</CodeGroup>

Your AI assistant should now be able to access Splunk Agent Observability's capabilities and
respond with information from your Splunk Agent Observability account.

## Tools

The Splunk Agent Observability MCP server provides powerful tools that you can access through
natural conversation with your AI assistant. Simply ask questions or make
requests, and the AI will use these tools to help you.

<AccordionGroup>
  <Accordion title="Create Datasets">
    Generate synthetic datasets or upload your own data to test and evaluate your AI applications. The tool supports creating datasets with various types of queries including general queries, prompt injections, off-topic content, and toxic content scenarios.

    **What you can ask:**

    <CodeGroup>
      ```text Query wrap theme={null}
      Create a dataset with 50 customer service queries about billing issues
      ```
    </CodeGroup>

    <CodeGroup>
      ```text Query wrap theme={null}
      Generate a dataset of 30 chatbot queries, including some prompt injection attempts
      ```
    </CodeGroup>

    <CodeGroup>
      ```text Query wrap theme={null}
      Make a dataset with product recommendation queries and include off-topic questions
      ```
    </CodeGroup>
  </Accordion>

  <Accordion title="Check Dataset Status">
    Track the progress of your dataset generation and preview the generated content. You'll see the first 10 rows of data along with generation status and progress updates.

    **What you can ask:**

    <CodeGroup>
      ```text Query wrap theme={null}
      Check the status of my dataset that's currently generating
      ```
    </CodeGroup>

    <CodeGroup>
      ```text Query wrap theme={null}
      Show me the preview of dataset abc-123
      ```
    </CodeGroup>

    <CodeGroup>
      ```text Query wrap theme={null}
      Is my customer service dataset ready yet?
      ```
    </CodeGroup>
  </Accordion>

  <Accordion title="Create Prompt Templates">
    Build reusable prompt templates that you can use across all your projects. Set up model configurations, temperature settings, and other parameters for consistent prompt behavior.

    **What you can ask:**

    <CodeGroup>
      ```text Query wrap theme={null}
      Create a prompt template called "Friendly Assistant" for customer support responses
      ```
    </CodeGroup>

    <CodeGroup>
      ```text Query wrap theme={null}
      Make a prompt template for summarizing technical documentation with lower temperature
      ```
    </CodeGroup>

    <CodeGroup>
      ```text Query wrap theme={null}
      Set up a chat template for a code review assistant
      ```
    </CodeGroup>
  </Accordion>

  <Accordion title="Set Up Experiments">
    Get complete guidance on setting up and running Splunk Agent Observability experiments, including dataset preparation, evaluators configuration, and integration with your existing code. Available for Python and other supported languages.

    **What you can ask:**

    <CodeGroup>
      ```text Query wrap theme={null}
      How do I set up a Splunk Agent Observability experiment in Python?
      ```
    </CodeGroup>

    <CodeGroup>
      ```text Query wrap theme={null}
      Show me how to run an experiment with my RAG application
      ```
    </CodeGroup>

    <CodeGroup>
      ```text Query wrap theme={null}
      Guide me through creating an experiment for my agentic workflow
      ```
    </CodeGroup>
  </Accordion>

  <Accordion title="Get Signals">
    Analyze your application's Agent Streams to identify issues, patterns, and opportunities for improvement. Get specific recommendations based on your logged data.

    **What you can ask:**

    <CodeGroup>
      ```text Query wrap theme={null}
      What issues do you see in my production Agent Stream?
      ```
    </CodeGroup>

    <CodeGroup>
      ```text Query wrap theme={null}
      Fetch the most recent signals from Splunk Agent Observability and propose fixes for them in my code
      ```
    </CodeGroup>

    <CodeGroup>
      ```text Query wrap theme={null}
      Get insights about my chatbot Agent Stream and suggest improvements
      ```
    </CodeGroup>
  </Accordion>

  <Accordion title="Integrate with OpenAI">
    Get step-by-step integration guides for adding Splunk Agent Observability to your OpenAI applications. Automatically log prompts, responses, model parameters, and token usage with minimal code changes.

    **What you can ask:**

    <CodeGroup>
      ```text Query wrap theme={null}
      How do I add Splunk Agent Observability logging to my OpenAI application?
      ```
    </CodeGroup>

    <CodeGroup>
      ```text Query wrap theme={null}
      Show me how to integrate Splunk Agent Observability with OpenAI
      ```
    </CodeGroup>

    <CodeGroup>
      ```text Query wrap theme={null}
      Help me set up Splunk Agent Observability for my GPT-4 chatbot
      ```
    </CodeGroup>
  </Accordion>

  <Accordion title="Integrate with LangChain">
    Get complete integration instructions for adding Splunk Agent Observability to your LangChain applications. Capture full traces of your chains, agents, and tools with automatic logging.

    **What you can ask:**

    <CodeGroup>
      ```text Query wrap theme={null}
      How do I integrate Splunk Agent Observability with my LangChain application?
      ```
    </CodeGroup>

    <CodeGroup>
      ```text Query wrap theme={null}
      Show me how to add Splunk Agent Observability tracing to my LangChain agent
      ```
    </CodeGroup>

    <CodeGroup>
      ```text Query wrap theme={null}
      Help me log my LangChain RAG pipeline with Splunk Agent Observability
      ```
    </CodeGroup>
  </Accordion>

  <Accordion title="Search Documentation">
    Find relevant information, code examples, API references, and implementation guides across all Splunk Agent Observability documentation. Get direct links to the pages you need.

    **What you can ask:**

    <CodeGroup>
      ```text Query wrap theme={null}
      How do I set up data logging in Splunk Agent Observability?
      ```
    </CodeGroup>

    <CodeGroup>
      ```text Query wrap theme={null}
      Find documentation about custom evaluators
      ```
    </CodeGroup>

    <CodeGroup>
      ```text Query wrap theme={null}
      Search for examples of agentic AI evaluation
      ```
    </CodeGroup>
  </Accordion>
</AccordionGroup>

## Example use cases

### Create a synthetic dataset

Ask your AI assistant:

<CodeGroup>
  ```text Query wrap theme={null}
  Create a synthetic dataset with 20 customer service queries about product
  returns. Include both general queries and off-topic queries.
  ```
</CodeGroup>

The MCP server will guide you through the dataset creation process and
provide a dataset ID to track progress.

### Get integration help

Ask your AI assistant:

<CodeGroup>
  ```text Query wrap theme={null}
  How do I integrate Splunk Agent Observability with my LangChain application in Python?
  ```
</CodeGroup>

The MCP server will provide complete integration code examples and setup
instructions.

### Get Signals

Ask your AI assistant:

<CodeGroup>
  ```text Query wrap theme={null}
  Fetch the most recent signals from Splunk Agent Observability and propose fixes for them in my code
  ```
</CodeGroup>

The MCP server will analyze your Agent Stream and suggest improvements.

## Troubleshooting

<AccordionGroup>
  <Accordion title="Error connecting to Splunk Agent Observability MCP Server">
    * Check that the MCP server URL is set to `<your-splunk-ao-api-url>/mcp/http/mcp`
    * Ensure the `Accept` header is set to `text/event-stream`
    * Restart your IDE MCP connection after making configuration changes
  </Accordion>

  <Accordion title="API key errors">
    * Confirm your API key is properly set in the configuration
    * Check that your API key has not expired
    * Generate a new API key from the **API keys** page in the UI
  </Accordion>
</AccordionGroup>

## Next steps

<CardGroup cols={2}>
  <Card title="Log your first trace" icon="code" horizontal href="/getting-started/quickstart">
    Learn how to log your first trace with Splunk Agent Observability
  </Card>

  <Card title="Run your first experiment" icon="flask" horizontal href="/getting-started/experiments">
    Set up and run experiments to evaluate your AI applications
  </Card>

  <Card title="Explore integrations" icon="plug" horizontal href="/sdk-api/third-party-integrations/overview">
    Learn about Splunk Agent Observability integrations with third-party frameworks
  </Card>
</CardGroup>
