How to integrate New relic MCP with LlamaIndex

This guide walks you through connecting New relic to LlamaIndex using the Composio tool router. By the end, you'll have a working New relic agent that can list all alert policies for your account, create a new webhook alert channel, get all applications monitored in new relic through natural language commands. This guide will help you understand how to give your LlamaIndex agent real control over a New relic account through Composio's New relic MCP server. Before we dive in, let's take a quick look at the key ideas and tools involved.

New relic logoNew relic
Api Key

New Relic is a unified observability platform for monitoring apps, infrastructure, and customer experience. It helps teams troubleshoot issues faster and optimize performance across their stack.

158 Tools

Introduction

This guide walks you through connecting New relic to LlamaIndex using the Composio tool router. By the end, you'll have a working New relic agent that can list all alert policies for your account, create a new webhook alert channel, get all applications monitored in new relic through natural language commands.

This guide will help you understand how to give your LlamaIndex agent real control over a New relic account through Composio's New relic MCP server.

Before we dive in, let's take a quick look at the key ideas and tools involved.

Also integrate New relic with

TL;DR

Here's what you'll learn:
  • Set your OpenAI and Composio API keys
  • Install LlamaIndex and Composio packages
  • Create a Composio Tool Router session for New relic
  • Connect LlamaIndex to the New relic MCP server
  • Build a New relic-powered agent using LlamaIndex
  • Interact with New relic through natural language

What is LlamaIndex?

LlamaIndex is a data framework for building LLM applications. It provides tools for connecting LLMs to external data sources and services through agents and tools.

Key features include:

  • ReAct Agent: Reasoning and acting pattern for tool-using agents
  • MCP Tools: Native support for Model Context Protocol
  • Context Management: Maintain conversation context across interactions
  • Async Support: Built for async/await patterns

What is the New relic MCP server, and what's possible with it?

The New Relic MCP server is an implementation of the Model Context Protocol that connects your AI agent and assistants like Claude, Cursor, etc directly to your New Relic account. It provides structured and secure access to your observability data and alerting infrastructure, so your agent can perform actions like retrieving application metrics, managing alert policies, updating notification channels, and monitoring browser applications on your behalf.

  • Comprehensive alert policy management: Effortlessly create, update, or delete New Relic alert policies to keep your monitoring rules current and effective.
  • Alert notification channel control: Register new alert endpoints, update existing channels, or list all notification channels to optimize how your team receives important alerts.
  • Real-time application monitoring: Instantly retrieve a list of all monitored applications, filter them by name or host, and stay on top of your software stack’s health.
  • Browser application insights: List and filter browser applications to monitor user experience and catch frontend issues before they escalate.
  • Alert condition visibility: Fetch detailed alert conditions for specific policies, so you can audit or fine-tune how your system responds to incidents.

What is the Composio tool router, and how does it fit here?

What is Composio SDK?

Composio's Composio SDK helps agents find the right tools for a task at runtime. You can plug in multiple toolkits (like Gmail, HubSpot, and GitHub), and the agent will identify the relevant app and action to complete multi-step workflows. This can reduce token usage and improve the reliability of tool calls. Read more here: Getting started with Composio SDK

The tool router generates a secure MCP URL that your agents can access to perform actions.

How the Composio SDK works

The Composio SDK follows a three-phase workflow:

  1. Discovery: Searches for tools matching your task and returns relevant toolkits with their details.
  2. Authentication: Checks for active connections. If missing, creates an auth config and returns a connection URL via Auth Link.
  3. Execution: Executes the action using the authenticated connection.

Step-by-step Guide

Step by step10 STEPS
1

Prerequisites

Before you begin, make sure you have:
  • Python 3.8/Node 16 or higher installed
  • A Composio account with the API key
  • An OpenAI API key
  • A New relic account and project
  • Basic familiarity with async Python/Typescript
2

Getting API Keys for OpenAI, Composio, and New relic

OpenAI API key (OPENAI_API_KEY)
  • Go to the OpenAI dashboard
  • Create an API key if you don't have one
  • Assign it to OPENAI_API_KEY in .env
