> ## Documentation Index
> Fetch the complete documentation index at: https://testwebmcp.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Get recent scans

> The 20 most recently scanned sites, each with its latest scan. Shows the hostname, never the scanned path.



## OpenAPI

````yaml /openapi.json get /scans/recent
openapi: 3.1.0
info:
  title: Test WebMCP API
  version: 1.0.0
  description: Scan public pages for WebMCP support. Free, no key. Limited per IP address.
servers:
  - url: https://testwebmcp.com/api/v1
security: []
paths:
  /scans/recent:
    get:
      summary: Get recent scans
      description: >-
        The 20 most recently scanned sites, each with its latest scan. Shows the
        hostname, never the scanned path.
      operationId: getRecentScans
      responses:
        '200':
          description: Recently scanned sites, newest first.
          content:
            application/json:
              schema:
                type: object
                required:
                  - scans
                properties:
                  scans:
                    type: array
                    items:
                      $ref: '#/components/schemas/SiteEntry'
        '429':
          $ref: '#/components/responses/RateLimited'
components:
  schemas:
    SiteEntry:
      type: object
      properties:
        host:
          type: string
          example: example.com
        score:
          type: number
          example: 94
        grade:
          type: string
          example: A
        tools:
          type: integer
          description: Tools registered.
          example: 4
        scanId:
          type: string
        reportUrl:
          type: string
        scannedAt:
          type: string
          format: date-time
    RateLimitError:
      type: object
      required:
        - error
        - retryAfterSeconds
        - resetAt
      properties:
        error:
          type: string
          example: >-
            The free limit is 1 scan per 24 hours per IP address, shared with
            the website.
        retryAfterSeconds:
          type: integer
          example: 86400
        retryAfterHuman:
          type: string
          example: 24 hours
        resetAt:
          type: string
          format: date-time
  responses:
    RateLimited:
      description: Rate limit reached. See **Limits**.
      headers:
        Retry-After:
          $ref: '#/components/headers/Retry-After'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RateLimitError'
  headers:
    Retry-After:
      description: Seconds to wait before retrying.
      schema:
        type: integer

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.