Microsoft Copilot · Capability

Microsoft Copilot Microsoft 365 Copilot APIs

REST APIs under the Microsoft Graph /copilot/ namespace that enable secure access to Microsoft 365 Copilot capabilities including retrieval, search, chat, interaction export, and change notifications. These APIs provide production-ready AI capabilities that work directly with Microsoft 365 data while respecting existing permissions, sensitivity labels, compliance controls, and policy enforcement.

Run with Naftiko MicrosoftCopilotAPI

What You Can Do

POST
Copilot retrieval — Microsoft Copilot Retrieve Grounding Data
/copilot/retrieval
POST
Copilot search — Microsoft Copilot Perform Hybrid Search
/copilot/search
POST
Copilot chat startconversation — Microsoft Copilot Start a Chat Conversation
/copilot/chat/conversations
POST
Copilot chat continueconversation — Microsoft Copilot Continue a Chat Conversation
/copilot/chat/conversations/{conversationId}/messages
GET
Copilot interactionhistory getallenterpriseinter — Microsoft Copilot List All Enterprise Copilot Interactions
/copilot/interactionHistory/getAllEnterpriseInteractions
POST
Copilot changenotifications createsubscription — Microsoft Copilot Create Subscription for Copilot Interaction Notifications
/subscriptions

MCP Tools

copilot-retrieval

Microsoft Copilot Retrieve Grounding Data

copilot-search

Microsoft Copilot Perform Hybrid Search

copilot-chat-startconversation

Microsoft Copilot Start a Chat Conversation

copilot-chat-continueconversation

Microsoft Copilot Continue a Chat Conversation

copilot-interactionhistory-getallenterpriseinter

Microsoft Copilot List All Enterprise Copilot Interactions

read-only idempotent
copilot-changenotifications-createsubscription

Microsoft Copilot Create Subscription for Copilot Interaction Notifications

Capability Spec

microsoft-copilot-capability.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Microsoft Copilot Microsoft 365 Copilot APIs
  description: REST APIs under the Microsoft Graph /copilot/ namespace that enable secure access to Microsoft 365 Copilot
    capabilities including retrieval, search, chat, interaction export, and change notifications. These APIs provide production-ready
    AI capabilities that work directly with Microsoft 365 data while respecting existing permissions, sensitivity labels,
    compliance controls, and policy enforcement.
  tags:
  - Microsoft
  - Copilot
  - API
  created: '2026-05-06'
  modified: '2026-05-06'