Composio API key and user ID
  • Log into the Composio dashboard
  • Copy your API key from Settings
    • Use this as COMPOSIO_API_KEY
  • Pick a stable user identifier (email or ID)
    • Use this as COMPOSIO_USER_ID
3

Installing dependencies

npm install @composio/llamaindex @llamaindex/openai @llamaindex/tools @llamaindex/workflow dotenv

Create a new Typescript project and install the necessary dependencies:

  • @composio/llamaindex: Composio's LlamaIndex integration
  • @llamaindex/openai: OpenAI LLM integration
  • @llamaindex/tools: MCP client for LlamaIndex
  • @llamaindex/workflow: Workflow framework for LlamaIndex
  • dotenv: Environment variable management
4

Set environment variables

bash
OPENAI_API_KEY=your-openai-api-key
COMPOSIO_API_KEY=your-composio-api-key
COMPOSIO_USER_ID=your-user-id

Create a .env file in your project root:

These credentials will be used to:

  • Authenticate with OpenAI's GPT-5 model
  • Connect to Composio's Tool Router
  • Identify your Composio user session for New relic access
5

Import modules

import "dotenv/config";
import readline from "node:readline/promises";
import { stdin as input, stdout as output } from "node:process";

import { Composio } from "@composio/core";

import { mcp } from "@llamaindex/tools";
import { agent as createAgent } from "@llamaindex/workflow";
import { openai } from "@llamaindex/openai";

dotenv.config();

Create a new file called new relic_llamaindex_agent.ts and import the required modules:

Key imports:

  • dotenv.config loads .env at runtime
  • readline gives us a simple CLI chat loop
  • Composio is the main Composio SDK client
  • mcp connects to an MCP endpoint
  • createAgent builds a LlamaIndex agent
  • openai configures the LLM backend
6

Load environment variables and initialize Composio

const OPENAI_API_KEY = process.env.OPENAI_API_KEY;
const COMPOSIO_API_KEY = process.env.COMPOSIO_API_KEY;
const COMPOSIO_USER_ID = process.env.COMPOSIO_USER_ID;

if (!OPENAI_API_KEY) throw new Error("OPENAI_API_KEY is not set");
if (!COMPOSIO_API_KEY) throw new Error("COMPOSIO_API_KEY is not set");
if (!COMPOSIO_USER_ID) throw new Error("COMPOSIO_USER_ID is not set");

What's happening:

This ensures missing credentials cause early, clear errors before the agent attempts to initialise.

7

Create a Tool Router session and build the agent function

async function buildAgent() {

  console.log(`Initializing Composio client...${COMPOSIO_USER_ID!}...`);
  console.log(`COMPOSIO_USER_ID: ${COMPOSIO_USER_ID!}...`);

  const composio = new Composio({
    apiKey: COMPOSIO_API_KEY,
    provider: new LlamaindexProvider(),
  });

  const session = await composio.create(
    COMPOSIO_USER_ID!,
    {
      toolkits: ["new_relic"],
    },
  );

  const mcpUrl = session.mcp.url;
  console.log(`Composio Tool Router MCP URL: ${mcpUrl}`);

  const server = mcp({
    url: mcpUrl,
    clientName: "composio_tool_router_with_llamaindex",
    requestInit: {
      headers: {
        "x-api-key": COMPOSIO_API_KEY!,
      },
    },
    // verbose: true,
  });

  const tools = await server.tools();

  const llm = openai({ apiKey: OPENAI_API_KEY, model: "gpt-5" });

  const agent = createAgent({
    name: "composio_tool_router_with_llamaindex",
        description : "An agent that uses Composio Tool Router MCP tools to perform actions.",
    systemPrompt:
      "You are a helpful assistant connected to Composio Tool Router."+
"Use the available tools to answer user queries and perform New relic actions." ,
    llm,
    tools,
  });

  return agent;
}

