newrelic-mcp 2.0.0 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +117 -19
- package/dist/client/newrelic-client.d.ts.map +1 -1
- package/dist/client/newrelic-client.js +12 -1
- package/dist/client/newrelic-client.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +10 -7
- package/dist/server.js.map +1 -1
- package/package.json +12 -1
package/README.md
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
# New Relic MCP Server
|
|
2
2
|
|
|
3
|
+
[](https://smithery.ai/server/@cloudbring/newrelic-mcp)
|
|
4
|
+
|
|
3
5
|
A Model Context Protocol (MCP) server that provides seamless integration with New Relic's observability platform. Query metrics, manage alerts, monitor applications, and interact with your entire observability stack through a simple, unified interface.
|
|
4
6
|
|
|
5
7
|
> **Disclaimer**: This is an unofficial community project and is not affiliated with, endorsed by, or supported by New Relic, Inc. All trademarks are the property of their respective owners.
|
|
@@ -12,17 +14,57 @@ A Model Context Protocol (MCP) server that provides seamless integration with Ne
|
|
|
12
14
|
- 🔍 **Entity Search** - Discover and inspect entities across your infrastructure
|
|
13
15
|
- 📈 **Synthetics Monitoring** - Manage synthetic monitors and checks
|
|
14
16
|
- 🔧 **NerdGraph API** - Direct access to New Relic's GraphQL API
|
|
17
|
+
- 🌐 **REST v2 Tools (2.0+)** - High‑value REST endpoints for deployments, APM apps, metrics, and alerts
|
|
15
18
|
|
|
16
19
|
## Installation
|
|
17
20
|
|
|
18
21
|
### Quick Install with Smithery
|
|
19
22
|
|
|
23
|
+
To install or deploy via Smithery, see the official docs: [Deployments](https://smithery.ai/docs/build/deployments), [Project Configuration](https://smithery.ai/docs/build/project-config), and [`smithery.yaml` Reference](https://smithery.ai/docs/build/project-config/smithery-yaml).
|
|
24
|
+
|
|
20
25
|
To install New Relic MCP for Claude Desktop automatically via [Smithery](https://smithery.ai/mcp/newrelic-mcp):
|
|
21
26
|
|
|
22
27
|
```bash
|
|
28
|
+
npx @smithery/cli install @cloudbring/newrelic-mcp --client claude
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
### Smithery CLI (recommended)
|
|
32
|
+
|
|
33
|
+
We recommend the Smithery CLI for local development, inspection, and deployment flows. Benefits:
|
|
34
|
+
|
|
35
|
+
- Unified dev/build/deploy workflow, client‑agnostic
|
|
36
|
+
- Dev server with hot‑reload and playground (optional tunnel)
|
|
37
|
+
- Build bundles for `stdio` or `shttp` transports
|
|
38
|
+
- Inspect a server interactively; run with supplied config
|
|
39
|
+
- Simple install per client
|
|
40
|
+
|
|
41
|
+
Examples:
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
# Hot‑reload dev server
|
|
45
|
+
npx @smithery/cli dev src/server.ts --port 8181 --no-open
|
|
46
|
+
|
|
47
|
+
# Build production bundle (shttp transport)
|
|
48
|
+
npx @smithery/cli build src/server.ts --out .smithery/index.cjs --transport shttp
|
|
49
|
+
|
|
50
|
+
# Inspect a published server
|
|
51
|
+
npx @smithery/cli inspect @cloudbring/newrelic-mcp
|
|
52
|
+
|
|
53
|
+
# Run with config (env via JSON)
|
|
54
|
+
npx @smithery/cli run @cloudbring/newrelic-mcp --config '{"NEW_RELIC_API_KEY":"...","NEW_RELIC_ACCOUNT_ID":"...","NEW_RELIC_REGION":"US"}'
|
|
55
|
+
|
|
56
|
+
# Install into a specific client
|
|
23
57
|
npx @smithery/cli install newrelic-mcp --client claude
|
|
58
|
+
|
|
59
|
+
# Open playground
|
|
60
|
+
npx @smithery/cli playground --port 3001
|
|
24
61
|
```
|
|
25
62
|
|
|
63
|
+
Notes:
|
|
64
|
+
|
|
65
|
+
- This repo includes a minimal `smithery.yaml` with `runtime: "typescript"` to align with TypeScript‑first deployments.
|
|
66
|
+
- See the CLI reference for all commands and flags: [smithery-ai/cli](https://github.com/smithery-ai/cli).
|
|
67
|
+
|
|
26
68
|
### Manual Installation
|
|
27
69
|
|
|
28
70
|
<details>
|
|
@@ -44,7 +86,8 @@ Add to your Claude Desktop configuration file:
|
|
|
44
86
|
],
|
|
45
87
|
"env": {
|
|
46
88
|
"NEW_RELIC_API_KEY": "your-api-key-here",
|
|
47
|
-
"NEW_RELIC_ACCOUNT_ID": "your-account-id"
|
|
89
|
+
"NEW_RELIC_ACCOUNT_ID": "your-account-id",
|
|
90
|
+
"NEW_RELIC_REGION": "US"
|
|
48
91
|
}
|
|
49
92
|
}
|
|
50
93
|
}
|
|
@@ -67,7 +110,8 @@ Add to your Cline settings in VS Code:
|
|
|
67
110
|
"args": ["-y", "newrelic-mcp"],
|
|
68
111
|
"env": {
|
|
69
112
|
"NEW_RELIC_API_KEY": "your-api-key-here",
|
|
70
|
-
"NEW_RELIC_ACCOUNT_ID": "your-account-id"
|
|
113
|
+
"NEW_RELIC_ACCOUNT_ID": "your-account-id",
|
|
114
|
+
"NEW_RELIC_REGION": "US"
|
|
71
115
|
}
|
|
72
116
|
}
|
|
73
117
|
]
|
|
@@ -115,7 +159,8 @@ Add to your Windsurf Cascade configuration:
|
|
|
115
159
|
"args": ["-y", "newrelic-mcp"],
|
|
116
160
|
"env": {
|
|
117
161
|
"NEW_RELIC_API_KEY": "your-api-key-here",
|
|
118
|
-
"NEW_RELIC_ACCOUNT_ID": "your-account-id"
|
|
162
|
+
"NEW_RELIC_ACCOUNT_ID": "your-account-id",
|
|
163
|
+
"NEW_RELIC_REGION": "US"
|
|
119
164
|
}
|
|
120
165
|
}
|
|
121
166
|
}
|
|
@@ -151,7 +196,8 @@ npm run build
|
|
|
151
196
|
"args": ["/path/to/newrelic-mcp/dist/server.js"],
|
|
152
197
|
"env": {
|
|
153
198
|
"NEW_RELIC_API_KEY": "your-api-key-here",
|
|
154
|
-
"NEW_RELIC_ACCOUNT_ID": "your-account-id"
|
|
199
|
+
"NEW_RELIC_ACCOUNT_ID": "your-account-id",
|
|
200
|
+
"NEW_RELIC_REGION": "US"
|
|
155
201
|
}
|
|
156
202
|
}
|
|
157
203
|
}
|
|
@@ -166,6 +212,7 @@ npm run build
|
|
|
166
212
|
|
|
167
213
|
- `NEW_RELIC_API_KEY` - Your New Relic User API Key (required)
|
|
168
214
|
- `NEW_RELIC_ACCOUNT_ID` - Your New Relic Account ID (optional, can be provided per tool call)
|
|
215
|
+
- `NEW_RELIC_REGION` - New Relic data center region: `US` (default) or `EU` (optional)
|
|
169
216
|
|
|
170
217
|
### Getting Your New Relic Credentials
|
|
171
218
|
|
|
@@ -178,6 +225,11 @@ npm run build
|
|
|
178
225
|
- Find your Account ID in the URL when logged into New Relic
|
|
179
226
|
- Or navigate to **Administration** → **Access management** → **Accounts**
|
|
180
227
|
|
|
228
|
+
3. **Region**:
|
|
229
|
+
- Set `NEW_RELIC_REGION=US` for US data center (default)
|
|
230
|
+
- Set `NEW_RELIC_REGION=EU` for EU data center
|
|
231
|
+
- If not specified, defaults to `US`
|
|
232
|
+
|
|
181
233
|
For detailed setup instructions, see [docs/new-relic-setup.md](docs/new-relic-setup.md).
|
|
182
234
|
|
|
183
235
|
## Usage Examples
|
|
@@ -216,21 +268,42 @@ Once configured, you can interact with New Relic through your MCP client:
|
|
|
216
268
|
"List all synthetic monitors and their success rates"
|
|
217
269
|
```
|
|
218
270
|
|
|
219
|
-
##
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
|
226
|
-
|
|
227
|
-
| `
|
|
228
|
-
| `
|
|
229
|
-
| `
|
|
230
|
-
| `
|
|
231
|
-
| `
|
|
232
|
-
| `
|
|
233
|
-
| `
|
|
271
|
+
## Tool Reference
|
|
272
|
+
|
|
273
|
+
Below is a concise catalog of all MCP tools exposed by this server. See the docs folder for detailed stories/specs.
|
|
274
|
+
|
|
275
|
+
### NerdGraph/GraphQL tools
|
|
276
|
+
|
|
277
|
+
| Tool | Summary |
|
|
278
|
+
|------|---------|
|
|
279
|
+
| `run_nrql_query` | Execute NRQL queries (requires `target_account_id`) |
|
|
280
|
+
| `run_nerdgraph_query` | Execute raw NerdGraph GraphQL queries |
|
|
281
|
+
| `list_apm_applications` | List APM applications via NerdGraph |
|
|
282
|
+
| `search_entities` | Search entities (name, type, tags) |
|
|
283
|
+
| `get_entity_details` | Fetch details for a GUID |
|
|
284
|
+
| `list_alert_policies` | List alert policies via NerdGraph |
|
|
285
|
+
| `list_open_incidents` | List open incidents via NerdGraph |
|
|
286
|
+
| `acknowledge_incident` | Acknowledge an incident (NerdGraph only) |
|
|
287
|
+
| `list_synthetics_monitors` | List Synthetics monitors |
|
|
288
|
+
| `create_browser_monitor` | Create a browser monitor |
|
|
289
|
+
| `get_account_details` | Fetch account metadata |
|
|
290
|
+
|
|
291
|
+
### REST v2 tools (added in v2.0)
|
|
292
|
+
|
|
293
|
+
| Tool | Summary | Notes |
|
|
294
|
+
|------|---------|-------|
|
|
295
|
+
| `create_deployment` | Create deployment marker for an APM application | Inputs: `application_id`, `revision`; optional `changelog`, `description`, `user`; supports `region` |
|
|
296
|
+
| `list_deployments_rest` | List deployments for an app | Supports `page`, `auto_paginate`, `region` |
|
|
297
|
+
| `delete_deployment` | Delete deployment marker | Requires `confirm: true`; User API key must have admin role permissions |
|
|
298
|
+
| `list_apm_applications_rest` | List APM apps via REST | Filters: `filter[name]`, `filter[host]`, `filter[ids]`, `filter[language]`; auto‑paginate |
|
|
299
|
+
| `list_metric_names_for_host` | List metric names/values for host | Inputs: `application_id`, `host_id`, optional `name`; auto‑paginate |
|
|
300
|
+
| `get_metric_data_for_host` | Get timeslice metric data for host | Inputs: `application_id`, `host_id`, `names[]`; optional `values[]`, `from`, `to`, `period`, `summarize`; auto‑paginate |
|
|
301
|
+
| `list_application_hosts` | List hosts for an APM app | Filters: `filter[hostname]`, `filter[ids]`; auto‑paginate |
|
|
302
|
+
| `list_alert_policies_rest` | List alert policies via REST | Optional `filter_name`; supports pagination |
|
|
303
|
+
| `list_open_incidents_rest` | List incidents via REST | Server has no `only_open`/`priority` filters; these are applied client‑side; auto‑paginate |
|
|
304
|
+
|
|
305
|
+
References:
|
|
306
|
+
- Detailed specs and schemas: `docs/REST_ENDPOINT_TOOL.md` and `docs/rest-tools-stories/*`
|
|
234
307
|
|
|
235
308
|
## Troubleshooting
|
|
236
309
|
|
|
@@ -241,6 +314,7 @@ If you're having trouble connecting:
|
|
|
241
314
|
|
|
242
315
|
1. Verify your API key is valid:
|
|
243
316
|
|
|
317
|
+
For US region:
|
|
244
318
|
```bash
|
|
245
319
|
curl -X POST https://api.newrelic.com/graphql \
|
|
246
320
|
-H 'Content-Type: application/json' \
|
|
@@ -248,6 +322,14 @@ If you're having trouble connecting:
|
|
|
248
322
|
-d '{"query":"{ actor { user { email } } }"}'
|
|
249
323
|
```
|
|
250
324
|
|
|
325
|
+
For EU region:
|
|
326
|
+
```bash
|
|
327
|
+
curl -X POST https://api.eu.newrelic.com/graphql \
|
|
328
|
+
-H 'Content-Type: application/json' \
|
|
329
|
+
-H 'API-Key: YOUR_API_KEY' \
|
|
330
|
+
-d '{"query":"{ actor { user { email } } }"}'
|
|
331
|
+
```
|
|
332
|
+
|
|
251
333
|
2. Check that your Account ID is correct
|
|
252
334
|
3. Ensure your API key has the necessary permissions
|
|
253
335
|
4. Check the MCP client logs for detailed error messages
|
|
@@ -306,6 +388,7 @@ npm install
|
|
|
306
388
|
```bash
|
|
307
389
|
NEW_RELIC_API_KEY=your-api-key-here
|
|
308
390
|
NEW_RELIC_ACCOUNT_ID=your-account-id
|
|
391
|
+
NEW_RELIC_REGION=US
|
|
309
392
|
```
|
|
310
393
|
|
|
311
394
|
4. Build the project:
|
|
@@ -426,6 +509,21 @@ This project uses:
|
|
|
426
509
|
- [MCP Inspector Setup](docs/mcp-inspector-setup.md) - Testing and debugging
|
|
427
510
|
- [Logging & Telemetry](docs/logging-telemetry.md) - Test monitoring
|
|
428
511
|
- [Implementation Details](docs/implementation.md) - Architecture deep dive
|
|
512
|
+
- [REST tools overview](docs/REST_ENDPOINT_TOOL.md) - High‑level design for REST v2 tools
|
|
513
|
+
- [REST tool stories](docs/rest-tools-stories/README.md) - Per‑tool specs, schemas, and test plans
|
|
514
|
+
|
|
515
|
+
## Comparisons
|
|
516
|
+
|
|
517
|
+
We researched other public New Relic MCP servers and did not find any actively maintained, feature‑complete alternatives at the time of writing. If you know of one, please open an issue to add it here.
|
|
518
|
+
|
|
519
|
+
| Project | Status | Transport(s) | Deployments | APM Apps | Metrics | Alerts | Synthetics | Notes |
|
|
520
|
+
|---------|--------|---------------|-------------|----------|---------|--------|-----------|-------|
|
|
521
|
+
| This project (newrelic-mcp) | Active | NerdGraph + REST v2 | Create/List/Delete | List (NerdGraph + REST) | Host names + timeslices (REST) | Policies + Incidents (NG + REST) | List/Create (browser) | Comprehensive tests and docs |
|
|
522
|
+
|
|
523
|
+
Planned enhancements (based on REST v2 catalog and user demand):
|
|
524
|
+
- Alerts: violations and conditions management via REST where available
|
|
525
|
+
- Metrics: broader app‑level metrics endpoints (names/data) beyond per‑host
|
|
526
|
+
- Additional REST coverage: labels, key transactions, mobile apps (prioritized by feedback)
|
|
429
527
|
|
|
430
528
|
## Support
|
|
431
529
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"newrelic-client.d.ts","sourceRoot":"","sources":["../../src/client/newrelic-client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"newrelic-client.d.ts","sourceRoot":"","sources":["../../src/client/newrelic-client.ts"],"names":[],"mappings":"AAsBA,KAAK,YAAY,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,CAAC;AAChE,KAAK,eAAe,CAAC,CAAC,IAAI;IAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IAAC,MAAM,CAAC,EAAE,YAAY,EAAE,CAAA;CAAE,CAAC;AAEhE,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACxC,QAAQ,EAAE;QACR,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;QACtB,UAAU,CAAC,EAAE;YACX,KAAK,EAAE,MAAM,CAAC;YACd,GAAG,EAAE,MAAM,CAAC;SACb,CAAC;QACF,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,UAAU,CAAC,EAAE,OAAO,CAAC;KACtB,CAAC;CACH;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,gBAAgB,CAAC,CAAS;gBAEtB,MAAM,CAAC,EAAE,MAAM,EAAE,gBAAgB,CAAC,EAAE,MAAM;IAKhD,mBAAmB,IAAI,OAAO,CAAC,OAAO,CAAC;IAqBvC,iBAAiB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IA8B9D,YAAY,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,eAAe,CAAC;IA2EnF,mBAAmB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAkExE,OAAO,CAAC,SAAS;IAaX,qBAAqB,CAAC,CAAC,GAAG,OAAO,EACrC,KAAK,EAAE,MAAM,EACb,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;CAwB/B"}
|
|
@@ -1,7 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.NewRelicClient = void 0;
|
|
4
|
-
|
|
4
|
+
/**
|
|
5
|
+
* Returns the appropriate NerdGraph API endpoint URL based on the specified region.
|
|
6
|
+
*
|
|
7
|
+
* @param region - The New Relic data center region ('US' or 'EU')
|
|
8
|
+
* @returns The NerdGraph GraphQL API endpoint URL for the specified region
|
|
9
|
+
*/
|
|
10
|
+
function getNerdGraphUrl(region) {
|
|
11
|
+
return region === 'EU'
|
|
12
|
+
? 'https://api.eu.newrelic.com/graphql'
|
|
13
|
+
: 'https://api.newrelic.com/graphql';
|
|
14
|
+
}
|
|
15
|
+
const NERDGRAPH_URL = getNerdGraphUrl(process.env.NEW_RELIC_REGION?.toUpperCase() || 'US');
|
|
5
16
|
class NewRelicClient {
|
|
6
17
|
apiKey;
|
|
7
18
|
defaultAccountId;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"newrelic-client.js","sourceRoot":"","sources":["../../src/client/newrelic-client.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"newrelic-client.js","sourceRoot":"","sources":["../../src/client/newrelic-client.ts"],"names":[],"mappings":";;;AAMA;;;;;GAKG;AACH,SAAS,eAAe,CAAC,MAAc;IACrC,OAAO,MAAM,KAAK,IAAI;QACpB,CAAC,CAAC,qCAAqC;QACvC,CAAC,CAAC,kCAAkC,CAAC;AACzC,CAAC;AAED,MAAM,aAAa,GAAG,eAAe,CAClC,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,WAAW,EAAa,IAAI,IAAI,CAChE,CAAC;AAiCF,MAAa,cAAc;IACjB,MAAM,CAAS;IACf,gBAAgB,CAAU;IAElC,YAAY,MAAe,EAAE,gBAAyB;QACpD,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,EAAE,CAAC;QAC5D,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,IAAI,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC;IAC/E,CAAC;IAED,KAAK,CAAC,mBAAmB;QACvB,IAAI,CAAC;YAEH,MAAM,KAAK,GAAG;;;;;;;QAOZ,CAAC;YAEH,MAAM,QAAQ,GAAG,CAAC,MAAM,IAAI,CAAC,qBAAqB,CAChD,KAAK,CACN,CAAkC,CAAC;YACpC,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC;QACtC,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YAChB,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,SAAkB;QACxC,MAAM,EAAE,GAAG,SAAS,IAAI,IAAI,CAAC,gBAAgB,CAAC;QAC9C,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACjD,CAAC;QAGD,MAAM,KAAK,GAAG;;sBAEI,EAAE;;;;;MAKlB,CAAC;QAEH,MAAM,QAAQ,GAAG,CAAC,MAAM,IAAI,CAAC,qBAAqB,CAChD,KAAK,CACN,CAAqC,CAAC;QAEvC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QAC7C,CAAC;QAED,OAAO;YACL,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE;YACzC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI;SACvC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAA2C;QAC5D,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACpD,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC1D,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;YACzD,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QAED,MAAM,KAAK,GAAG;;sBAEI,MAAM,CAAC,SAAS;yBACb,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;;;;;;;;;;;;;MAanD,CAAC;QAEH,IAAI,CAAC;YAeH,MAAM,QAAQ,GAAG,CAAC,MAAM,IAAI,CAAC,qBAAqB,CAChD,KAAK,CACN,CAAkC,CAAC;YAEpC,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACpB,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,mBAAmB,CAAC;gBACxE,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;YAChC,CAAC;YAED,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC;YAEvD,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;YACzD,CAAC;YAED,qCAAqC;YACrC,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;YAEtE,OAAO;gBACL,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,EAAE;gBACjC,QAAQ,EAAE;oBACR,GAAG,UAAU,CAAC,QAAQ;oBACtB,UAAU,EAAE,YAAY;iBACzB;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;gBACrE,MAAM,IAAI,KAAK,CAAC,sBAAsB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACzD,CAAC;YACD,MAAM,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,SAAkB;QAC1C,MAAM,EAAE,GAAG,SAAS,IAAI,IAAI,CAAC,gBAAgB,CAAC;QAC9C,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACjD,CAAC;QAED,MAAM,KAAK,GAAG;;wFAEsE,EAAE;;;;;;;;;;;;;;;;;;MAkBpF,CAAC;QAkBH,MAAM,QAAQ,GAAG,CAAC,MAAM,IAAI,CAAC,qBAAqB,CAChD,KAAK,CACN,CAA0C,CAAC;QAC5C,MAAM,QAAQ,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,IAAI,EAAE,CAO3E,CAAC;QAEH,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAC/B,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,SAAS;YACtC,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,KAAK;YACpC,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;SAClC,CAAC,CAAC,CAAC;IACN,CAAC;IAEO,SAAS,CAAC,IAAiD;QACjE,IAAI,CAAC,IAAI;YAAE,OAAO,EAAE,CAAC;QAErB,MAAM,MAAM,GAA2B,EAAE,CAAC;QAC1C,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACnB,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3D,IAAI,GAAG,CAAC,GAAG,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACjC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAW,CAAC;YACxC,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,qBAAqB,CACzB,KAAa,EACb,SAAmC;QAEnC,uCAAuC;QACvC,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACnE,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;QACvE,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,aAAa,EAAE;YAC1C,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,SAAS,EAAE,IAAI,CAAC,MAAM;aACvB;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;SAC3C,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBAC5B,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;YACnD,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,wBAAwB,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;QACpF,CAAC;QAED,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAuB,CAAC;IACvD,CAAC;CACF;AAjPD,wCAiPC"}
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";AAIA,OAAO,EAKL,KAAK,IAAI,EACV,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAW1D,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,KAAK,CAAoB;IACjC,OAAO,CAAC,gBAAgB,CAAC,CAAS;gBAEtB,MAAM,CAAC,EAAE,cAAc;IA4BnC,OAAO,CAAC,aAAa;IAmDrB,OAAO,CAAC,aAAa;IA8Bf,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";AAIA,OAAO,EAKL,KAAK,IAAI,EACV,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAW1D,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,KAAK,CAAoB;IACjC,OAAO,CAAC,gBAAgB,CAAC,CAAS;gBAEtB,MAAM,CAAC,EAAE,cAAc;IA4BnC,OAAO,CAAC,aAAa;IAmDrB,OAAO,CAAC,aAAa;IA8Bf,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAetB,WAAW,CACf,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE;QAAE,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,GAChF,OAAO,CAAC,OAAO,CAAC;IA2InB,OAAO,CAAC,iBAAiB;IAczB,WAAW;;;;;IAQX,kBAAkB,IAAI,MAAM,EAAE;IAI9B,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS;IAIvC,mBAAmB,IAAI,MAAM,GAAG,SAAS;CAG1C"}
|
package/dist/server.js
CHANGED
|
@@ -26,10 +26,10 @@ class NewRelicMCPServer {
|
|
|
26
26
|
this.client = client;
|
|
27
27
|
}
|
|
28
28
|
else {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
this.client = new newrelic_client_1.NewRelicClient(
|
|
29
|
+
// Best practice for Smithery tool discovery: do not force auth at startup
|
|
30
|
+
// Allow listing tools without credentials; validate when tools are invoked
|
|
31
|
+
const apiKey = process.env.NEW_RELIC_API_KEY || '';
|
|
32
|
+
this.client = new newrelic_client_1.NewRelicClient(apiKey, this.defaultAccountId);
|
|
33
33
|
}
|
|
34
34
|
this.server = new index_js_1.Server({
|
|
35
35
|
name: 'newrelic-mcp',
|
|
@@ -118,9 +118,12 @@ class NewRelicMCPServer {
|
|
|
118
118
|
});
|
|
119
119
|
}
|
|
120
120
|
async start() {
|
|
121
|
-
|
|
122
|
-
if (
|
|
123
|
-
|
|
121
|
+
// Only validate if credentials were provided; otherwise allow startup for tool discovery
|
|
122
|
+
if (process.env.NEW_RELIC_API_KEY) {
|
|
123
|
+
const isValid = await this.client.validateCredentials();
|
|
124
|
+
if (!isValid) {
|
|
125
|
+
throw new Error('Invalid New Relic API credentials');
|
|
126
|
+
}
|
|
124
127
|
}
|
|
125
128
|
const transport = new stdio_js_1.StdioServerTransport();
|
|
126
129
|
await this.server.connect(transport);
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";;;;AAEA,wEAAmE;AACnE,wEAAiF;AACjF,iEAM4C;AAC5C,8DAA0D;AAC1D,yCAA0C;AAC1C,qCAAsC;AACtC,2CAA4C;AAC5C,iDAAkD;AAClD,uCAAwC;AACxC,0CAA+C;AAC/C,0DAA+D;AAC/D,kDAAuD;AACvD,mDAAoD;AAEpD,MAAa,iBAAiB;IACpB,MAAM,CAAS;IACf,MAAM,CAAiB;IACvB,KAAK,CAAoB;IACzB,gBAAgB,CAAU;IAElC,YAAY,MAAuB;QACjC,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC;QACzD,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACvB,CAAC;aAAM,CAAC;YACN,
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,11 +1,19 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "newrelic-mcp",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.1.0",
|
|
4
4
|
"description": "Model Context Protocol server for New Relic observability platform integration",
|
|
5
|
+
"module": "./src/server.ts",
|
|
5
6
|
"main": "dist/server.js",
|
|
6
7
|
"bin": {
|
|
7
8
|
"newrelic-mcp": "./dist/server.js"
|
|
8
9
|
},
|
|
10
|
+
"engines": {
|
|
11
|
+
"node": ">=20"
|
|
12
|
+
},
|
|
13
|
+
"publishConfig": {
|
|
14
|
+
"access": "public",
|
|
15
|
+
"provenance": true
|
|
16
|
+
},
|
|
9
17
|
"files": [
|
|
10
18
|
"dist/",
|
|
11
19
|
"README.md",
|
|
@@ -28,6 +36,7 @@
|
|
|
28
36
|
"build": "tsc",
|
|
29
37
|
"dev": "tsx src/server.ts",
|
|
30
38
|
"start": "node dist/server.js",
|
|
39
|
+
"prepack": "npm run build",
|
|
31
40
|
"test": "vitest",
|
|
32
41
|
"test:watch": "vitest",
|
|
33
42
|
"test:ui": "vitest --ui",
|
|
@@ -44,6 +53,8 @@
|
|
|
44
53
|
"format:check": "npx ultracite lint",
|
|
45
54
|
"ai:test": "vitest --run",
|
|
46
55
|
"ai:test:watch": "vitest",
|
|
56
|
+
"ai:test:coverage": "vitest --coverage --run",
|
|
57
|
+
"ai:test:integration": "USE_REAL_ENV=true vitest --run",
|
|
47
58
|
"ai:lint": "biome lint --max-diagnostics=none --reporter=summary .",
|
|
48
59
|
"ai:check": "biome check --max-diagnostics=none --reporter=summary .",
|
|
49
60
|
"ai:ci": "biome ci --max-diagnostics=none --reporter=summary .",
|