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キー
クロードデスクトップアプリケーション
インストール手順
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"プロジェクトの作成と設定:
# 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提供されたコードを使用してサーバー ファイル
newrelic_logs_server.pyを作成します。環境変数を設定します。
# 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.jsonWindows:
%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クエリの例
基本的なトランザクションクエリ:
SELECT * FROM Transaction SINCE 1 hour agoエラー分析:
SELECT * FROM Transaction WHERE error IS TRUE SINCE 1 hour ago LIMIT 10パフォーマンス分析:
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.logMCP Inspectorによるテスト
以下を使用してサーバーの機能をテストします。
npx @modelcontextprotocol/inspector uv run newrelic_logs_server.pyよくある問題
認証エラー:
NEW_RELIC_API_KEYが正しく設定されているか確認してください
APIキーに正しい権限があることを確認する
APIキーが有効であることを確認する
クエリ エラー:
NRQL構文を検証する
コード内のアカウントIDがあなたのアカウントと一致していることを確認してください
クエリされたデータが時間範囲内に存在することを確認する
接続の問題:
ネットワーク接続を確認する
GraphQLエンドポイントにアクセスできることを確認する
ファイアウォールが接続をブロックしていないことを確認する
セキュリティノート
APIキーをバージョン管理にコミットしない
機密データには環境変数を使用する
依存関係を最新の状態に保つ
クエリパターンとアクセスログを監視する
発達
ローカルテスト
環境変数を設定します。
export NEW_RELIC_API_KEY="your-api-key-here"
export NEW_RELIC_ACCOUNT_ID="your-account-id-here"サーバーを実行します。
uv run newrelic_logs_server.pyコード構造
サーバーは以下を実装します:
単一のNRQLクエリツール
設定可能なNew RelicアカウントID
包括的なエラー処理
詳細なログ記録
応答のフォーマット
変更のテスト
必要に応じてコードを変更する
MCP Inspectorでテストする
変更を適用するには、Claude Desktop を再起動してください。
トラブルシューティングガイド
サーバーが起動しません:
Pythonのバージョンを確認する
すべての依存関係がインストールされていることを確認する
仮想環境がアクティブになっていることを確認する
クエリが機能しない:
詳細なエラーメッセージについてはログを確認してください
NRQL構文を検証する
クエリされた時間範囲内にデータが存在することを確認する
クロードが接続していません:
設定ファイルの構文を確認する
パスが絶対パスであることを確認する
Claudeデスクトップを再起動します
貢献
リポジトリをフォークする
機能ブランチを作成する
プルリクエストを送信する
ライセンス
このプロジェクトは MIT ライセンスに基づいてライセンスされています。
サポート
問題が発生した場合:
ログを確認する
よくある問題のセクションを確認する
MCP Inspectorでテストする
GitHubで問題を報告する