Bluesky · Capability

Bluesky Social API — Sync

Bluesky Social API — Sync. 10 operations. Lead operation: Bluesky This endpoint is part of the atproto repository synchronization APIs.. Self-contained Naftiko capability covering one Bluesky business surface.

Run with Naftiko BlueskySync

What You Can Do

GET
Syncgetblob — Bluesky This endpoint is part of the atproto repository synchronization APIs.
/v1/xrpc/com-atproto-sync-getblob
GET
Syncgetblocks — Bluesky This endpoint is part of the atproto repository synchronization APIs.
/v1/xrpc/com-atproto-sync-getblocks
GET
Syncgetlatestcommit — Bluesky This endpoint is part of the atproto repository synchronization APIs.
/v1/xrpc/com-atproto-sync-getlatestcommit
GET
Syncgetrecord — Bluesky This endpoint is part of the atproto repository synchronization APIs.
/v1/xrpc/com-atproto-sync-getrecord
GET
Syncgetrepo — Bluesky This endpoint is part of the atproto repository synchronization APIs.
/v1/xrpc/com-atproto-sync-getrepo
GET
Syncgetrepostatus — Bluesky This endpoint is part of the atproto repository synchronization APIs.
/v1/xrpc/com-atproto-sync-getrepostatus
GET
Synclistblobs — Bluesky This endpoint is part of the atproto repository synchronization APIs.
/v1/xrpc/com-atproto-sync-listblobs
GET
Synclistrepos — Bluesky This endpoint is part of the atproto repository synchronization APIs.
/v1/xrpc/com-atproto-sync-listrepos
POST
Syncnotifyofupdate — Bluesky This endpoint is part of the atproto repository synchronization APIs.
/v1/xrpc/com-atproto-sync-notifyofupdate
POST
Syncrequestcrawl — Bluesky This endpoint is part of the atproto repository synchronization APIs.
/v1/xrpc/com-atproto-sync-requestcrawl

MCP Tools

bluesky-this-endpoint-is-part

Bluesky This endpoint is part of the atproto repository synchronization APIs.

read-only idempotent
bluesky-this-endpoint-is-part-2

Bluesky This endpoint is part of the atproto repository synchronization APIs.

read-only idempotent
bluesky-this-endpoint-is-part-3

Bluesky This endpoint is part of the atproto repository synchronization APIs.

read-only idempotent
bluesky-this-endpoint-is-part-4

Bluesky This endpoint is part of the atproto repository synchronization APIs.

read-only idempotent
bluesky-this-endpoint-is-part-5

Bluesky This endpoint is part of the atproto repository synchronization APIs.

read-only idempotent
bluesky-this-endpoint-is-part-6

Bluesky This endpoint is part of the atproto repository synchronization APIs.

read-only idempotent
bluesky-this-endpoint-is-part-7

Bluesky This endpoint is part of the atproto repository synchronization APIs.

read-only idempotent
bluesky-this-endpoint-is-part-8

Bluesky This endpoint is part of the atproto repository synchronization APIs.

read-only idempotent
bluesky-this-endpoint-is-part-9

Bluesky This endpoint is part of the atproto repository synchronization APIs.

bluesky-this-endpoint-is-part-10

Bluesky This endpoint is part of the atproto repository synchronization APIs.

Capability Spec

