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

# Get Tool

> Return a single mock tool with its input/output pairs and the agents using it.



## OpenAPI

````yaml get /test_framework/v1/tools/{id}/
openapi: 3.1.0
info:
  title: Cekura API
  version: v1
  description: >-
    Complete API documentation for the Cekura platform. This API provides
    endpoints for testing, observing, and evaluating AI voice agents — including
    managing agents, running evaluators, defining metrics, and analyzing call
    quality.
servers:
  - url: https://api.cekura.ai
security: []
paths:
  /test_framework/v1/tools/{id}/:
    get:
      tags:
        - test_framework
      summary: Get one mock tool
      description: >-
        Return a single mock tool with its input/output pairs and the agents
        using it.
      operationId: tools-retrieve
      parameters:
        - in: path
          name: id
          schema:
            type: integer
          description: A unique integer value identifying this tool.
          required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Tool'
          description: ''
      security:
        - oauth2: []
        - supabase_session: []
        - api_key: []
components:
  schemas:
    Tool:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        name:
          type: string
          description: >-
            Name of the tool - must be less than 64 characters and contain only
            alphanumerics, underscores, hyphens, and spaces between words (no
            leading or trailing spaces)
          maxLength: 255
        description:
          type: string
          description: >

            Description of the mock tool.

            Example: "This tool retrieves user data from the database based on
            user ID"
        information:
          description: |

            Information of the tool - must be a list of input-output mappings.
            Example:
            ```json
            [
                {
                    "input": {"user_id": 1},
                    "output": {"name": "John Doe", "age": 30, "email": "john@example.com"}
                },
                {
                    "input": {"user_id": 2},
                    "output": {"name": "Jane Smith", "age": 25, "email": "jane@example.com"}
                }
            ]
            ```
        freetext_params:
          description: >-
            Parameter names skipped during mock matching because they are
            free-text (e.g. ["notes", "reason"])
        mock_url:
          type: string
          readOnly: true
          description: >-
            Per-tool webhook URL. None if this Tool is served through an MCP
            endpoint.
        served_via:
          type: string
          readOnly: true
          description: >-
            How this tool is accessed at runtime. `{'type': 'direct'}` for
            standalone tools; `{'type': 'mcp', 'mock_index': N, 'url':
            '.../mcp/N/', 'server_name': ...}` for MCP sub-tools.
        mcp_server:
          type: string
          readOnly: true
          description: >-
            MCP server this tool was fetched from, as `{'name', 'key'}`. Null
            for standalone (non-MCP) tools. Server-managed — ignored on writes.
        subscriber_count:
          type: string
          readOnly: true
          description: Number of agents in the project sharing this tool.
        is_shared:
          type: boolean
          readOnly: true
          description: >-
            True when more than one agent shares this tool. Edits and deletes
            affect every subscriber.
        subscribers:
          type: array
          items:
            type: object
            additionalProperties: {}
          readOnly: true
          description: >-
            Agents using this tool, so a caller can see who an edit would
            affect.
      required:
        - name
  securitySchemes:
    oauth2:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: OAuth access token issued by Cekura for connected apps.
    supabase_session:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Cekura dashboard session token. Not a customer API credential.
    api_key:
      type: apiKey
      in: header
      name: X-CEKURA-API-KEY
      description: >-
        API Key Authentication. It should be included in the header of each
        request.

````