What's happening here:

  • We create a Composio client using your API key and configure it with the LlamaIndex provider
  • We then create a tool router MCP session for your user, specifying the toolkits we want to use (in this case, new relic)
  • The session returns an MCP HTTP endpoint URL that acts as a gateway to all your configured tools
  • LlamaIndex will connect to this endpoint to dynamically discover and use the available New relic tools.
  • The MCP tools are mapped to LlamaIndex-compatible tools and plug them into the Agent.
8

Create an interactive chat loop

async function chatLoop(agent: ReturnType<typeof createAgent>) {
  const rl = readline.createInterface({ input, output });

  console.log("Type 'quit' or 'exit' to stop.");

  while (true) {
    let userInput: string;

    try {
      userInput = (await rl.question("\nYou: ")).trim();
    } catch {
      console.log("\nAgent: Bye!");
      break;
    }

    if (!userInput) {
      continue;
    }

    const lower = userInput.toLowerCase();
    if (lower === "quit" || lower === "exit") {
      console.log("Agent: Bye!");
      break;
    }

    try {
      process.stdout.write("Agent: ");

      const stream = agent.runStream(userInput);
      let finalResult: any = null;

      for await (const event of stream) {
        // The event.data contains the streamed content
        const data: any = event.data;

        // Check for streaming delta content
        if (data?.delta) {
          process.stdout.write(data.delta);
        }

        // Store final result for fallback
        if (data?.result || data?.message) {
          finalResult = data;
        }
      }

      // If no streaming happened, show the final result
      if (finalResult) {
        const answer =
          finalResult.result ??
          finalResult.message?.content ??
          finalResult.message ??
          "";
        if (answer && typeof answer === "string" && !answer.includes("[object")) {
          process.stdout.write(answer);
        }
      }

      console.log(); // New line after streaming completes
    } catch (err: any) {
      console.error("\nAgent error:", err?.message ?? err);
    }
  }

  rl.close();
}

What's happening:

  • We're creating a direct terminal interface to chat with New relic
  • The LLM's responses are streamed to the CLI for faster interaction.
  • The agent uses context to maintain conversation history
  • The agent processes the request, selects appropriate New relic tools, and returns a result
  • We extract the answer from the result data structure and display it to the user
  • You can type 'quit' or 'exit' to stop the chat loop gracefully
  • Agent responses and any errors are streamed in a clear, readable format
9

Define the main entry point

async function main() {
  try {
    const agent = await buildAgent();
    await chatLoop(agent);
  } catch (err) {
    console.error("Failed to start agent:", err);
    process.exit(1);
  }
}

main();

What's happening here:

  • We're orchestrating the entire application flow
  • The agent gets built with proper error handling
  • Then we kick off the interactive chat loop so you can start talking to New relic
10

Run the agent

npx ts-node llamaindex-agent.ts

When prompted, authenticate and authorise your agent with New relic, then start asking questions.

Complete Code

Here's the complete code to get you started with New relic and LlamaIndex:

import "dotenv/config";
import readline from "node:readline/promises";
import { stdin as input, stdout as output } from "node:process";

import { Composio } from "@composio/core";
import { LlamaindexProvider } from "@composio/llamaindex";

import { mcp } from "@llamaindex/tools";
import { agent as createAgent } from "@llamaindex/workflow";
import { openai } from "@llamaindex/openai";

dotenv.config();

const OPENAI_API_KEY = process.env.OPENAI_API_KEY;
const COMPOSIO_API_KEY = process.env.COMPOSIO_API_KEY;
const COMPOSIO_USER_ID = process.env.COMPOSIO_USER_ID;

if (!OPENAI_API_KEY) {
    throw new Error("OPENAI_API_KEY is not set in the environment");
  }
if (!COMPOSIO_API_KEY) {
    throw new Error("COMPOSIO_API_KEY is not set in the environment");
  }
if (!COMPOSIO_USER_ID) {
    throw new Error("COMPOSIO_USER_ID is not set in the environment");
  }