bluesky-sync.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Bluesky Social API — Sync
  description: 'Bluesky Social API — Sync. 10 operations. Lead operation: Bluesky This endpoint is part of the atproto repository
    synchronization APIs.. Self-contained Naftiko capability covering one Bluesky business surface.'
  tags:
  - Bluesky
  - Sync
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    BLUESKY_API_KEY: BLUESKY_API_KEY
capability:
  consumes:
  - type: http
    namespace: bluesky-sync
    baseUri: https://bsky.social/xrpc
    description: Bluesky Social API — Sync business capability. Self-contained, no shared references.
    resources:
    - name: xrpc-com.atproto.sync.getBlob
      path: /xrpc/com.atproto.sync.getBlob
      operations:
      - name: syncgetblob
        method: GET
        description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: did
          in: query
          type: string
          description: The DID of the account.
          required: true
        - name: cid
          in: query
          type: string
          description: The CID of the blob to fetch
          required: true
    - name: xrpc-com.atproto.sync.getBlocks
      path: /xrpc/com.atproto.sync.getBlocks
      operations:
      - name: syncgetblocks
        method: GET
        description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: did
          in: query
          type: string
          description: The DID of the repo.
          required: true
        - name: cids
          in: query
          type: array
          required: true
    - name: xrpc-com.atproto.sync.getLatestCommit
      path: /xrpc/com.atproto.sync.getLatestCommit
      operations:
      - name: syncgetlatestcommit
        method: GET
        description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: did
          in: query
          type: string
          description: The DID of the repo.
          required: true
    - name: xrpc-com.atproto.sync.getRecord
      path: /xrpc/com.atproto.sync.getRecord
      operations:
      - name: syncgetrecord
        method: GET
        description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: did
          in: query
          type: string
          description: The DID of the repo.
          required: true
        - name: collection
          in: query
          type: string
          required: true
        - name: rkey
          in: query
          type: string
          description: Record Key
          required: true
    - name: xrpc-com.atproto.sync.getRepo
      path: /xrpc/com.atproto.sync.getRepo
      operations:
      - name: syncgetrepo
        method: GET
        description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: did
          in: query
          type: string
          description: The DID of the repo.
          required: true
        - name: since
          in: query
          type: string
          description: The revision ('rev') of the repo to create a diff from.
    - name: xrpc-com.atproto.sync.getRepoStatus
      path: /xrpc/com.atproto.sync.getRepoStatus
      operations:
      - name: syncgetrepostatus
        method: GET
        description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: did
          in: query
          type: string
          description: The DID of the repo.
          required: true
    - name: xrpc-com.atproto.sync.listBlobs
      path: /xrpc/com.atproto.sync.listBlobs
      operations:
      - name: synclistblobs
        method: GET
        description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: did
          in: query
          type: string
          description: The DID of the repo.
          required: true
        - name: since
          in: query
          type: string
          description: Optional revision of the repo to list blobs since.
        - name: limit
          in: query
          type: integer
        - name: cursor
          in: query
          type: string
    - name: xrpc-com.atproto.sync.listRepos
      path: /xrpc/com.atproto.sync.listRepos
      operations:
      - name: synclistrepos
        method: GET
        description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: limit
          in: query
          type: integer
        - name: cursor
          in: query
          type: string
    - name: xrpc-com.atproto.sync.notifyOfUpdate
      path: /xrpc/com.atproto.sync.notifyOfUpdate
      operations:
      - name: syncnotifyofupdate
        method: POST
        description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: xrpc-com.atproto.sync.requestCrawl
      path: /xrpc/com.atproto.sync.requestCrawl
      operations:
      - name: syncrequestcrawl
        method: POST
        description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    authentication:
      type: bearer
      token: '{{env.BLUESKY_API_KEY}}'
  exposes:
  - type: rest
    namespace: bluesky-sync-rest
    port: 8080
    description: REST adapter for Bluesky Social API — Sync. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/xrpc/com-atproto-sync-getblob
      name: xrpc-com-atproto-sync-getblob
      description: REST surface for xrpc-com.atproto.sync.getBlob.
      operations:
      - method: GET
        name: syncgetblob
        description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
        call: bluesky-sync.syncgetblob
        with:
          did: rest.did
          cid: rest.cid
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/xrpc/com-atproto-sync-getblocks
      name: xrpc-com-atproto-sync-getblocks
      description: REST surface for xrpc-com.atproto.sync.getBlocks.
      operations:
      - method: GET
        name: syncgetblocks
        description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
        call: bluesky-sync.syncgetblocks
        with:
          did: rest.did
          cids: rest.cids
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/xrpc/com-atproto-sync-getlatestcommit
      name: xrpc-com-atproto-sync-getlatestcommit
      description: REST surface for xrpc-com.atproto.sync.getLatestCommit.
      operations:
      - method: GET
        name: syncgetlatestcommit
        description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
        call: bluesky-sync.syncgetlatestcommit
        with:
          did: rest.did
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/xrpc/com-atproto-sync-getrecord
      name: xrpc-com-atproto-sync-getrecord
      description: REST surface for xrpc-com.atproto.sync.getRecord.
      operations:
      - method: GET
        name: syncgetrecord
        description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
        call: bluesky-sync.syncgetrecord
        with:
          did: rest.did
          collection: rest.collection
          rkey: rest.rkey
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/xrpc/com-atproto-sync-getrepo
      name: xrpc-com-atproto-sync-getrepo
      description: REST surface for xrpc-com.atproto.sync.getRepo.
      operations:
      - method: GET
        name: syncgetrepo
        description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
        call: bluesky-sync.syncgetrepo
        with:
          did: rest.did
          since: rest.since
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/xrpc/com-atproto-sync-getrepostatus
      name: xrpc-com-atproto-sync-getrepostatus
      description: REST surface for xrpc-com.atproto.sync.getRepoStatus.
      operations:
      - method: GET
        name: syncgetrepostatus
        description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
        call: bluesky-sync.syncgetrepostatus
        with:
          did: rest.did
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/xrpc/com-atproto-sync-listblobs
      name: xrpc-com-atproto-sync-listblobs
      description: REST surface for xrpc-com.atproto.sync.listBlobs.
      operations:
      - method: GET
        name: synclistblobs
        description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
        call: bluesky-sync.synclistblobs
        with:
          did: rest.did
          since: rest.since
          limit: rest.limit
          cursor: rest.cursor
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/xrpc/com-atproto-sync-listrepos
      name: xrpc-com-atproto-sync-listrepos
      description: REST surface for xrpc-com.atproto.sync.listRepos.
      operations:
      - method: GET
        name: synclistrepos
        description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
        call: bluesky-sync.synclistrepos
        with:
          limit: rest.limit
          cursor: rest.cursor
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/xrpc/com-atproto-sync-notifyofupdate
      name: xrpc-com-atproto-sync-notifyofupdate
      description: REST surface for xrpc-com.atproto.sync.notifyOfUpdate.
      operations:
      - method: POST
        name: syncnotifyofupdate
        description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
        call: bluesky-sync.syncnotifyofupdate
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/xrpc/com-atproto-sync-requestcrawl
      name: xrpc-com-atproto-sync-requestcrawl
      description: REST surface for xrpc-com.atproto.sync.requestCrawl.
      operations:
      - method: POST
        name: syncrequestcrawl
        description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
        call: bluesky-sync.syncrequestcrawl
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: bluesky-sync-mcp
    port: 9090
    transport: http
    description: MCP adapter for Bluesky Social API — Sync. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: bluesky-this-endpoint-is-part
      description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: bluesky-sync.syncgetblob
      with:
        did: tools.did
        cid: tools.cid
      outputParameters:
      - type: object
        mapping: $.
    - name: bluesky-this-endpoint-is-part-2
      description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: bluesky-sync.syncgetblocks
      with:
        did: tools.did
        cids: tools.cids
      outputParameters:
      - type: object
        mapping: $.
    - name: bluesky-this-endpoint-is-part-3
      description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: bluesky-sync.syncgetlatestcommit
      with:
        did: tools.did
      outputParameters:
      - type: object
        mapping: $.
    - name: bluesky-this-endpoint-is-part-4
      description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: bluesky-sync.syncgetrecord
      with:
        did: tools.did
        collection: tools.collection
        rkey: tools.rkey
      outputParameters:
      - type: object
        mapping: $.
    - name: bluesky-this-endpoint-is-part-5
      description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: bluesky-sync.syncgetrepo
      with:
        did: tools.did
        since: tools.since
      outputParameters:
      - type: object
        mapping: $.
    - name: bluesky-this-endpoint-is-part-6
      description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: bluesky-sync.syncgetrepostatus
      with:
        did: tools.did
      outputParameters:
      - type: object
        mapping: $.
    - name: bluesky-this-endpoint-is-part-7
      description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: bluesky-sync.synclistblobs
      with:
        did: tools.did
        since: tools.since
        limit: tools.limit
        cursor: tools.cursor
      outputParameters:
      - type: object
        mapping: $.
    - name: bluesky-this-endpoint-is-part-8
      description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: bluesky-sync.synclistrepos
      with:
        limit: tools.limit
        cursor: tools.cursor
      outputParameters:
      - type: object
        mapping: $.
    - name: bluesky-this-endpoint-is-part-9
      description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: bluesky-sync.syncnotifyofupdate
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: bluesky-this-endpoint-is-part-10
      description: Bluesky This endpoint is part of the atproto repository synchronization APIs.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: bluesky-sync.syncrequestcrawl
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.