capability:
  consumes:
  - type: http
    namespace: microsoft-copilot
    baseUri: https://graph.microsoft.com/v1.0
    description: Microsoft Copilot Microsoft 365 Copilot APIs HTTP API.
    authentication:
      type: bearer
      token: '{{MICROSOFT_COPILOT_TOKEN}}'
    resources:
    - name: copilot-retrieval
      path: /copilot/retrieval
      operations:
      - name: copilot-retrieval
        method: POST
        description: Microsoft Copilot Retrieve Grounding Data
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: copilot-search
      path: /copilot/search
      operations:
      - name: copilot-search
        method: POST
        description: Microsoft Copilot Perform Hybrid Search
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: copilot-chat-conversations
      path: /copilot/chat/conversations
      operations:
      - name: copilot-chat-startconversation
        method: POST
        description: Microsoft Copilot Start a Chat Conversation
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: copilot-chat-conversations-conversationid-messag
      path: /copilot/chat/conversations/{conversationId}/messages
      operations:
      - name: copilot-chat-continueconversation
        method: POST
        description: Microsoft Copilot Continue a Chat Conversation
        inputParameters:
        - name: conversationId
          in: path
          type: string
          required: true
          description: The unique identifier of the conversation to continue.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: copilot-interactionhistory-getallenterpriseinter
      path: /copilot/interactionHistory/getAllEnterpriseInteractions
      operations:
      - name: copilot-interactionhistory-getallenterpriseinter
        method: GET
        description: Microsoft Copilot List All Enterprise Copilot Interactions
        inputParameters:
        - name: $filter
          in: query
          type: string
          description: OData filter expression to filter interactions by date range, user, or application.
        - name: $top
          in: query
          type: integer
          description: Maximum number of interactions to return per page.
        - name: $skipToken
          in: query
          type: string
          description: Pagination token for retrieving the next page of results.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: subscriptions
      path: /subscriptions
      operations:
      - name: copilot-changenotifications-createsubscription
        method: POST
        description: Microsoft Copilot Create Subscription for Copilot Interaction Notifications
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
  exposes:
  - type: rest
    port: 8080
    namespace: microsoft-copilot-rest
    description: REST adapter for Microsoft Copilot Microsoft 365 Copilot APIs.
    resources:
    - path: /copilot/retrieval
      name: copilot-retrieval
      operations:
      - method: POST
        name: copilot-retrieval
        description: Microsoft Copilot Retrieve Grounding Data
        call: microsoft-copilot.copilot-retrieval
        outputParameters:
        - type: object
          mapping: $.
    - path: /copilot/search
      name: copilot-search
      operations:
      - method: POST
        name: copilot-search
        description: Microsoft Copilot Perform Hybrid Search
        call: microsoft-copilot.copilot-search
        outputParameters:
        - type: object
          mapping: $.
    - path: /copilot/chat/conversations
      name: copilot-chat-startconversation
      operations:
      - method: POST
        name: copilot-chat-startconversation
        description: Microsoft Copilot Start a Chat Conversation
        call: microsoft-copilot.copilot-chat-startconversation
        outputParameters:
        - type: object
          mapping: $.
    - path: /copilot/chat/conversations/{conversationId}/messages
      name: copilot-chat-continueconversation
      operations:
      - method: POST
        name: copilot-chat-continueconversation
        description: Microsoft Copilot Continue a Chat Conversation
        call: microsoft-copilot.copilot-chat-continueconversation
        with:
          conversationId: rest.conversationId
        outputParameters:
        - type: object
          mapping: $.
    - path: /copilot/interactionHistory/getAllEnterpriseInteractions
      name: copilot-interactionhistory-getallenterpriseinter
      operations:
      - method: GET
        name: copilot-interactionhistory-getallenterpriseinter
        description: Microsoft Copilot List All Enterprise Copilot Interactions
        call: microsoft-copilot.copilot-interactionhistory-getallenterpriseinter
        outputParameters:
        - type: object
          mapping: $.
    - path: /subscriptions
      name: copilot-changenotifications-createsubscription
      operations:
      - method: POST
        name: copilot-changenotifications-createsubscription
        description: Microsoft Copilot Create Subscription for Copilot Interaction Notifications
        call: microsoft-copilot.copilot-changenotifications-createsubscription
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    port: 9090
    namespace: microsoft-copilot-mcp
    transport: http
    description: MCP adapter for Microsoft Copilot Microsoft 365 Copilot APIs for AI agent use.
    tools:
    - name: copilot-retrieval
      description: Microsoft Copilot Retrieve Grounding Data
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: microsoft-copilot.copilot-retrieval
      outputParameters:
      - type: object
        mapping: $.
    - name: copilot-search
      description: Microsoft Copilot Perform Hybrid Search
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: microsoft-copilot.copilot-search
      outputParameters:
      - type: object
        mapping: $.
    - name: copilot-chat-startconversation
      description: Microsoft Copilot Start a Chat Conversation
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: microsoft-copilot.copilot-chat-startconversation
      outputParameters:
      - type: object
        mapping: $.
    - name: copilot-chat-continueconversation
      description: Microsoft Copilot Continue a Chat Conversation
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: microsoft-copilot.copilot-chat-continueconversation
      with:
        conversationId: tools.conversationId
      inputParameters:
      - name: conversationId
        type: string
        description: The unique identifier of the conversation to continue.
        required: true
      outputParameters:
      - type: object
        mapping: $.
    - name: copilot-interactionhistory-getallenterpriseinter
      description: Microsoft Copilot List All Enterprise Copilot Interactions
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: microsoft-copilot.copilot-interactionhistory-getallenterpriseinter
      with:
        $filter: tools.$filter
        $top: tools.$top
        $skipToken: tools.$skipToken
      inputParameters:
      - name: $filter
        type: string
        description: OData filter expression to filter interactions by date range, user, or application.
      - name: $top
        type: integer
        description: Maximum number of interactions to return per page.
      - name: $skipToken
        type: string
        description: Pagination token for retrieving the next page of results.
      outputParameters:
      - type: object
        mapping: $.
    - name: copilot-changenotifications-createsubscription
      description: Microsoft Copilot Create Subscription for Copilot Interaction Notifications
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: microsoft-copilot.copilot-changenotifications-createsubscription
      outputParameters:
      - type: object
        mapping: $.
binds:
- namespace: env
  keys:
    MICROSOFT_COPILOT_TOKEN: MICROSOFT_COPILOT_TOKEN