async function buildAgent() {

  console.log(`Initializing Composio client...${COMPOSIO_USER_ID!}...`);
  console.log(`COMPOSIO_USER_ID: ${COMPOSIO_USER_ID!}...`);

  const composio = new Composio({
    apiKey: COMPOSIO_API_KEY,
    provider: new LlamaindexProvider(),
  });

  const session = await composio.create(
    COMPOSIO_USER_ID!,
    {
      toolkits: ["new_relic"],
    },
  );

  const mcpUrl = session.mcp.url;
  console.log(`Composio Tool Router MCP URL: ${mcpUrl}`);

  const server = mcp({
    url: mcpUrl,
    clientName: "composio_tool_router_with_llamaindex",
    requestInit: {
      headers: {
        "x-api-key": COMPOSIO_API_KEY!,
      },
    },
    // verbose: true,
  });

  const tools = await server.tools();

  const llm = openai({ apiKey: OPENAI_API_KEY, model: "gpt-5" });

  const agent = createAgent({
    name: "composio_tool_router_with_llamaindex",
    description:
      "An agent that uses Composio Tool Router MCP tools to perform actions.",
    systemPrompt:
      "You are a helpful assistant connected to Composio Tool Router."+
"Use the available tools to answer user queries and perform New relic actions." ,
    llm,
    tools,
  });

  return agent;
}

async function chatLoop(agent: ReturnType<typeof createAgent>) {
  const rl = readline.createInterface({ input, output });

  console.log("Type 'quit' or 'exit' to stop.");

  while (true) {
    let userInput: string;

    try {
      userInput = (await rl.question("\nYou: ")).trim();
    } catch {
      console.log("\nAgent: Bye!");
      break;
    }

    if (!userInput) {
      continue;
    }

    const lower = userInput.toLowerCase();
    if (lower === "quit" || lower === "exit") {
      console.log("Agent: Bye!");
      break;
    }

    try {
      process.stdout.write("Agent: ");

      const stream = agent.runStream(userInput);
      let finalResult: any = null;

      for await (const event of stream) {
        // The event.data contains the streamed content
        const data: any = event.data;

        // Check for streaming delta content
        if (data?.delta) {
          process.stdout.write(data.delta);
        }

        // Store final result for fallback
        if (data?.result || data?.message) {
          finalResult = data;
        }
      }

      // If no streaming happened, show the final result
      if (finalResult) {
        const answer =
          finalResult.result ??
          finalResult.message?.content ??
          finalResult.message ??
          "";
        if (answer && typeof answer === "string" && !answer.includes("[object")) {
          process.stdout.write(answer);
        }
      }

      console.log(); // New line after streaming completes
    } catch (err: any) {
      console.error("\nAgent error:", err?.message ?? err);
    }
  }

  rl.close();
}

async function main() {
  try {
    const agent = await buildAgent();
    await chatLoop(agent);
  } catch (err: any) {
    console.error("Failed to start agent:", err?.message ?? err);
    process.exit(1);
  }
}

main();

Conclusion

You've successfully connected New relic to LlamaIndex through Composio's Tool Router MCP layer. Key takeaways:
  • Tool Router dynamically exposes New relic tools through an MCP endpoint
  • LlamaIndex's ReActAgent handles reasoning and orchestration; Composio handles integrations
  • The agent becomes more capable without increasing prompt size
  • Async Python provides clean, efficient execution of agent workflows
You can easily extend this to other toolkits like Gmail, Notion, Stripe, GitHub, and more by adding them to the toolkits parameter.
TOOLS

Supported Tools

Every New relic action and event your agent gets out of the box.

Add Notification Channels to Policy

Tool to add notification channels to an alert policy using the NerdGraph GraphQL API.

Add Tags to Entity

Tool to add tags with values to a specific New Relic entity via NerdGraph GraphQL API.

Add Widgets to Dashboard Page

Tool to add widgets to an existing New Relic dashboard page via NerdGraph GraphQL API.

Configure Cloud Integration

Tool to enable and configure cloud integrations for monitoring in New Relic.

Create AI Notifications Channel

Tool to create a New Relic AI Notifications channel via NerdGraph GraphQL API.

Create AI Notifications Destination

Tool to create an AI notifications destination in New Relic for services like Jira or ServiceNow.

Create AI Workflow

Tool to create an AI workflow for automated incident response in New Relic.

