Microsoft Azure · Capability

Microsoft Azure SearchIndexClient — Documents

Microsoft Azure SearchIndexClient — Documents. 9 operations. Lead operation: Microsoft Azure Get Docs. Self-contained Naftiko capability covering one Microsoft Azure business surface.

Run with Naftiko Microsoft AzureDocuments

What You Can Do

GET
Microsoftazuredocumentssearchget — Microsoft Azure Get Docs
/v1/docs
GET
Microsoftazuredocumentsget — Microsoft Azure Get Docs Key
/v1/docs-key
GET
Microsoftazuredocumentscount — Microsoft Azure Get Docs $count
/v1/docs/count
GET
Microsoftazuredocumentsautocompleteget — Microsoft Azure Get Docs Search Autocomplete
/v1/docs/search-autocomplete
POST
Microsoftazuredocumentsindex — Microsoft Azure Post Docs Search Index
/v1/docs/search-index
POST
Microsoftazuredocumentsautocompletepost — Microsoft Azure Post Docs Search Post Autocomplete
/v1/docs/search-post-autocomplete
POST
Microsoftazuredocumentssearchpost — Microsoft Azure Post Docs Search Post Search
/v1/docs/search-post-search
POST
Microsoftazuredocumentssuggestpost — Microsoft Azure Post Docs Search Post Suggest
/v1/docs/search-post-suggest
GET
Microsoftazuredocumentssuggestget — Microsoft Azure Get Docs Search Suggest
/v1/docs/search-suggest

MCP Tools

microsoft-azure-get-docs

Microsoft Azure Get Docs

read-only idempotent
microsoft-azure-get-docs-key

Microsoft Azure Get Docs Key

read-only idempotent
microsoft-azure-get-docs-count

Microsoft Azure Get Docs $count

read-only idempotent
microsoft-azure-get-docs-search

Microsoft Azure Get Docs Search Autocomplete

read-only idempotent
microsoft-azure-post-docs-search

Microsoft Azure Post Docs Search Index

read-only
microsoft-azure-post-docs-search-2

Microsoft Azure Post Docs Search Post Autocomplete

read-only
microsoft-azure-post-docs-search-3

Microsoft Azure Post Docs Search Post Search

read-only
microsoft-azure-post-docs-search-4

Microsoft Azure Post Docs Search Post Suggest

read-only
microsoft-azure-get-docs-search-2

Microsoft Azure Get Docs Search Suggest

read-only idempotent

Capability Spec

