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

# Get a tool

> Returns detailed metadata for a tool within a service, including input and output schemas.



## OpenAPI

````yaml /cyrnel/openapi.json get /tools/{serviceId}/{toolId}
openapi: 3.0.0
info:
  title: Cyrnel API
  description: >-
    Cyrnel is a universal layer that connects AI agents and LLM applications to
    any external service, API, or device regardless of protocol or standard. It
    acts as an adaptive bridge between your AI and the outside world, enabling
    seamless integrations through code execution, async operation handling, and
    built-in observability and security controls.
  version: 1.0.0
servers:
  - url: http://localhost:9371
security: []
paths:
  /tools/{serviceId}/{toolId}:
    get:
      tags:
        - Tools
      summary: Get a tool
      description: >-
        Returns detailed metadata for a tool within a service, including input
        and output schemas.
      parameters:
        - schema:
            type: string
            minLength: 1
            description: Service identifier matching the installed manifest id.
          required: true
          description: Service identifier matching the installed manifest id.
          name: serviceId
          in: path
        - schema:
            type: string
            minLength: 1
            description: Tool identifier exposed by the service manifest.
          required: true
          description: Tool identifier exposed by the service manifest.
          name: toolId
          in: path
      responses:
        '200':
          description: Tool details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ToolDetails'
        '400':
          description: The serviceId or toolId path parameter was invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '401':
          description: A bearer token was required but missing or invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '404':
          description: The service or tool could not be found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '500':
          description: The tool details could not be loaded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
components:
  schemas:
    ToolDetails:
      type: object
      properties:
        id:
          type: string
          minLength: 1
          description: Tool identifier exposed by the service manifest.
        name:
          type: string
          minLength: 1
          description: Display name declared by the tool definition.
        description:
          type: string
          description: Human-readable tool description.
        enabled:
          type: boolean
          description: Whether the tool is enabled at the manifest level.
        effectivelyEnabled:
          type: boolean
          description: >-
            Whether the tool is callable after accounting for its parent service
            state.
        inputSchema:
          type: object
          additionalProperties:
            nullable: true
          description: JSON Schema describing the tool input payload.
        outputSchema:
          type: object
          additionalProperties:
            nullable: true
          description: JSON Schema describing the tool output payload.
      required:
        - id
        - name
        - description
        - enabled
        - effectivelyEnabled
        - inputSchema
        - outputSchema
      description: Detailed tool metadata returned by the tool detail endpoint.
    ApiErrorResponse:
      type: object
      properties:
        error:
          type: string
          description: Human-readable error message returned by the API.
      required:
        - error
      description: Standard error envelope returned by the HTTP error middleware.

````