Create Alert Notification Channel

Tool to create an alert notification channel.

Create Alert Policy

Creates a new alert policy in New Relic.

Create Static NRQL Alert Condition

Tool to create a static NRQL alert condition using New Relic's NerdGraph GraphQL API.

Create Alert Policy (GraphQL)

Tool to create a new alert policy using New Relic's NerdGraph GraphQL API.

Create API Access Keys

Tool to create New Relic API access keys using NerdGraph.

Create Broken Links Monitor

Tool to create a broken links monitor that scans a webpage for broken links.

Create Dashboard

Tool to create a New Relic dashboard using NerdGraph GraphQL API.

Create Dashboard Snapshot URL

Tool to create a snapshot URL for sharing a New Relic dashboard at a specific point in time.

Create Deployment Marker

Tool to record a deployment marker in New Relic to track changes and their effects on your systems.

Create Entity Relationship

Tool to create or replace a user-defined relationship between two New Relic entities via NerdGraph GraphQL API.

Create Example Browser Application

Tool to create a new browser application in New Relic via NerdGraph GraphQL API.

Create Example Mobile Application

Tool to create a new example mobile application in New Relic via NerdGraph GraphQL API.

Create External Service Alert Condition

Tool to create an external service alert condition in New Relic.

Create Infrastructure Alert Condition

Tool to create an infrastructure alert condition in New Relic.

Create Location Failure Alert Condition

Tool to create a location failure alert condition in New Relic.

Create Log Data Partition Rule

Tool to create a log data partition rule using New Relic's NerdGraph GraphQL API.

Create Lookup Table

Tool to upload a new lookup table to your New Relic account.

Create Metric Normalization Rule

Tool to create a metric normalization rule using New Relic's NerdGraph GraphQL API.

Create Synthetic Monitor

Tool to create a new synthetic monitor in New Relic for monitoring website or API availability.

Create NRQL Baseline Alert Condition

Tool to create a NRQL baseline alert condition in New Relic via NerdGraph GraphQL API.

Create NRQL Condition

Creates a new NRQL alert condition for a specified policy.

Create Scripted Monitor

Tool to create a scripted monitor in New Relic Synthetics using NerdGraph GraphQL API.

Create Secure Credential

Tool to add a secure credential to New Relic for use in synthetic monitors.

Create Service Level

Tool to create a service level indicator (SLI) and optional objectives (SLO) using New Relic's NerdGraph GraphQL API.

Create Synthetics Alert Condition

Tool to create a synthetics alert condition for monitoring synthetic checks.

Create Synthetics Private Location

Tool to create a Synthetics private location via New Relic's NerdGraph GraphQL API.

Create Synthetics Secure Credential

Tool to create a secure credential in New Relic Synthetics using NerdGraph GraphQL API.

Create Synthetics Simple Monitor

Tool to create a New Relic Synthetics simple (ping) monitor to check URL/endpoint accessibility.

Create User

Tool to create a new user in New Relic account via NerdGraph GraphQL API.

Delete Agent Application

Tool to delete an APM application entity via NerdGraph GraphQL API.

Delete AI notifications channel

Tool to delete an AI notifications channel via NerdGraph GraphQL API.

Delete AI Notifications Destination

Tool to delete an AI notifications destination via NerdGraph GraphQL API.

Delete Alert Channel

Tool to delete an alert notification channel via REST API.

Delete alert policy

Tool to delete an existing alert policy via REST API.

Delete alerts condition

Tool to delete an alert condition via NerdGraph GraphQL API.

Delete Alert Policy via GraphQL

Tool to delete an alert policy using New Relic's NerdGraph GraphQL API.

Delete API Access Keys

Tool to delete API access keys (ingest/license keys or user keys) via New Relic's NerdGraph GraphQL API.

Delete Dashboard

Tool to delete a New Relic dashboard using its entity GUID via NerdGraph GraphQL API.

Delete Data Partition Rule

Tool to delete a data partition rule via New Relic's NerdGraph GraphQL API.

Delete Entity

Tool to delete entities via New Relic's NerdGraph GraphQL API.

