phpray

Ask an agent why a PHP site is slow: every request with its SQL, HTTP calls, errors and N+1.

使うべきか

品質と安全性

A
説明の品質
97%
スキーマの完全性
86%
命名の品質
80%
ポイズニングのリスク
100%
権限の一致
100%
プロトコルへの準拠
100%

検出事項(1)

  • LOWTool 'phpray_components' description lacks action verbphpray_components 内

ツール定義とプロトコルへの準拠に関する自動分析に基づいています。

コンテキストコスト

~1,077トークン数(ツール定義)
~767 B一般的なレスポンスサイズ
注意への影響は中程度(128k コンテキストの 0.84%)

これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。

インストール

ワンクリックインストール

これを `claude_desktop_config.json` ファイルに追加してください:

{
  "mcpServers": {
    "phpray": {
      "url": "https://phpray.dev/mcp"
    }
  }
}

リモートエンドポイント

https://phpray.dev/mcpstreamable-http

できること

ツール一覧

ツール(10)

🟢 読み取り専用🟡 書き込み🔴 削除⚪ 不明
🟢phpray_sites

List the PHP sites this token can see, with requests, p95 latency and error rate. Start here: every other tool needs a site_id from this list.

入力スキーマ

{
  "type": "object",
  "properties": {}
}
⚪phpray_overview(site_id, window_minutes)

Headline numbers for one site over a time window: requests, errors, p50/p95/p99 latency, database share and N+1 count. Use this before digging into anything else.

入力スキーマ

{
  "type": "object",
  "properties": {
    "site_id": {
      "description": "Site id from phpray_sites.",
      "type": "string"
    },
    "window_minutes": {
      "description": "How far back to look, in minutes. Default 60.",
      "type": "integer"
    }
  },
  "required": [
    "site_id"
  ]
}
⚪phpray_slow_pages(limit, site_id, window_minutes)

The slowest URLs on a site, with request counts and p95, from the request timeseries. Answers "which page is slow".

入力スキーマ

{
  "type": "object",
  "properties": {
    "limit": {
      "description": "How many URLs to return. Default 25.",
      "type": "integer"
    },
    "site_id": {
      "description": "Site id from phpray_sites.",
      "type": "string"
    },
    "window_minutes": {
      "description": "How far back to look. Default 1440.",
      "type": "integer"
    }
  },
  "required": [
    "site_id"
  ]
}
🟢phpray_slow_queries(limit, site_id, window_minutes)

SQL fingerprints ordered by time spent, with call counts and the caller when known. Literals are already masked. Answers "which query is slow".

入力スキーマ

{
  "type": "object",
  "properties": {
    "limit": {
      "description": "How many queries to return. Default 20.",
      "type": "integer"
    },
    "site_id": {
      "description": "Site id from phpray_sites.",
      "type": "string"
    },
    "window_minutes": {
      "description": "How far back to look. Default 1440.",
      "type": "integer"
    }
  },
  "required": [
    "site_id"
  ]
}
⚪phpray_components(limit, site_id, window_minutes)

Time attributed to each plugin, theme or vendor package on profiled requests. Answers "which plugin is slowing the site down". Empty when function profiling is off.

入力スキーマ

{
  "type": "object",
  "properties": {
    "limit": {
      "description": "How many components to return. Default 20.",
      "type": "integer"
    },
    "site_id": {
      "description": "Site id from phpray_sites.",
      "type": "string"
    },
    "window_minutes": {
      "description": "How far back to look. Default 1440.",
      "type": "integer"
    }
  },
  "required": [
    "site_id"
  ]
}
⚪phpray_errors(limit, site_id, window_minutes)

Requests that failed on a site: PHP errors and warnings with file and line where PHP raised one, plus 5xx responses that carry no PHP error. Pass an id to phpray_trace to see what one of them did.

入力スキーマ

{
  "type": "object",
  "properties": {
    "limit": {
      "description": "How many to return. Default 20.",
      "type": "integer"
    },
    "site_id": {
      "description": "Site id from phpray_sites.",
      "type": "string"
    },
    "window_minutes": {
      "description": "How far back to look. Default 1440.",
      "type": "integer"
    }
  },
  "required": [
    "site_id"
  ]
}
🟢phpray_traces(limit, min_ms, site_id, status, window_minutes)

Recent requests for a site. Filter with min_ms and status to find the bad ones, then pass an id to phpray_trace.

入力スキーマ

{
  "type": "object",
  "properties": {
    "limit": {
      "description": "How many to return. Default 50.",
      "type": "integer"
    },
    "min_ms": {
      "description": "Only requests slower than this.",
      "type": "integer"
    },
    "site_id": {
      "description": "Site id from phpray_sites.",
      "type": "string"
    },
    "status": {
      "description": "Only this HTTP status, e.g. 500.",
      "type": "integer"
    },
    "window_minutes": {
      "description": "How far back to look. Default 1440.",
      "type": "integer"
    }
  },
  "required": [
    "site_id"
  ]
}
⚪phpray_trace(trace_id)

One request in full: wall time split into PHP, database and outbound HTTP, every query, every external call, errors, and the component breakdown when the request was profiled.

入力スキーマ

{
  "type": "object",
  "properties": {
    "trace_id": {
      "description": "Trace id from phpray_traces.",
      "type": "string"
    }
  },
  "required": [
    "trace_id"
  ]
}
🟡phpray_compare(from_a, from_b, site_id, to_a, to_b)

Two time ranges for one site side by side. Use it to check whether a deployment, a plugin update or a configuration change made things better or worse.

入力スキーマ

{
  "type": "object",
  "properties": {
    "from_a": {
      "description": "Start of range A (the earlier one), unix seconds. Without any range: the day before yesterday's 24 h against the last 24 h.",
      "type": "integer"
    },
    "from_b": {
      "description": "Start of range B, unix seconds.",
      "type": "integer"
    },
    "site_id": {
      "description": "Site id from phpray_sites.",
      "type": "string"
    },
    "to_a": {
      "description": "End of range A, unix seconds.",
      "type": "integer"
    },
    "to_b": {
      "description": "End of range B, unix seconds.",
      "type": "integer"
    }
  },
  "required": [
    "site_id"
  ]
}
⚪phpray_alerts

Alerts currently firing across every site this token can see, worst overrun first.

入力スキーマ

{
  "type": "object",
  "properties": {}
}

コミュニティ

このサーバーを評価する

エビデンス

最近の観測

検証済みバージョンは記録されていませんツール 10 件
検証済みバージョンは記録されていませんツール 10 件