Telegram · Capability

Telegram Bot API — Chat Management

Telegram Bot API — Chat Management. 11 operations. Lead operation: Delete Chat Photo. Self-contained Naftiko capability covering one Telegram business surface.

Run with Naftiko TelegramChat Management

What You Can Do

POST
Deletechatphoto — Delete Chat Photo
/v1/deletechatphoto
POST
Getchat — Get Chat
/v1/getchat
POST
Getchatadministrators — Get Chat Administrators
/v1/getchatadministrators
POST
Getchatmember — Get Chat Member
/v1/getchatmember
POST
Getchatmembercount — Get Chat Member Count
/v1/getchatmembercount
POST
Leavechat — Leave Chat
/v1/leavechat
POST
Pinchatmessage — Pin Chat Message
/v1/pinchatmessage
POST
Setchatdescription — Set Chat Description
/v1/setchatdescription
POST
Setchatphoto — Set Chat Photo
/v1/setchatphoto
POST
Setchattitle — Set Chat Title
/v1/setchattitle
POST
Unpinchatmessage — Unpin Chat Message
/v1/unpinchatmessage

MCP Tools

delete-chat-photo

Delete Chat Photo

get-chat

Get Chat

read-only
get-chat-administrators

Get Chat Administrators

read-only
get-chat-member

Get Chat Member

read-only
get-chat-member-count

Get Chat Member Count

read-only
leave-chat

Leave Chat

pin-chat-message

Pin Chat Message

set-chat-description

Set Chat Description

set-chat-photo

Set Chat Photo

set-chat-title

Set Chat Title

unpin-chat-message

Unpin Chat Message

Capability Spec

bot-chat-management.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Telegram Bot API — Chat Management
  description: 'Telegram Bot API — Chat Management. 11 operations. Lead operation: Delete Chat Photo. Self-contained Naftiko
    capability covering one Telegram business surface.'
  tags:
  - Telegram
  - Chat Management
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    TELEGRAM_API_KEY: TELEGRAM_API_KEY
capability:
  consumes:
  - type: http
    namespace: bot-chat-management
    baseUri: https://api.telegram.org/bot{token}
    description: Telegram Bot API — Chat Management business capability. Self-contained, no shared references.
    resources:
    - name: deleteChatPhoto
      path: /deleteChatPhoto
      operations:
      - name: deletechatphoto
        method: POST
        description: Delete Chat Photo
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: getChat
      path: /getChat
      operations:
      - name: getchat
        method: POST
        description: Get Chat
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: getChatAdministrators
      path: /getChatAdministrators
      operations:
      - name: getchatadministrators
        method: POST
        description: Get Chat Administrators
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: getChatMember
      path: /getChatMember
      operations:
      - name: getchatmember
        method: POST
        description: Get Chat Member
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: getChatMemberCount
      path: /getChatMemberCount
      operations:
      - name: getchatmembercount
        method: POST
        description: Get Chat Member Count
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: leaveChat
      path: /leaveChat
      operations:
      - name: leavechat
        method: POST
        description: Leave Chat
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: pinChatMessage
      path: /pinChatMessage
      operations:
      - name: pinchatmessage
        method: POST
        description: Pin Chat Message
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: setChatDescription
      path: /setChatDescription
      operations:
      - name: setchatdescription
        method: POST
        description: Set Chat Description
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: setChatPhoto
      path: /setChatPhoto
      operations:
      - name: setchatphoto
        method: POST
        description: Set Chat Photo
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: setChatTitle
      path: /setChatTitle
      operations:
      - name: setchattitle
        method: POST
        description: Set Chat Title
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: unpinChatMessage
      path: /unpinChatMessage
      operations:
      - name: unpinchatmessage
        method: POST
        description: Unpin Chat Message
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    authentication:
      type: apikey
      key: token
      value: '{{env.TELEGRAM_API_KEY}}'
      placement: path
  exposes:
  - type: rest
    namespace: bot-chat-management-rest
    port: 8080
    description: REST adapter for Telegram Bot API — Chat Management. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/deletechatphoto
      name: deletechatphoto
      description: REST surface for deleteChatPhoto.
      operations:
      - method: POST
        name: deletechatphoto
        description: Delete Chat Photo
        call: bot-chat-management.deletechatphoto
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/getchat
      name: getchat
      description: REST surface for getChat.
      operations:
      - method: POST
        name: getchat
        description: Get Chat
        call: bot-chat-management.getchat
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/getchatadministrators
      name: getchatadministrators
      description: REST surface for getChatAdministrators.
      operations:
      - method: POST
        name: getchatadministrators
        description: Get Chat Administrators
        call: bot-chat-management.getchatadministrators
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/getchatmember
      name: getchatmember
      description: REST surface for getChatMember.
      operations:
      - method: POST
        name: getchatmember
        description: Get Chat Member
        call: bot-chat-management.getchatmember
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/getchatmembercount
      name: getchatmembercount
      description: REST surface for getChatMemberCount.
      operations:
      - method: POST
        name: getchatmembercount
        description: Get Chat Member Count
        call: bot-chat-management.getchatmembercount
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/leavechat
      name: leavechat
      description: REST surface for leaveChat.
      operations:
      - method: POST
        name: leavechat
        description: Leave Chat
        call: bot-chat-management.leavechat
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/pinchatmessage
      name: pinchatmessage
      description: REST surface for pinChatMessage.
      operations:
      - method: POST
        name: pinchatmessage
        description: Pin Chat Message
        call: bot-chat-management.pinchatmessage
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/setchatdescription
      name: setchatdescription
      description: REST surface for setChatDescription.
      operations:
      - method: POST
        name: setchatdescription
        description: Set Chat Description
        call: bot-chat-management.setchatdescription
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/setchatphoto
      name: setchatphoto
      description: REST surface for setChatPhoto.
      operations:
      - method: POST
        name: setchatphoto
        description: Set Chat Photo
        call: bot-chat-management.setchatphoto
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/setchattitle
      name: setchattitle
      description: REST surface for setChatTitle.
      operations:
      - method: POST
        name: setchattitle
        description: Set Chat Title
        call: bot-chat-management.setchattitle
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/unpinchatmessage
      name: unpinchatmessage
      description: REST surface for unpinChatMessage.
      operations:
      - method: POST
        name: unpinchatmessage
        description: Unpin Chat Message
        call: bot-chat-management.unpinchatmessage
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: bot-chat-management-mcp
    port: 9090
    transport: http
    description: MCP adapter for Telegram Bot API — Chat Management. One tool per consumed operation, routed inline through
      this capability's consumes block.
    tools:
    - name: delete-chat-photo
      description: Delete Chat Photo
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: bot-chat-management.deletechatphoto
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-chat
      description: Get Chat
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: bot-chat-management.getchat
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-chat-administrators
      description: Get Chat Administrators
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: bot-chat-management.getchatadministrators
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-chat-member
      description: Get Chat Member
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: bot-chat-management.getchatmember
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-chat-member-count
      description: Get Chat Member Count
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: bot-chat-management.getchatmembercount
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: leave-chat
      description: Leave Chat
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: bot-chat-management.leavechat
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: pin-chat-message
      description: Pin Chat Message
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: bot-chat-management.pinchatmessage
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: set-chat-description
      description: Set Chat Description
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: bot-chat-management.setchatdescription
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: set-chat-photo
      description: Set Chat Photo
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: bot-chat-management.setchatphoto
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: set-chat-title
      description: Set Chat Title
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: bot-chat-management.setchattitle
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: unpin-chat-message
      description: Unpin Chat Message
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: bot-chat-management.unpinchatmessage
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.