Delete Entity Relationship (User-Defined)

Tool to delete user-defined relationships between entities via New Relic's NerdGraph GraphQL API.

Delete External Service Condition

Tool to delete an external service alert condition in New Relic.

Delete Infrastructure Alert Condition

Tool to delete an infrastructure alert condition.

Delete Location Failure Alert Condition

Tool to delete a location failure alert condition via REST API.

Delete Lookup Table

Tool to delete a lookup table from New Relic.

Delete synthetic monitor

Tool to delete an existing synthetic monitor.

Delete NRQL Condition

Tool to delete a NRQL alert condition via REST API.

Remove channel from policy

Tool to remove a notification channel from an alert policy.

Delete Secure Credential

Tool to delete an existing secure credential from New Relic Synthetics.

Delete Synthetics Alert Condition

Tool to delete a synthetics alert condition.

Delete Synthetics Monitor (GraphQL)

Tool to delete a synthetic monitor using its GUID via New Relic's NerdGraph GraphQL API.

Delete Synthetics Private Location

Tool to delete a synthetics private location via New Relic's NerdGraph GraphQL API.

Delete Synthetics Secure Credential

Tool to delete a secure credential used in synthetic monitors via NerdGraph GraphQL API.

Delete Tag Values From Entity

Tool to delete specific tag values from a New Relic entity via NerdGraph GraphQL API.

Delete User Management User

Tool to delete a user via New Relic's NerdGraph User Management API.

Delete Workload

Tool to delete a workload from New Relic by its GUID using NerdGraph GraphQL API.

Disable Cloud Integration

Tool to disable (remove) a cloud integration in New Relic.

Disable Metric Normalization Rule

Tool to disable a metric normalization rule using New Relic's NerdGraph GraphQL API.

Duplicate Workload

Tool to duplicate an existing workload using New Relic's NerdGraph GraphQL API.

Edit Metric Normalization Rule

Tool to edit an existing metric normalization rule using New Relic's NerdGraph GraphQL API.

Enable Metric Normalization Rule

Tool to enable a previously disabled metric normalization rule using New Relic's NerdGraph GraphQL API.

Execute NRQL Query

Tool to execute NRQL queries to retrieve data from New Relic via NerdGraph GraphQL API.

Fetch Browser Configuration

Tool to fetch browser application configuration via New Relic's NerdGraph GraphQL API.

Fetch Browser JavaScript Snippet

Tool to fetch the JavaScript loader script snippet for a New Relic browser application.

Fetch Mobile Application Token

Tool to fetch mobile application token for a given mobile app entity GUID via New Relic's NerdGraph GraphQL API.

Fetch Rules Collection

Tool to fetch rules from a New Relic collection (Scorecard) via NerdGraph GraphQL API.

Fetch Your Organization ID

Tool to fetch your organization ID and name via New Relic's NerdGraph GraphQL API.

Get Alert Channels

Retrieves a paginated list of alert notification channels configured in your New Relic account.

Get Alert Conditions

Tool to retrieve alert conditions for a specified policy.

Get Alert Policies

Tool to retrieve a list of alert policies.

Get Alerts Violations

Tool to retrieve a list of alert violations from New Relic.

Get Applications

Tool to retrieve a list of New Relic applications.

Get App Metric Data

Tool to retrieve metric timeslice data for a New Relic application.

Get Application Metrics Names

Tool to retrieve a list of available metric names for a New Relic application.

Get Browser Applications

Tool to list New Relic browser applications.

Get Dashboard Entity Query

Tool to query detailed information about a New Relic dashboard entity using its GUID via NerdGraph GraphQL API.

Get Infrastructure Alert Condition

Tool to retrieve details for a specific infrastructure alert condition.

Get Lookup Table

Tool to download a lookup table that was previously uploaded to New Relic.

Get Mobile Application

Tool to retrieve details for a specific New Relic mobile application including crash count and crash rate.

Get Mobile Application Metrics

Tool to retrieve metric names for a New Relic mobile application.

Get Mobile Metric Data

Tool to retrieve metric data for a mobile application including crash count and crash rate.

