---
title: "Get MCP server analytics"
method: GET
path: "/v1/projects/{projectId}/geo/traffic/mcp"
tags: ["GEO"]
---

# Get MCP server analytics

`GET /v1/projects/{projectId}/geo/traffic/mcp`

## Request

- Base URL: `https://api.usenotra.com`
- URL: `https://api.usenotra.com/v1/projects/{projectId}/geo/traffic/mcp`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/usenotra/apis/notra-api/docs/v1/projects/:projectId/geo/traffic/mcp/get.ts> (a function with typed inputs; its response is checked against the schema)

Usage of your own MCP server, as reported by the `@usenotra/geo` SDK: request and error totals against the previous window, per-tool latency and errors, clients, models, intents, recent failures and tools that were never called. Captured arguments, responses and end-user IDs are not returned.

## Path parameters

- `projectId` string, required

## Query parameters

- `days` integer: Rolling window size in days. Ignored when from/to are set.
- `from` string
- `to` string

## Response `200`

MCP analytics fetched successfully

- GeoMcpAnalyticsResponse
  - `configured` boolean, required: False when the traffic backend is not configured for this deployment; the payload is then empty rather than an error.
  - `server` object, nullable, required: Server info from the newest event. Null before any.
    - `name` string, required
    - `version` string, required
    - `protocolVersion` string, required
  - `totals` object, required
    - `requests` integer, required
    - `previousRequests` integer, required
    - `toolCalls` integer, required
    - `previousToolCalls` integer, required
    - `errors` integer, required
    - `previousErrors` integer, required
    - `sessions` integer, required
    - `previousSessions` integer, required
    - `users` integer, required
    - `previousUsers` integer, required
    - `p95Ms` integer, required
    - `previousP95Ms` integer, required
  - `daily` object[], required
    - `day` string, required
    - `toolsCall` integer, required
    - `resourcesRead` integer, required
    - `promptsGet` integer, required
    - `other` integer, required
    - `errors` integer, required
  - `tools` object[], required
    - `name` string, required
    - `description` string, required
    - `calls` integer, required
    - `errors` integer, required
    - `users` integer, required
    - `avgResponseBytes` integer, required
    - `p50Ms` integer, required
    - `p95Ms` integer, required
    - `uiResource` string, required
  - `clients` object[], required
    - `name` string, required
    - `sessions` integer, required
    - `requests` integer, required
    - `errors` integer, required
    - `lastSeenAt` string, required
  - `errorRequests` object[], required: Most recent failed requests, newest first.
    - `capturedAt` string, required
    - `clientName` string, required
    - `clientVersion` string, required
    - `method` string, required
    - `target` string, required
    - `status` 'ok' | 'tool_error' | 'rpc_error', required
    - `errorCode` integer, required
    - `errorMessage` string, required
    - `durationMs` integer, required
    - `model` string, required
  - `models` object[], required
    - `name` string, required
    - `sessions` integer, required
    - `calls` integer, required
    - `errors` integer, required
  - `intents` object[], required
    - `intent` string, required
    - `tool` string, required
    - `calls` integer, required
    - `errors` integer, required
  - `elicitations` object[], required
    - `method` string, required
    - `tool` string, required
    - `requests` integer, required
    - `accepted` integer, required
    - `declined` integer, required
    - `cancelled` integer, required
    - `errors` integer, required
  - `uiRenders` object[], required
    - `resource` string, required
    - `tools` string[], required
    - `renders` integer, required
    - `sessions` integer, required
    - `errors` integer, required
  - `catalog` object, nullable, required: Tools from the latest tools/list that were never called in the window. Null before a listing is seen.
    - `listedAt` string, required
    - `unusedTools` object[], required
      - `name` string, required
      - `description` string, required
  - `organization` object, required
    - `id` string, required
    - `slug` string, required
    - `name` string, required
    - `logo` string, nullable, required

## Other responses

- `400`: Invalid request
- `401`: Missing or invalid API key
- `402`: GEO plan or available AI credits required
- `403`: Forbidden
- `404`: Organization, project or resource not found
- `409`: Conflict
- `500`: Internal server error
- `503`: Authentication or billing service unavailable

## Changes

- **2026-11-05** `200d2ac38976`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/usenotra/apis/notra-api/changes/v1/projects/:projectId/geo/traffic/mcp/get.md)

---

[API](https://skmtc.dev/usenotra/apis/notra-api.md) - [All operations](https://skmtc.dev/usenotra/apis/notra-api/llms.txt) - [OpenAPI document](https://skmtc.dev/usenotra/apis/notra-api/revisions/023ef621fc96?raw)
