---
title: "Get project MCP users with per-user safeguard insights"
method: GET
path: "/api/projects/{project-id}/safeguards/mcp/users"
tags: ["safeguards"]
---

# Get project MCP users with per-user safeguard insights

`GET /api/projects/{project-id}/safeguards/mcp/users`

## Request

- Base URL: `https://codescene.io` (the document declares no server; this is the origin it was published from)
- URL: `https://codescene.io/api/projects/{project-id}/safeguards/mcp/users`
- Auth: none declared

## Path parameters

- `project-id` integer, required

## Query parameters

- `page` integer
- `pageSize` integer
- `sortBy` 'lastEventDate' | 'latestMcpVersion' | 'name' | 'team' | 'commits' | 'adoptionStatus' | 'numberOfSafeguardChecks' | 'numberOfDegradationsPrevented' | 'numberOfUplifts'
- `sortOrder` 'asc' | 'desc'
- `period` 'weekly' | 'monthly'
- `through` string, date
- `cohort` 'no-account' | 'never-connected' | 'dormant' | 'active' | 'activated'

## Response `200`

- SafeguardsProjectMcpUsers
  - `page` integer, required
  - `maxPages` integer, required
  - `meta` object, required
    - `generatedAt` string, required
  - `users` object[], required
    - `identity` string, nullable, required
    - `userId` integer
    - `id` string
    - `name` string
    - `team` string, nullable
    - `commits` integer, nullable
    - `exDeveloper` boolean
    - `invitationStatus` 'pending' | 'accepted' | 'requested' | 'rejected' | 'not-invited': Invitation to the current organization. Omitted for registered accounts without an invitation record; developers without an account are not-invited.
    - `adoptionStatus` 'active' | 'no-account' | 'never-connected' | 'dormant'
    - `duplicates` string[]
    - `latestMcpVersion` string, nullable
    - `lastEventDate` string, date-time
    - `summary` object
      - `numberOfSafeguardChecks` integer, required
      - `numberOfUplifts` integer, required
      - `numberOfDegradationsPrevented` integer, required
      - `mostUsedTools` object[], required
        - `tool` string, required
        - `count` integer, required
    - `selectedPeriod` object
      - `from` string, date, required
      - `to` string, date, required
      - `summary` object, required
        - `numberOfSafeguardChecks` integer, required
        - `numberOfUplifts` integer, required
        - `numberOfDegradationsPrevented` integer, required
        - `mostUsedTools` object[], required
          - `tool` string, required
          - `count` integer, required
  - `totalCount` integer, required
  - `cohorts` object
    - `noAccount` integer, required
    - `neverConnected` integer, required
    - `dormant` integer, required
    - `active` integer, required
    - `activated` integer, required: Eligible event-backed MCP users: active plus dormant. All cohort counts omit excluded authors and are computed before cohort filtering and pagination.

## Other responses

- `400`
- `401`
- `403`
- `404`

---

[API](https://skmtc.dev/codescene/apis/codescene-api.md) · [All operations](https://skmtc.dev/codescene/apis/codescene-api/llms.txt) · [OpenAPI document](https://skmtc.dev/codescene/apis/codescene-api/revisions/e443e0b6bc89?raw)