Get Secure Credential

Tool to retrieve a specific secure credential by key from New Relic Synthetics.

Get Synthetic Monitor

Tool to retrieve details for a specific synthetic monitor by its ID.

Link Cloud Account

Tool to link cloud provider accounts (AWS, Azure, GCP) to your New Relic account for monitoring.

List Deployments

Tool to retrieve a list of all past deployments for a New Relic application.

List External Service Alert Conditions

Tool to retrieve a list of external service alert conditions for a specified policy.

List Infrastructure Alert Conditions

Tool to list infrastructure alert conditions for a specific policy.

List Key Transactions

Tool to retrieve a list of New Relic key transactions.

List Location Failure Alert Conditions

Tool to retrieve a list of location failure alert conditions for a specific policy.

List Synthetic Monitor Locations

Tool to retrieve the list of valid locations for synthetic monitors.

List Lookup Tables

Tool to list all lookup tables previously uploaded for an account.

List Mobile Applications

Tool to list all mobile applications in your New Relic account.

List Synthetic Monitors

Tool to retrieve a list of all synthetic monitors in your New Relic account.

List NRQL Alert Conditions

Tool to retrieve NRQL alert conditions for a specified policy.

List Secure Credentials

Tool to retrieve a list of all secure credentials in your New Relic account.

List Synthetics Alert Conditions

Tool to retrieve a list of synthetics alert conditions for a policy.

Override Entity Golden Metrics

Tool to override golden metrics or golden tags for a specific entity type in a New Relic account or workload.

Override Entity Golden Tags

Tool to override golden tags for entity types via New Relic's NerdGraph GraphQL API.

Patch Synthetic Monitor

Tool to partially update individual attributes of an existing synthetic monitor in New Relic.

Query Cloud Providers

Tool to query available cloud providers for a New Relic account.

Query Error

Tool to query error data from New Relic using NRQL (New Relic Query Language) via the NerdGraph GraphQL API.

Query Example Read Query

Tool to execute GraphQL read queries against New Relic's NerdGraph API.

Remove Entity from Alert Condition

Tool to remove an entity from an alert condition in New Relic.

Remove Notification Channels From Policy

Tool to remove notification channels from an alert policy via NerdGraph GraphQL API.

Rename Cloud Account

Tool to rename linked cloud provider accounts in New Relic via the NerdGraph GraphQL API.

Replace Tags On Entity

Tool to replace the entire set of tags on a New Relic entity with a new tag set via NerdGraph GraphQL API.

Reset Entity Golden Metrics

Tool to reset custom golden metrics and golden tags to New Relic defaults for an entity.

Reset Entity Golden Tags

Tool to reset golden tags for entities to their default values using New Relic's NerdGraph GraphQL API.

Revoke Authorization Access

Tool to revoke access grants with a data access policy in New Relic.

Search Entities

Tool to search for New Relic entities by attributes including name, type, domain, and other values using NerdGraph GraphQL API.

Send Events

Tool to send custom event data to New Relic's Event API.

Send Traces

Tool to send distributed tracing data to New Relic in New Relic format.

Test AI Notification Destination By ID

Tool to test an AI notification destination configuration by ID using New Relic NerdGraph API.

Test AI Notifications Channel

Tool to test an AI notifications channel via NerdGraph GraphQL API.

Test AI Notifications Destination

Tool to test AI notifications destinations via NerdGraph GraphQL API.

Test Notification Channel

Tool to test a New Relic AI notification channel by sending a test notification.

Undelete Dashboard

Tool to undelete a previously deleted dashboard via NerdGraph GraphQL API.

Update Account

Tool to update a New Relic account name via the NerdGraph GraphQL API.

Update Agent Application Settings

Tool to update APM agent application settings using New Relic's NerdGraph GraphQL API.

Update AI Notification Channel

Tool to update an AI notification channel via NerdGraph GraphQL API.

Update AI Notifications Destination

Tool to update an AI notifications destination via NerdGraph GraphQL API.

Update Alert Notification Channel

Tool to update an existing New Relic alert notification channel.

Update Alert Policy

