Skip to main content
Glama
Ivlad003

New Relic MCP Server

by Ivlad003

New Relic MCP サーバー

NRQLクエリを使用してNew Relicログをクエリするためのシンプルなモデルコンテキストプロトコル(MCP)サーバー。このサーバーにより、Claudeなどの大規模言語モデル(LLM)がNew Relicデータとやり取りできるようになります。

特徴

  • NRQL を使用して New Relic のログとメトリクスをクエリする

  • 詳細なエラーログ

  • Claude Desktopとの簡単な統合

  • 人間が読める出力フォーマット

  • 設定可能なNew RelicアカウントID

Related MCP server: Linode MCP Server

セットアップ手順

前提条件

  • Python 3.10以上

  • New RelicアカウントとAPIキー

  • クロードデスクトップアプリケーション

インストール手順

  1. uvパッケージ マネージャーをインストールします。

# On macOS/Linux curl -LsSf https://astral.sh/uv/install.sh | sh # On Windows (PowerShell) powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
  1. プロジェクトの作成と設定:

# Create directory mkdir newrelic-mcp cd newrelic-mcp # Create virtual environment uv venv # Activate virtual environment source .venv/bin/activate # On Unix/macOS .venv\Scripts\activate # On Windows # Install dependencies uv pip install "mcp[cli]" httpx
  1. 提供されたコードを使用してサーバー ファイルnewrelic_logs_server.pyを作成します。

  2. 環境変数を設定します。

# On Unix/macOS export NEW_RELIC_API_KEY="your-api-key-here" export NEW_RELIC_ACCOUNT_ID="your-account-id-here" # On Windows (CMD) set NEW_RELIC_API_KEY=your-api-key-here set NEW_RELIC_ACCOUNT_ID=your-account-id-here # On Windows (PowerShell) $env:NEW_RELIC_API_KEY = "your-api-key-here" $env:NEW_RELIC_ACCOUNT_ID = "your-account-id-here"

クロードデスクトップ統合

構成ファイルを編集して Claude Desktop を構成します。

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

次の構成を追加します。

{ "mcpServers": { "newrelic": { "command": "uv", "args": [ "--directory", "/absolute/path/to/newrelic-mcp", "run", "newrelic_logs_server.py" ], "env": { "NEW_RELIC_API_KEY": "your-api-key-here", "NEW_RELIC_ACCOUNT_ID": "your-account-id-here" } } } }

使用法

NRQLクエリの例

  1. 基本的なトランザクションクエリ:

SELECT * FROM Transaction SINCE 1 hour ago
  1. エラー分析:

SELECT * FROM Transaction WHERE error IS TRUE SINCE 1 hour ago LIMIT 10
  1. パフォーマンス分析:

SELECT average(duration) FROM Transaction FACET name ORDER BY average(duration) DESC LIMIT 5

クロードのプロンプトの例

クロードに次のような質問をすることができます:

  • 「過去1時間のすべての取引を表示」

  • 「申請書に誤りはありますか?」

  • 「最も遅いエンドポイントは何ですか?」

デバッグ

ログの表示

# On macOS/Linux tail -f ~/Library/Logs/Claude/mcp-server-newrelic.log # On Windows type %APPDATA%\Claude\logs\mcp-server-newrelic.log

MCP Inspectorによるテスト

以下を使用してサーバーの機能をテストします。

npx @modelcontextprotocol/inspector uv run newrelic_logs_server.py

よくある問題

  1. 認証エラー:

  • NEW_RELIC_API_KEYが正しく設定されているか確認してください

  • APIキーに正しい権限があることを確認する

  • APIキーが有効であることを確認する

  1. クエリ エラー:

  • NRQL構文を検証する

  • コード内のアカウントIDがあなたのアカウントと一致していることを確認してください

  • クエリされたデータが時間範囲内に存在することを確認する

  1. 接続の問題:

  • ネットワーク接続を確認する

  • GraphQLエンドポイントにアクセスできることを確認する

  • ファイアウォールが接続をブロックしていないことを確認する

セキュリティノート

  • APIキーをバージョン管理にコミットしない

  • 機密データには環境変数を使用する

  • 依存関係を最新の状態に保つ

  • クエリパターンとアクセスログを監視する

発達

ローカルテスト

  1. 環境変数を設定します。

export NEW_RELIC_API_KEY="your-api-key-here" export NEW_RELIC_ACCOUNT_ID="your-account-id-here"
  1. サーバーを実行します。

uv run newrelic_logs_server.py

コード構造

サーバーは以下を実装します:

  • 単一のNRQLクエリツール

  • 設定可能なNew RelicアカウントID

  • 包括的なエラー処理

  • 詳細なログ記録

  • 応答のフォーマット

変更のテスト

  1. 必要に応じてコードを変更する

  2. MCP Inspectorでテストする

  3. 変更を適用するには、Claude Desktop を再起動してください。

トラブルシューティングガイド

  1. サーバーが起動しません:

  • Pythonのバージョンを確認する

  • すべての依存関係がインストールされていることを確認する

  • 仮想環境がアクティブになっていることを確認する

  1. クエリが機能しない:

  • 詳細なエラーメッセージについてはログを確認してください

  • NRQL構文を検証する

  • クエリされた時間範囲内にデータが存在することを確認する

  1. クロードが接続していません:

  • 設定ファイルの構文を確認する

  • パスが絶対パスであることを確認する

  • Claudeデスクトップを再起動します

貢献

  1. リポジトリをフォークする

  2. 機能ブランチを作成する

  3. プルリクエストを送信する

ライセンス

このプロジェクトは MIT ライセンスに基づいてライセンスされています。

サポート

問題が発生した場合:

  1. ログを確認する

  2. よくある問題のセクションを確認する

  3. MCP Inspectorでテストする

  4. GitHubで問題を報告する

-
security - not tested
F
license - not found
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Ivlad003/mcp_newrelic'

If you have feedback or need assistance with the MCP directory API, please join our Discord server