searchindexclient-documents.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Microsoft Azure SearchIndexClient — Documents
  description: 'Microsoft Azure SearchIndexClient — Documents. 9 operations. Lead operation: Microsoft Azure Get Docs. Self-contained
    Naftiko capability covering one Microsoft Azure business surface.'
  tags:
  - Microsoft Azure
  - Documents
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    MICROSOFT_AZURE_API_KEY: MICROSOFT_AZURE_API_KEY
capability:
  consumes:
  - type: http
    namespace: searchindexclient-documents
    baseUri: ''
    description: Microsoft Azure SearchIndexClient — Documents business capability. Self-contained, no shared references.
    resources:
    - name: docs
      path: /docs
      operations:
      - name: microsoftazuredocumentssearchget
        method: GET
        description: Microsoft Azure Get Docs
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: search
          in: query
          type: string
          description: A full-text search query expression; Use "*" or omit this parameter to match all documents.
        - name: $count
          in: query
          type: boolean
          description: A value that specifies whether to fetch the total count of results. Default is false. Setting this
            value to true may have a performance impact. Note that the co
        - name: facet
          in: query
          type: array
          description: The list of facet expressions to apply to the search query. Each facet expression contains a field
            name, optionally followed by a comma-separated list of name:v
        - name: $filter
          in: query
          type: string
          description: The OData $filter expression to apply to the search query.
        - name: highlight
          in: query
          type: array
          description: The list of field names to use for hit highlights. Only searchable fields can be used for hit highlighting.
        - name: highlightPostTag
          in: query
          type: string
          description: A string tag that is appended to hit highlights. Must be set with highlightPreTag. Default is </em>.
        - name: highlightPreTag
          in: query
          type: string
          description: A string tag that is prepended to hit highlights. Must be set with highlightPostTag. Default is <em>.
        - name: minimumCoverage
          in: query
          type: number
          description: A number between 0 and 100 indicating the percentage of the index that must be covered by a search
            query in order for the query to be reported as a success. Thi
        - name: $orderby
          in: query
          type: array
          description: The list of OData $orderby expressions by which to sort the results. Each expression can be either
            a field name or a call to either the geo.distance() or the se
        - name: queryType
          in: query
          type: string
          description: A value that specifies the syntax of the search query. The default is 'simple'. Use 'full' if your
            query uses the Lucene query syntax.
        - name: scoringParameter
          in: query
          type: array
          description: The list of parameter values to be used in scoring functions (for example, referencePointParameter)
            using the format name-values. For example, if the scoring pr
        - name: scoringProfile
          in: query
          type: string
          description: The name of a scoring profile to evaluate match scores for matching documents in order to sort the
            results.
        - name: searchFields
          in: query
          type: array
          description: The list of field names to include in the full-text search.
        - name: searchMode
          in: query
          type: string
          description: A value that specifies whether any or all of the search terms must be matched in order to count the
            document as a match.
        - name: $select
          in: query
          type: array
          description: The list of fields to retrieve. If unspecified, all fields marked as retrievable in the schema are
            included.
        - name: $skip
          in: query
          type: integer
          description: The number of search results to skip. This value cannot be greater than 100,000. If you need to scan
            documents in sequence, but cannot use $skip due to this lim
        - name: $top
          in: query
          type: integer
          description: The number of search results to retrieve. This can be used in conjunction with $skip to implement client-side
            paging of search results. If results are truncated
    - name: docs('{key}')
      path: /docs('{key}')
      operations:
      - name: microsoftazuredocumentsget
        method: GET
        description: Microsoft Azure Get Docs Key
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: key
          in: path
          type: string
          description: The key of the document to retrieve.
          required: true
        - name: $select
          in: query
          type: array
          description: List of field names to retrieve for the document; Any field not retrieved will be missing from the
            returned document.
    - name: docs-$count
      path: /docs/$count
      operations:
      - name: microsoftazuredocumentscount
        method: GET
        description: Microsoft Azure Get Docs $count
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: docs-search.autocomplete
      path: /docs/search.autocomplete
      operations:
      - name: microsoftazuredocumentsautocompleteget
        method: GET
        description: Microsoft Azure Get Docs Search Autocomplete
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: search
          in: query
          type: string
          description: The incomplete term which should be auto-completed.
          required: true
        - name: suggesterName
          in: query
          type: string
          description: The name of the suggester as specified in the suggesters collection that's part of the index definition.
          required: true
        - name: autocompleteMode
          in: query
          type: string
          description: Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms' to get shingles and 'oneTermWithContext'
            to use the current context while producin
        - name: $filter
          in: query
          type: string
          description: An OData expression that filters the documents used to produce completed terms for the Autocomplete
            result.
        - name: fuzzy
          in: query
          type: boolean
          description: A value indicating whether to use fuzzy matching for the autocomplete query. Default is false. When
            set to true, the query will find terms even if there's a sub
        - name: highlightPostTag
          in: query
          type: string
          description: A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit
            highlighting is disabled.
        - name: highlightPreTag
          in: query
          type: string
          description: A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit
            highlighting is disabled.
        - name: minimumCoverage
          in: query
          type: number
          description: A number between 0 and 100 indicating the percentage of the index that must be covered by an autocomplete
            query in order for the query to be reported as a succe
        - name: searchFields
          in: query
          type: array
          description: The list of field names to consider when querying for auto-completed terms. Target fields must be included
            in the specified suggester.
        - name: $top
          in: query
          type: integer
          description: The number of auto-completed terms to retrieve. This must be a value between 1 and 100. The default
            is 5.
    - name: docs-search.index
      path: /docs/search.index
      operations:
      - name: microsoftazuredocumentsindex
        method: POST
        description: Microsoft Azure Post Docs Search Index
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: batch
          in: body
          type: string
          description: The batch of index actions.
          required: true
    - name: docs-search.post.autocomplete
      path: /docs/search.post.autocomplete
      operations:
      - name: microsoftazuredocumentsautocompletepost
        method: POST
        description: Microsoft Azure Post Docs Search Post Autocomplete
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: autocompleteRequest
          in: body
          type: string
          description: The definition of the Autocomplete request.
          required: true
    - name: docs-search.post.search
      path: /docs/search.post.search
      operations:
      - name: microsoftazuredocumentssearchpost
        method: POST
        description: Microsoft Azure Post Docs Search Post Search
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: searchRequest
          in: body
          type: string
          description: The definition of the Search request.
          required: true
    - name: docs-search.post.suggest
      path: /docs/search.post.suggest
      operations:
      - name: microsoftazuredocumentssuggestpost
        method: POST
        description: Microsoft Azure Post Docs Search Post Suggest
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: suggestRequest
          in: body
          type: string
          description: The Suggest request.
          required: true
    - name: docs-search.suggest
      path: /docs/search.suggest
      operations:
      - name: microsoftazuredocumentssuggestget
        method: GET
        description: Microsoft Azure Get Docs Search Suggest
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: search
          in: query
          type: string
          description: The search text to use to suggest documents. Must be at least 1 character, and no more than 100 characters.
          required: true
        - name: suggesterName
          in: query
          type: string
          description: The name of the suggester as specified in the suggesters collection that's part of the index definition.
          required: true
        - name: $filter
          in: query
          type: string
          description: An OData expression that filters the documents considered for suggestions.
        - name: fuzzy
          in: query
          type: boolean
          description: A value indicating whether to use fuzzy matching for the suggestions query. Default is false. When
            set to true, the query will find terms even if there's a subs
        - name: highlightPostTag
          in: query
          type: string
          description: A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit
            highlighting of suggestions is disabled.
        - name: highlightPreTag
          in: query
          type: string
          description: A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit
            highlighting of suggestions is disabled.
        - name: minimumCoverage
          in: query
          type: number
          description: A number between 0 and 100 indicating the percentage of the index that must be covered by a suggestions
            query in order for the query to be reported as a success
        - name: $orderby
          in: query
          type: array
          description: The list of OData $orderby expressions by which to sort the results. Each expression can be either
            a field name or a call to either the geo.distance() or the se
        - name: searchFields
          in: query
          type: array
          description: The list of field names to search for the specified search text. Target fields must be included in
            the specified suggester.
        - name: $select
          in: query
          type: array
          description: The list of fields to retrieve. If unspecified, only the key field will be included in the results.
        - name: $top
          in: query
          type: integer
          description: The number of suggestions to retrieve. The value must be a number between 1 and 100. The default is
            5.
  exposes:
  - type: rest
    namespace: searchindexclient-documents-rest
    port: 8080
    description: REST adapter for Microsoft Azure SearchIndexClient — Documents. One Spectral-compliant resource per consumed
      operation, prefixed with /v1.
    resources:
    - path: /v1/docs
      name: docs
      description: REST surface for docs.
      operations:
      - method: GET
        name: microsoftazuredocumentssearchget
        description: Microsoft Azure Get Docs
        call: searchindexclient-documents.microsoftazuredocumentssearchget
        with:
          search: rest.search
          $count: rest.$count
          facet: rest.facet
          $filter: rest.$filter
          highlight: rest.highlight
          highlightPostTag: rest.highlightPostTag
          highlightPreTag: rest.highlightPreTag
          minimumCoverage: rest.minimumCoverage
          $orderby: rest.$orderby
          queryType: rest.queryType
          scoringParameter: rest.scoringParameter
          scoringProfile: rest.scoringProfile
          searchFields: rest.searchFields
          searchMode: rest.searchMode
          $select: rest.$select
          $skip: rest.$skip
          $top: rest.$top
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/docs-key
      name: docs-key
      description: REST surface for docs('{key}').
      operations:
      - method: GET
        name: microsoftazuredocumentsget
        description: Microsoft Azure Get Docs Key
        call: searchindexclient-documents.microsoftazuredocumentsget
        with:
          key: rest.key
          $select: rest.$select
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/docs/count
      name: docs-count
      description: REST surface for docs-$count.
      operations:
      - method: GET
        name: microsoftazuredocumentscount
        description: Microsoft Azure Get Docs $count
        call: searchindexclient-documents.microsoftazuredocumentscount
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/docs/search-autocomplete
      name: docs-search-autocomplete
      description: REST surface for docs-search.autocomplete.
      operations:
      - method: GET
        name: microsoftazuredocumentsautocompleteget
        description: Microsoft Azure Get Docs Search Autocomplete
        call: searchindexclient-documents.microsoftazuredocumentsautocompleteget
        with:
          search: rest.search
          suggesterName: rest.suggesterName
          autocompleteMode: rest.autocompleteMode
          $filter: rest.$filter
          fuzzy: rest.fuzzy
          highlightPostTag: rest.highlightPostTag
          highlightPreTag: rest.highlightPreTag
          minimumCoverage: rest.minimumCoverage
          searchFields: rest.searchFields
          $top: rest.$top
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/docs/search-index
      name: docs-search-index
      description: REST surface for docs-search.index.
      operations:
      - method: POST
        name: microsoftazuredocumentsindex
        description: Microsoft Azure Post Docs Search Index
        call: searchindexclient-documents.microsoftazuredocumentsindex
        with:
          batch: rest.batch
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/docs/search-post-autocomplete
      name: docs-search-post-autocomplete
      description: REST surface for docs-search.post.autocomplete.
      operations:
      - method: POST
        name: microsoftazuredocumentsautocompletepost
        description: Microsoft Azure Post Docs Search Post Autocomplete
        call: searchindexclient-documents.microsoftazuredocumentsautocompletepost
        with:
          autocompleteRequest: rest.autocompleteRequest
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/docs/search-post-search
      name: docs-search-post-search
      description: REST surface for docs-search.post.search.
      operations:
      - method: POST
        name: microsoftazuredocumentssearchpost
        description: Microsoft Azure Post Docs Search Post Search
        call: searchindexclient-documents.microsoftazuredocumentssearchpost
        with:
          searchRequest: rest.searchRequest
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/docs/search-post-suggest
      name: docs-search-post-suggest
      description: REST surface for docs-search.post.suggest.
      operations:
      - method: POST
        name: microsoftazuredocumentssuggestpost
        description: Microsoft Azure Post Docs Search Post Suggest
        call: searchindexclient-documents.microsoftazuredocumentssuggestpost
        with:
          suggestRequest: rest.suggestRequest
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/docs/search-suggest
      name: docs-search-suggest
      description: REST surface for docs-search.suggest.
      operations:
      - method: GET
        name: microsoftazuredocumentssuggestget
        description: Microsoft Azure Get Docs Search Suggest
        call: searchindexclient-documents.microsoftazuredocumentssuggestget
        with:
          search: rest.search
          suggesterName: rest.suggesterName
          $filter: rest.$filter
          fuzzy: rest.fuzzy
          highlightPostTag: rest.highlightPostTag
          highlightPreTag: rest.highlightPreTag
          minimumCoverage: rest.minimumCoverage
          $orderby: rest.$orderby
          searchFields: rest.searchFields
          $select: rest.$select
          $top: rest.$top
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: searchindexclient-documents-mcp
    port: 9090
    transport: http
    description: MCP adapter for Microsoft Azure SearchIndexClient — Documents. One tool per consumed operation, routed inline
      through this capability's consumes block.
    tools:
    - name: microsoft-azure-get-docs
      description: Microsoft Azure Get Docs
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: searchindexclient-documents.microsoftazuredocumentssearchget
      with:
        search: tools.search
        $count: tools.$count
        facet: tools.facet
        $filter: tools.$filter
        highlight: tools.highlight
        highlightPostTag: tools.highlightPostTag
        highlightPreTag: tools.highlightPreTag
        minimumCoverage: tools.minimumCoverage
        $orderby: tools.$orderby
        queryType: tools.queryType
        scoringParameter: tools.scoringParameter
        scoringProfile: tools.scoringProfile
        searchFields: tools.searchFields
        searchMode: tools.searchMode
        $select: tools.$select
        $skip: tools.$skip
        $top: tools.$top
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-azure-get-docs-key
      description: Microsoft Azure Get Docs Key
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: searchindexclient-documents.microsoftazuredocumentsget
      with:
        key: tools.key
        $select: tools.$select
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-azure-get-docs-count
      description: Microsoft Azure Get Docs $count
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: searchindexclient-documents.microsoftazuredocumentscount
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-azure-get-docs-search
      description: Microsoft Azure Get Docs Search Autocomplete
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: searchindexclient-documents.microsoftazuredocumentsautocompleteget
      with:
        search: tools.search
        suggesterName: tools.suggesterName
        autocompleteMode: tools.autocompleteMode
        $filter: tools.$filter
        fuzzy: tools.fuzzy
        highlightPostTag: tools.highlightPostTag
        highlightPreTag: tools.highlightPreTag
        minimumCoverage: tools.minimumCoverage
        searchFields: tools.searchFields
        $top: tools.$top
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-azure-post-docs-search
      description: Microsoft Azure Post Docs Search Index
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: searchindexclient-documents.microsoftazuredocumentsindex
      with:
        batch: tools.batch
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-azure-post-docs-search-2
      description: Microsoft Azure Post Docs Search Post Autocomplete
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: searchindexclient-documents.microsoftazuredocumentsautocompletepost
      with:
        autocompleteRequest: tools.autocompleteRequest
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-azure-post-docs-search-3
      description: Microsoft Azure Post Docs Search Post Search
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: searchindexclient-documents.microsoftazuredocumentssearchpost
      with:
        searchRequest: tools.searchRequest
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-azure-post-docs-search-4
      description: Microsoft Azure Post Docs Search Post Suggest
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: searchindexclient-documents.microsoftazuredocumentssuggestpost
      with:
        suggestRequest: tools.suggestRequest
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-azure-get-docs-search-2
      description: Microsoft Azure Get Docs Search Suggest
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: searchindexclient-documents.microsoftazuredocumentssuggestget
      with:
        search: tools.search
        suggesterName: tools.suggesterName
        $filter: tools.$filter
        fuzzy: tools.fuzzy
        highlightPostTag: tools.highlightPostTag
        highlightPreTag: tools.highlightPreTag
        minimumCoverage: tools.minimumCoverage
        $orderby: tools.$orderby
        searchFields: tools.searchFields
        $select: tools.$select
        $top: tools.$top
      outputParameters:
      - type: object
        mapping: $.