OpenMetadata MCP Servers API

`MCP Servers` are Model Context Protocol servers that expose tools, resources, and prompts for AI applications. They enable AI governance including risk assessment, compliance tracking, and shadow AI detection.

Operations 16

PUT /v1/mcpServers/{id}/followers Add a follower #
GET /v1/mcpServers List MCP servers #
PUT /v1/mcpServers Create or update an MCP server #
POST /v1/mcpServers Create an MCP server #
GET /v1/mcpServers/name/{fqn} Get an MCP server by fully qualified name #
DELETE /v1/mcpServers/name/{fqn} Delete an MCP server by fully qualified name #
PATCH /v1/mcpServers/name/{fqn} Update an MCP server by name #
GET /v1/mcpServers/{id} Get an MCP server by Id #
DELETE /v1/mcpServers/{id} Delete an MCP server by Id #
PATCH /v1/mcpServers/{id} Update an MCP server #
DELETE /v1/mcpServers/async/{id} Asynchronously delete an MCP server by Id #
DELETE /v1/mcpServers/{id}/followers/{userId} Remove a follower #
GET /v1/mcpServers/{id}/versions/{version} Get a version of the MCP server #
GET /v1/mcpServers/history List all entity versions within a time range #
GET /v1/mcpServers/{id}/versions List MCP server versions #
PUT /v1/mcpServers/restore Restore a soft deleted MCP server #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/openmetadata-mcp-servers-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

openmetadata-mcp-servers-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: OpenMetadata APIs Agent Executions MCP Servers API
  description: Common types and API definition for OpenMetadata
  contact:
    name: OpenMetadata
    url: https://open-metadata.org
    email: openmetadata-dev@googlegroups.com
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
  version: '1.13'
servers:
- url: /api
  description: Current Host
- url: http://localhost:8585/api
  description: Endpoint URL
security:
- BearerAuth: []
tags:
- name: MCP Servers
  description: '`MCP Servers` are Model Context Protocol servers that expose tools, resources, and prompts for AI applications. They enable AI governance including risk assessment, compliance tracking, and shadow AI detection.'