Tool to update an existing alert policy via New Relic's NerdGraph GraphQL API.

Update Alert Policy (REST)

Tool to update an existing alert policy via New Relic's REST API v2.

Update API Access Keys

Tool to update API access keys (ingest/license keys or user keys) via New Relic's NerdGraph GraphQL API.

Update Browser Settings

Tool to update browser monitoring settings for a New Relic browser application via NerdGraph GraphQL mutation.

Update Cross-Account Elections

Tool to update cross-account alerting elections via New Relic's NerdGraph GraphQL API.

Update Dashboard

Tool to update an existing New Relic dashboard using its entity GUID via NerdGraph GraphQL API.

Update Dashboard Live URL Creation Policies

Tool to update dashboard live URL creation policies using New Relic's NerdGraph GraphQL API.

Update Dashboard Page

Tool to update a dashboard page in New Relic via NerdGraph GraphQL API.

Update Dashboard Widgets In Page

Tool to update widgets in a New Relic dashboard page via NerdGraph GraphQL API.

Update Data Partition Rule

Tool to update an existing log data partition rule in New Relic via NerdGraph GraphQL API.

Update External Service Condition

Tool to update an external service alert condition in New Relic.

Update Infrastructure Alert Condition

Tool to update an infrastructure alert condition in New Relic.

Update Location Failure Alert Condition

Tool to update a location failure alert condition in New Relic.

Update Lookup Table

Tool to replace an existing lookup table in your New Relic account.

Update Mobile Settings Example

Tool to update mobile application settings using New Relic's NerdGraph GraphQL API.

Update Monitor Script

Tool to update the script for a SCRIPT_BROWSER or SCRIPT_API synthetic monitor in New Relic.

Update NRQL Baseline Alert Condition

Tool to update a NRQL baseline alert condition in New Relic via the NerdGraph GraphQL API.

Update NRQL Condition

Tool to update an existing NRQL alert condition in New Relic.

Update NRQL Static Alert Condition

Tool to update a NRQL static alert condition via New Relic's NerdGraph GraphQL API.

Update Policy Channels

Tool to associate notification channels with an alert policy using the REST API v2.

Update Scripted Monitor

Tool to update a scripted synthetic monitor (browser or API) in New Relic using the NerdGraph GraphQL API.

Update Secure Credential

Tool to update an existing secure credential in New Relic Synthetics.

Update Service Level Indicator

Tool to update a Service Level Indicator (SLI) and its objectives via New Relic's NerdGraph GraphQL API.

Update Synthetics Alert Condition

Tool to update an existing synthetics alert condition.

Update Synthetics Simple Monitor

Tool to update an existing ping monitor configuration in New Relic Synthetics using NerdGraph GraphQL API.

Update Synthetic Monitor

Tool to fully update an existing synthetic monitor in New Relic using PUT method.

Update User

Tool to update user information in New Relic account via NerdGraph GraphQL API.

Update AI Workflow

Tool to update an existing New Relic AI workflow via NerdGraph GraphQL API.

Update Workload

Tool to update an existing workload configuration via New Relic's NerdGraph GraphQL API.

FAQ

Frequently asked questions

With a standalone New relic MCP server, the agents and LLMs can only access a fixed set of New relic tools tied to that server. However, with the Composio Tool Router, agents can dynamically load tools from New relic and many other apps based on the task at hand, all through a single MCP endpoint.

Yes, you can. LlamaIndex fully supports MCP integration. You get structured tool calling, message history handling, and model orchestration while Tool Router takes care of discovering and serving the right New relic tools.

Yes, absolutely. You can configure which New relic scopes and actions are allowed when connecting your account to Composio. You can also bring your own OAuth credentials or API configuration so you keep full control over what the agent can do.

All sensitive data such as tokens, keys, and configuration is fully encrypted at rest and in transit. Composio is SOC 2 Type 2 compliant and follows strict security practices so your New relic data and credentials are handled as safely as possible.

Start with New relic.It takes 30 seconds.

Managed auth, hosted MCP servers, and every New relic tool your agent needs.Free to start.

Start building