paths:
  /v1/mcpServers/{id}/followers:
    put:
      tags:
      - MCP Servers
      summary: Add a follower
      description: Add a user identified by `userId` as follower of this MCP server
      operationId: addFollower_3
      parameters:
      - name: id
        in: path
        description: Id of the MCP Server
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        description: Id of the user to be added as follower
        content:
          application/json:
            schema:
              type: string
              format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChangeEvent'
        '404':
          description: MCP Server for instance {id} is not found
  /v1/mcpServers:
    get:
      tags:
      - MCP Servers
      summary: List MCP servers
      description: Get a list of MCP servers. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number of entries in the list using `limit` and `before` or `after` query params.
      operationId: listMcpServers
      parameters:
      - name: fields
        in: query
        description: Fields requested in the returned resource
        schema:
          type: string
          example: owners,followers,tags,extension,domains,tools,resources,prompts,service
      - name: limit
        in: query
        description: Limit the number of servers returned. (1 to 1000000, default = 10)
        schema:
          maximum: 1000000
          minimum: 0
          type: integer
          format: int32
          default: 10
      - name: before
        in: query
        description: Returns list of servers before this cursor
        schema:
          type: string
      - name: after
        in: query
        description: Returns list of servers after this cursor
        schema:
          type: string
      - name: include
        in: query
        description: Include all, deleted, or non-deleted entities.
        schema:
          type: string
          default: non-deleted
          enum:
          - all
          - deleted
          - non-deleted
      responses:
        '200':
          description: List of MCP servers
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/McpServerList'
    put:
      tags:
      - MCP Servers
      summary: Create or update an MCP server
      description: Create a new MCP server, if it does not exist or update an existing server.
      operationId: createOrUpdateMcpServer
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateMcpServer'
      responses:
        '200':
          description: The MCP server
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/McpServer'
        '400':
          description: Bad request
    post:
      tags:
      - MCP Servers
      summary: Create an MCP server
      description: Create a new MCP server.
      operationId: createMcpServer
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateMcpServer'
      responses:
        '200':
          description: MCP Server
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/McpServer'
        '400':
          description: Bad request
  /v1/mcpServers/name/{fqn}:
    get:
      tags:
      - MCP Servers
      summary: Get an MCP server by fully qualified name
      description: Get an MCP server by fully qualified name.
      operationId: getMcpServerByFQN
      parameters:
      - name: fqn
        in: path
        description: Fully qualified name of MCP Server
        required: true
        schema:
          type: string
      - name: fields
        in: query
        description: Fields requested in the returned resource
        schema:
          type: string
          example: owners,followers,tags,extension,domains,tools,resources,prompts,service
      - name: include
        in: query
        description: Include all, deleted, or non-deleted entities.
        schema:
          type: string
          default: non-deleted
          enum:
          - all
          - deleted
          - non-deleted
      - name: includeRelations
        in: query
        description: 'Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity''s include value.'
        schema:
          type: string
          example: owners:non-deleted,followers:all
      responses:
        '200':
          description: The MCP server
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/McpServer'
        '404':
          description: MCP Server for instance {fqn} is not found
    delete:
      tags:
      - MCP Servers
      summary: Delete an MCP server by fully qualified name
      description: Delete an MCP server by `fullyQualifiedName`.
      operationId: deleteMcpServerByFQN
      parameters:
      - name: hardDelete
        in: query
        description: Hard delete the entity. (Default = `false`)
        schema:
          type: boolean
          default: false
      - name: recursive
        in: query
        description: Recursively delete this entity and it's children. (Default `false`)
        schema:
          type: boolean
          default: false
      - name: fqn
        in: path
        description: Name of the MCP Server
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
        '404':
          description: MCP Server for instance {fqn} is not found
    patch:
      tags:
      - MCP Servers
      summary: Update an MCP server by name
      description: Update an existing MCP server using JsonPatch.
      externalDocs:
        description: JsonPatch RFC
        url: https://tools.ietf.org/html/rfc6902
      operationId: patchMcpServerByName
      parameters:
      - name: fqn
        in: path
        description: Name of the MCP Server
        required: true
        schema:
          type: string
      requestBody:
        description: JsonPatch with array of operations
        content:
          application/json-patch+json:
            schema:
              $ref: '#/components/schemas/JsonPatch'
            example: '[{op:remove, path:/a},{op:add, path: /b, value: val}]'
      responses:
        default:
          description: default response
          content:
            application/json: {}
  /v1/mcpServers/{id}:
    get:
      tags:
      - MCP Servers
      summary: Get an MCP server by Id
      description: Get an MCP server by `Id`.
      operationId: getMcpServerByID
      parameters:
      - name: id
        in: path
        description: Id of the MCP Server
        required: true
        schema:
          type: string
          format: uuid
      - name: fields
        in: query
        description: Fields requested in the returned resource
        schema:
          type: string
          example: owners,followers,tags,extension,domains,tools,resources,prompts,service
      - name: include
        in: query
        description: Include all, deleted, or non-deleted entities.
        schema:
          type: string
          default: non-deleted
          enum:
          - all
          - deleted
          - non-deleted
      - name: includeRelations
        in: query
        description: 'Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity''s include value.'
        schema:
          type: string
          example: owners:non-deleted,followers:all
      responses:
        '200':
          description: The MCP server
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/McpServer'
        '404':
          description: MCP Server for instance {id} is not found
    delete:
      tags:
      - MCP Servers
      summary: Delete an MCP server by Id
      description: Delete an MCP server by `Id`.
      operationId: deleteMcpServer
      parameters:
      - name: hardDelete
        in: query
        description: Hard delete the entity. (Default = `false`)
        schema:
          type: boolean
          default: false
      - name: recursive
        in: query
        description: Recursively delete this entity and it's children. (Default `false`)
        schema:
          type: boolean
          default: false
      - name: id
        in: path
        description: Id of the MCP Server
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
        '404':
          description: MCP Server for instance {id} is not found
    patch:
      tags:
      - MCP Servers
      summary: Update an MCP server
      description: Update an existing MCP server using JsonPatch.
      externalDocs:
        description: JsonPatch RFC
        url: https://tools.ietf.org/html/rfc6902
      operationId: patchMcpServer
      parameters:
      - name: id
        in: path
        description: Id of the MCP Server
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        description: JsonPatch with array of operations
        content:
          application/json-patch+json:
            schema:
              $ref: '#/components/schemas/JsonPatch'
            example: '[{op:remove, path:/a},{op:add, path: /b, value: val}]'
      responses:
        default:
          description: default response
          content:
            application/json: {}
  /v1/mcpServers/async/{id}:
    delete:
      tags:
      - MCP Servers
      summary: Asynchronously delete an MCP server by Id
      description: Asynchronously delete an MCP server by `Id`.
      operationId: deleteMcpServerAsync
      parameters:
      - name: hardDelete
        in: query
        description: Hard delete the entity. (Default = `false`)
        schema:
          type: boolean
          default: false
      - name: recursive
        in: query
        description: Recursively delete this entity and it's children. (Default `false`)
        schema:
          type: boolean
          default: false
      - name: id
        in: path
        description: Id of the MCP Server
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
        '404':
          description: MCP Server for instance {id} is not found
  /v1/mcpServers/{id}/followers/{userId}:
    delete:
      tags:
      - MCP Servers
      summary: Remove a follower
      description: Remove the user identified `userId` as a follower of the MCP server.
      operationId: deleteFollower_3
      parameters:
      - name: id
        in: path
        description: Id of the MCP Server
        required: true
        schema:
          type: string
          format: uuid
      - name: userId
        in: path
        description: Id of the user being removed as follower
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChangeEvent'
  /v1/mcpServers/{id}/versions/{version}:
    get:
      tags:
      - MCP Servers
      summary: Get a version of the MCP server
      description: Get a version of the MCP server by given `id`
      operationId: getSpecificMcpServerVersion
      parameters:
      - name: id
        in: path
        description: Id of the MCP Server
        required: true
        schema:
          type: string
          format: uuid
      - name: version
        in: path
        description: MCP Server version number in the form `major`.`minor`
        required: true
        schema:
          type: string
          example: 0.1 or 1.1
      responses:
        '200':
          description: McpServer
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/McpServer'
        '404':
          description: MCP Server for instance {id} and version {version} is not found
  /v1/mcpServers/history:
    get:
      tags:
      - MCP Servers
      summary: List all entity versions within a time range
      description: 'Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. '
      operationId: listAllEntityVersionsByTimestamp_3
      parameters:
      - name: startTs
        in: query
        description: Start timestamp in milliseconds since epoch
        required: true
        schema:
          type: integer
          format: int64
      - name: endTs
        in: query
        description: End timestamp in milliseconds since epoch
        required: true
        schema:
          type: integer
          format: int64
      - name: limit
        in: query
        description: Limit the number of entity returned (1 to 1000000, default = 10)
        schema:
          maximum: 500
          minimum: 1
          type: integer
          format: int32
          default: 10
      - name: before
        in: query
        description: Returns list of entity versions before this cursor
        schema:
          type: string
      - name: after
        in: query
        description: Returns list of entity versions after this cursor
        schema:
          type: string
      responses:
        '200':
          description: List of all versions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResultList'
  /v1/mcpServers/{id}/versions:
    get:
      tags:
      - MCP Servers
      summary: List MCP server versions
      description: Get a list of all the versions of an MCP Server identified by `id`
      operationId: listAllMcpServerVersions
      parameters:
      - name: id
        in: path
        description: Id of the MCP Server
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: List of MCP Server versions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EntityHistory'
  /v1/mcpServers/restore:
    put:
      tags:
      - MCP Servers
      summary: Restore a soft deleted MCP server
      description: Restore a soft deleted MCP server.
      operationId: restoreMcpServer
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RestoreEntity'
      responses:
        '200':
          description: Successfully restored the MCP Server
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/McpServer'
components:
  schemas:
    McpUsageMetrics:
      type: object
      properties:
        totalInvocations:
          type: integer
          format: int32
        successRate:
          type: number
          format: double
        averageLatencyMs:
          type: number
          format: double
        p95LatencyMs:
          type: number
          format: double
        lastInvokedAt:
          type: integer
          format: int64
        uniqueUsers:
          type: integer
          format: int32
        dailyActiveUsers:
          type: integer
          format: int32
    McpServerList:
      required:
      - data
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/McpServer'
        paging:
          $ref: '#/components/schemas/Paging'
        errors:
          type: array
          items:
            $ref: '#/components/schemas/EntityError'
        warningsCount:
          type: integer
          format: int32
        warnings:
          type: array
          items:
            $ref: '#/components/schemas/EntityError'
    McpResource:
      required:
      - name
      - uri
      type: object
      properties:
        name:
          type: string
        displayName:
          type: string
        description:
          type: string
        resourceType:
          type: string
          enum:
          - File
          - Directory
          - URL
          - Database
          - API
          - Blob
          - Stream
          - Document
          - Custom
        uri:
          type: string
        uriTemplate:
          type: string
        mimeType:
          type: string
        dataClassification:
          $ref: '#/components/schemas/DataClassification__1'
        accessLevel:
          type: string
          enum:
          - ReadOnly
          - ReadWrite
          - Full
        requiredPermissions:
          type: array
          items:
            type: string
        sourceEntity:
          $ref: '#/components/schemas/EntityReference'
        annotations:
          $ref: '#/components/schemas/Annotations__1'
        size:
          type: integer
          format: int32
        lastModified:
          type: integer
          format: int64
        accessCount:
          type: integer
          format: int32
        tags:
          type: array
          items:
            $ref: '#/components/schemas/TagLabel'
    InputSchema:
      type: object
    Verification:
      type: object
      properties:
        isVerified:
          type: boolean
        verifiedBy:
          type: string
        verifiedAt:
          type: integer
          format: int64
        verificationNotes:
          type: string
        certificateUrl:
          type: string
    AccessDetails:
      required:
      - timestamp
      type: object
      properties:
        timestamp:
          type: integer
          format: int64
        accessedBy:
          $ref: '#/components/schemas/EntityReference'
        accessedByAProcess:
          type: string
    McpPrompt:
      required:
      - name
      type: object
      properties:
        name:
          type: string
        displayName:
          type: string
        description:
          type: string
        promptType:
          type: string
          enum:
          - Analysis
          - Generation
          - Transformation
          - Validation
          - Query
          - Summarization
          - Extraction
          - Classification
          - Custom
        arguments:
          type: array
          items:
            $ref: '#/components/schemas/McpPromptArgument'
        messages:
          type: array
          items:
            $ref: '#/components/schemas/McpPromptMessage'
        examples:
          type: array
          items:
            $ref: '#/components/schemas/Example'
        dataAccessPatterns:
          type: array
          items:
            type: string
        outputClassification:
          $ref: '#/components/schemas/OutputClassification'
        usageCount:
          type: integer
          format: int32
        lastUsedAt:
          type: integer
          format: int64
        tags:
          type: array
          items:
            $ref: '#/components/schemas/TagLabel'
    HighRiskSystems:
      type: object
      properties:
        criticalInfrastructure:
          type: boolean
        educationVocationalTraining:
          type: boolean
        employment:
          type: boolean
        essentialPrivateServices:
          type: boolean
        essentialPublicServices:
          type: boolean
        lawEnforcement:
          type: boolean
        migrationAsylumBorderControl:
          type: boolean
        administrationOfJustice:
          type: boolean
    AICompliance:
      type: object
      properties:
        complianceRecords:
          type: array
          items:
            $ref: '#/components/schemas/AIComplianceRecord'
    McpSecurityMetrics:
      type: object
      properties:
        authenticationRequired:
          type: boolean
        authorizationEnforced:
          type: boolean
        auditLoggingEnabled:
          type: boolean
        encryptionInTransit:
          type: boolean
        sandboxed:
          type: boolean
        secretsManagement:
          type: string
    EntityHistory:
      required:
      - entityType
      - versions
      type: object
      properties:
        entityType:
          type: string
        versions:
          type: array
          items:
            type: object
    JsonPatch:
      type: object
    UsageDetails:
      required:
      - dailyStats
      - date
      type: object
      properties:
        dailyStats:
          $ref: '#/components/schemas/UsageStats'
        weeklyStats:
          $ref: '#/components/schemas/UsageStats'
        monthlyStats:
          $ref: '#/components/schemas/UsageStats'
        date:
          type: string
    ConformityAssessment:
      type: object
      properties:
        assessmentRequired:
          type: boolean
        assessmentType:
          type: string
          enum:
          - Internal
          - ThirdParty
          - NotRequired
        assessmentBody:
          type: string
        certificateNumber:
          type: string
        validUntil:
          type: integer
          format: int64
    McpGovernanceMetadata:
      type: object
      properties:
        registrationStatus:
          type: string
          enum:
          - Registered
          - Unregistered
          - PendingApproval
          - Approved
          - Rejected
        registeredBy:
          type: string
        registeredAt:
          type: integer
          format: int64
        approvedBy:
          type: string
        approvedAt:
          type: integer
          format: int64
        riskAssessment:
          $ref: '#/components/schemas/RiskAssessment__1'
        dataClassification:
          $ref: '#/components/schemas/DataClassification__2'
        governancePolicies:
          type: array
          items:
            $ref: '#/components/schemas/EntityReference'
        aiCompliance:
          $ref: '#/components/schemas/AICompliance'
        intakeNotes:
          type: string
        approvalComments:
          type: string
    TransparencyObligations:
      type: object
      properties:
        usersInformed:
          type: boolean
        deepfakeLabeling:
          type: boolean
        emotionRecognitionDisclosure:
          type: boolean
    AssetCertification:
      required:
      - appliedDate
      - expiryDate
      - tagLabel
      type: object
      properties:
        tagLabel:
          $ref: '#/components/schemas/TagLabel'
        appliedDate:
          type: integer
          format: int64
        expiryDate:
          type: integer
          format: int64
    Annotations__1:
      type: object
      properties:
        audience:
          type: array
          items:
            type: string
        priority:
          type: number
          format: double
    McpDataAccessSummary:
      type: object
      properties:
        dataSources:
          type: array
          items:
            $ref: '#/components/schemas/EntityReference'
        accessPatterns:
          type: array
          items:
            type: string
            enum:
            - Read
            - Write
            - Execute
        sensitivityLevel:
          type: string
          enum:
          - Public
          - Internal
          - Confidential
          - Restricted
        piiAccess:
          type: boolean
        externalApiAccess:
          type: boolean
        fileSystemAccess:
          type: boolean
        networkAccess:
          type: boolean
        databaseAccess:
          type: boolean
    McpConnectionConfig:
      type: object
      properties:
        command:
          type: string
        args:
          type: array
          items:
            type: string
        env:
          $ref: '#/components/schemas/Env'
        workingDirectory:
          type: string
        url:
          type: string
        timeout:
          type: integer
          format: int32
        retryAttempts:
          type: integer
          format: int32
    Env:
      type: object
    DataAccess__1:
      type: object
      properties:
        readsData:
          type: boolean
        writesData:
          type: boolean
        deletesData:
          type: boolean
        sensitivityLevel:
          type: string
          enum:
          - Public
          - Internal
          - Confidential
          - Restricted
        piiAccess:
          type: boolean
        dataTypes:
          type: array
          items:
            type: string
    PatternMatch:
      required:
      - name
      - score
      type: object
      properties:
        name:
          type: string
        regex:
          type: string
        score:
          type: number
          format: double
    AccountabilityMeasures:
      type: object
      properties:
        hasOwner:
          type: boolean
        subjectToHumanOversight:
          type: boolean
        auditTrailEnabled:
          type: boolean
    TagLabelRecognizerMetadata:
      required:
      - recognizerId
      - recognizerName
      - score
      type: object
      properties:
        recognizerId:
          type: string
          format: uuid
        recognizerName:
          type: string
        score:
          type: number
          format: double
        target:
          type: string
          enum:
          - content
          - column_name
        patterns:
          type: array
          items:
            $ref: '#/components/schemas/PatternMatch'
    Annotations:
      type: object
      properties:
        title:
          type: string
        readOnlyHint:
          type: boolean
        destructiveHint:
          type: boolean
        idempotentHint:
          type: boolean
        openWorldHint:
          type: boolean
    McpPromptMessage:
      required:
      - content
      - role
      type: object
      properties:
        role:
          type: string
          enum:
          - user
          - assistant
          - system
        content:
          type: string
    UsageStats:
      required:
      - count
      type: object
      properties:
        count:
          minimum: 0
          type: integer
          format: int32
        percentileRank:
          type: number
          format: double
    EthicalAIAssessment:
      type: object
      properties:
        privacyLevel:
          type: string
          enum:
          - Public
          - Sensitive
          - PersonalData
        fairnessRisk:
          type: string
          enum:
          - Low
          - Medium
          - High
        biasMitigationCoverage:
          type: string
          enum:
          - None
          - Partial
          - Full
        reliabilitySafetyRisk:
          type: string
          enum:
          - Low
          - Moderate
          - High
        transparencyLevel:
          type: string
          enum:
          - None
          - Partial
          - FullDisclosure
        accountabilityMeasures:
          $ref: '#/components/schemas/AccountabilityMeasures'
        environmentalConsciousness:
          type: string
          enum:
          - LowRisk
          - MediumRisk
          - HighRisk
    McpServerCapabilities:
      type: object
      properties:
        toolsSupported:
          type: boolean
        resourcesSupported:
          type: boolean
        promptsSupported:
          type: boolean
        loggingSupported:
          type: boolean
        samplingSupported:
          type: boolean
        rootsSupported:
          type: boolean
    Style:
      type: object
      properties:
        color:
          type: string
        iconURL:
          type: string
        coverImage:
          $ref: '#/components/schemas/CoverImage'
    Example:
      type: object
      properties:
        name:
          type: string
        arguments:
          $ref: '#/components/schemas/Arguments'
        expectedOutput:
          type: string
    RiskAssessment__1:
      type: object
      properties:
        riskLevel:
          type: string
          enum:
          - Low
          - Medium
          - High
          - Critical
        riskFactors:
          type: array
          items:
            type: string
        mitigations:
          type: array
          items:
            type: string
        assessedBy:
          type: string
        assessedAt:
          type: integer
          format: int64
    LifeCycle:
      type: object
      properties:
        created:
          $ref: '#/components/schemas/AccessDetails'
        updated:
          $ref: '#/components/schemas/AccessDetails'
        accessed:
          $ref: '#/components/schemas/AccessDetails'
    Votes:
      type: object
      properties:
        upVotes:
          type: integer
          format: int32
        downVotes:
          type: integer
          format: int32
        upVoters:
          type: array
          items:
            $ref: '#/components/schemas/EntityReference'
        downVoters:
          type: array
          items:
            $ref: '#/components/schemas/EntityReference'
    Arguments:
      type: object
    Paging:
      required:
      - total
      type: object
      properties:
        before:
          type: string
        after:
          type: string
        offset:
          type: integer
          format: int32
        limit:
          type: integer
          format: int32
        total:
          type: integer
          format: int32
    EntityReference:
      required:
      - id
      - type
      type: object
      properties:
        id:
          type: string
          format: uuid
        type:
          type: string
        name:
          type: string
        fullyQualifiedName:
          type: string
        description:
          type: string
        displayName:
          type: string
        deleted:
          type: boolean
        inherited:
          type: boolean
        href:
          type: string
          format: uri
    ProhibitedPractices:
      type: object
      properties:
        subliminalManipulativeTechniques:
          type: boolean
        exploitationOfVulnerabilities:
          type: boolean
        socialScoringSystem:
          type: boolean
        riskAssessmentCriminalOffences:
          type: boolean
        facialRecognitionDatabaseCreation:
          type: boolean
        emotionInferenceWorkplaceEducation:
          type: boolean
        biometricCategorisation:
          type: boolean
        realTimeBiometricIdentification:
          type: boolean
    McpTool:
      required:
      - name
      type: object
      properties:
        name:
          type: string
        displayName:
          type: string
        description:
          type: string
        toolCategory:
          type: string
          enum:
          - FileOperation
          - WebOperation
          - DataOperation
          - DatabaseOperation
          - SystemOperation
          - SecurityOperation
          - CommunicationOperation
          - CodeOperation
          - SearchOperation
          - Custom
        inputSchema:
          $ref: '#/components/schemas/InputSchema'
        outputSchema:
          $ref: '#/components/schemas/OutputSchema'
        riskLevel:
          type: string
          enum:
    

# --- truncated at 32 KB (48 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/openmetadata/refs/heads/main/openapi/openmetadata-mcp-servers-api-openapi.yml