naftiko: 1.0.0-alpha2 info: label: Bluesky Social API — Administration description: 'Bluesky Social API — Administration. 14 operations. Lead operation: Bluesky Delete a user account as an administrator.. Self-contained Naftiko capability covering one Bluesky business surface.' tags: - Bluesky - Administration created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: BLUESKY_API_KEY: BLUESKY_API_KEY capability: consumes: - type: http namespace: bluesky-administration baseUri: https://bsky.social/xrpc description: Bluesky Social API — Administration business capability. Self-contained, no shared references. resources: - name: xrpc-com.atproto.admin.deleteAccount path: /xrpc/com.atproto.admin.deleteAccount operations: - name: admindeleteaccount method: POST description: Bluesky Delete a user account as an administrator. 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.admin.disableAccountInvites path: /xrpc/com.atproto.admin.disableAccountInvites operations: - name: admindisableaccountinvites method: POST description: Bluesky Disable an account from receiving new invite codes, but does not invalidate existing codes. 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.admin.disableInviteCodes path: /xrpc/com.atproto.admin.disableInviteCodes operations: - name: admindisableinvitecodes method: POST description: Bluesky Disable some set of codes and/or all codes associated with a set of users. 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.admin.enableAccountInvites path: /xrpc/com.atproto.admin.enableAccountInvites operations: - name: adminenableaccountinvites method: POST description: Bluesky Re-enable an account's ability to receive invite codes. 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.admin.getAccountInfo path: /xrpc/com.atproto.admin.getAccountInfo operations: - name: admingetaccountinfo method: GET description: Bluesky Get details about an account. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: did in: query type: string required: true - name: xrpc-com.atproto.admin.getAccountInfos path: /xrpc/com.atproto.admin.getAccountInfos operations: - name: admingetaccountinfos method: GET description: Bluesky Get details about some accounts. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: dids in: query type: array required: true - name: xrpc-com.atproto.admin.getInviteCodes path: /xrpc/com.atproto.admin.getInviteCodes operations: - name: admingetinvitecodes method: GET description: Bluesky Get an admin view of invite codes. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: sort in: query type: string - name: limit in: query type: integer - name: cursor in: query type: string - name: xrpc-com.atproto.admin.getSubjectStatus path: /xrpc/com.atproto.admin.getSubjectStatus operations: - name: admingetsubjectstatus method: GET description: Bluesky Get the service-specific admin status of a subject (account, record, or blob). outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: did in: query type: string - name: uri in: query type: string - name: blob in: query type: string - name: xrpc-com.atproto.admin.searchAccounts path: /xrpc/com.atproto.admin.searchAccounts operations: - name: adminsearchaccounts method: GET description: Bluesky Get list of accounts that matches your search query. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: email in: query type: string - name: cursor in: query type: string - name: limit in: query type: integer - name: xrpc-com.atproto.admin.sendEmail path: /xrpc/com.atproto.admin.sendEmail operations: - name: adminsendemail method: POST description: Bluesky Send email to a user's account email address. 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.admin.updateAccountEmail path: /xrpc/com.atproto.admin.updateAccountEmail operations: - name: adminupdateaccountemail method: POST description: Bluesky Administrative action to update an account's email. 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.admin.updateAccountHandle path: /xrpc/com.atproto.admin.updateAccountHandle operations: - name: adminupdateaccounthandle method: POST description: Bluesky Administrative action to update an account's handle. 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.admin.updateAccountPassword path: /xrpc/com.atproto.admin.updateAccountPassword operations: - name: adminupdateaccountpassword method: POST description: Bluesky Update the password for a user account as an administrator. 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.admin.updateSubjectStatus path: /xrpc/com.atproto.admin.updateSubjectStatus operations: - name: adminupdatesubjectstatus method: POST description: Bluesky Update the service-specific admin status of a subject (account, record, or blob). 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-administration-rest port: 8080 description: REST adapter for Bluesky Social API — Administration. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/xrpc/com-atproto-admin-deleteaccount name: xrpc-com-atproto-admin-deleteaccount description: REST surface for xrpc-com.atproto.admin.deleteAccount. operations: - method: POST name: admindeleteaccount description: Bluesky Delete a user account as an administrator. call: bluesky-administration.admindeleteaccount with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/xrpc/com-atproto-admin-disableaccountinvites name: xrpc-com-atproto-admin-disableaccountinvites description: REST surface for xrpc-com.atproto.admin.disableAccountInvites. operations: - method: POST name: admindisableaccountinvites description: Bluesky Disable an account from receiving new invite codes, but does not invalidate existing codes. call: bluesky-administration.admindisableaccountinvites with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/xrpc/com-atproto-admin-disableinvitecodes name: xrpc-com-atproto-admin-disableinvitecodes description: REST surface for xrpc-com.atproto.admin.disableInviteCodes. operations: - method: POST name: admindisableinvitecodes description: Bluesky Disable some set of codes and/or all codes associated with a set of users. call: bluesky-administration.admindisableinvitecodes with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/xrpc/com-atproto-admin-enableaccountinvites name: xrpc-com-atproto-admin-enableaccountinvites description: REST surface for xrpc-com.atproto.admin.enableAccountInvites. operations: - method: POST name: adminenableaccountinvites description: Bluesky Re-enable an account's ability to receive invite codes. call: bluesky-administration.adminenableaccountinvites with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/xrpc/com-atproto-admin-getaccountinfo name: xrpc-com-atproto-admin-getaccountinfo description: REST surface for xrpc-com.atproto.admin.getAccountInfo. operations: - method: GET name: admingetaccountinfo description: Bluesky Get details about an account. call: bluesky-administration.admingetaccountinfo with: did: rest.did outputParameters: - type: object mapping: $. - path: /v1/xrpc/com-atproto-admin-getaccountinfos name: xrpc-com-atproto-admin-getaccountinfos description: REST surface for xrpc-com.atproto.admin.getAccountInfos. operations: - method: GET name: admingetaccountinfos description: Bluesky Get details about some accounts. call: bluesky-administration.admingetaccountinfos with: dids: rest.dids outputParameters: - type: object mapping: $. - path: /v1/xrpc/com-atproto-admin-getinvitecodes name: xrpc-com-atproto-admin-getinvitecodes description: REST surface for xrpc-com.atproto.admin.getInviteCodes. operations: - method: GET name: admingetinvitecodes description: Bluesky Get an admin view of invite codes. call: bluesky-administration.admingetinvitecodes with: sort: rest.sort limit: rest.limit cursor: rest.cursor outputParameters: - type: object mapping: $. - path: /v1/xrpc/com-atproto-admin-getsubjectstatus name: xrpc-com-atproto-admin-getsubjectstatus description: REST surface for xrpc-com.atproto.admin.getSubjectStatus. operations: - method: GET name: admingetsubjectstatus description: Bluesky Get the service-specific admin status of a subject (account, record, or blob). call: bluesky-administration.admingetsubjectstatus with: did: rest.did uri: rest.uri blob: rest.blob outputParameters: - type: object mapping: $. - path: /v1/xrpc/com-atproto-admin-searchaccounts name: xrpc-com-atproto-admin-searchaccounts description: REST surface for xrpc-com.atproto.admin.searchAccounts. operations: - method: GET name: adminsearchaccounts description: Bluesky Get list of accounts that matches your search query. call: bluesky-administration.adminsearchaccounts with: email: rest.email cursor: rest.cursor limit: rest.limit outputParameters: - type: object mapping: $. - path: /v1/xrpc/com-atproto-admin-sendemail name: xrpc-com-atproto-admin-sendemail description: REST surface for xrpc-com.atproto.admin.sendEmail. operations: - method: POST name: adminsendemail description: Bluesky Send email to a user's account email address. call: bluesky-administration.adminsendemail with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/xrpc/com-atproto-admin-updateaccountemail name: xrpc-com-atproto-admin-updateaccountemail description: REST surface for xrpc-com.atproto.admin.updateAccountEmail. operations: - method: POST name: adminupdateaccountemail description: Bluesky Administrative action to update an account's email. call: bluesky-administration.adminupdateaccountemail with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/xrpc/com-atproto-admin-updateaccounthandle name: xrpc-com-atproto-admin-updateaccounthandle description: REST surface for xrpc-com.atproto.admin.updateAccountHandle. operations: - method: POST name: adminupdateaccounthandle description: Bluesky Administrative action to update an account's handle. call: bluesky-administration.adminupdateaccounthandle with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/xrpc/com-atproto-admin-updateaccountpassword name: xrpc-com-atproto-admin-updateaccountpassword description: REST surface for xrpc-com.atproto.admin.updateAccountPassword. operations: - method: POST name: adminupdateaccountpassword description: Bluesky Update the password for a user account as an administrator. call: bluesky-administration.adminupdateaccountpassword with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/xrpc/com-atproto-admin-updatesubjectstatus name: xrpc-com-atproto-admin-updatesubjectstatus description: REST surface for xrpc-com.atproto.admin.updateSubjectStatus. operations: - method: POST name: adminupdatesubjectstatus description: Bluesky Update the service-specific admin status of a subject (account, record, or blob). call: bluesky-administration.adminupdatesubjectstatus with: body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: bluesky-administration-mcp port: 9090 transport: http description: MCP adapter for Bluesky Social API — Administration. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: bluesky-delete-user-account-administrator description: Bluesky Delete a user account as an administrator. hints: readOnly: false destructive: false idempotent: false call: bluesky-administration.admindeleteaccount with: body: tools.body outputParameters: - type: object mapping: $. - name: bluesky-disable-account-receiving-new description: Bluesky Disable an account from receiving new invite codes, but does not invalidate existing codes. hints: readOnly: true destructive: false idempotent: false call: bluesky-administration.admindisableaccountinvites with: body: tools.body outputParameters: - type: object mapping: $. - name: bluesky-disable-some-set-codes description: Bluesky Disable some set of codes and/or all codes associated with a set of users. hints: readOnly: false destructive: false idempotent: false call: bluesky-administration.admindisableinvitecodes with: body: tools.body outputParameters: - type: object mapping: $. - name: bluesky-re-enable-account-s-ability description: Bluesky Re-enable an account's ability to receive invite codes. hints: readOnly: false destructive: false idempotent: false call: bluesky-administration.adminenableaccountinvites with: body: tools.body outputParameters: - type: object mapping: $. - name: bluesky-get-details-about-account description: Bluesky Get details about an account. hints: readOnly: true destructive: false idempotent: true call: bluesky-administration.admingetaccountinfo with: did: tools.did outputParameters: - type: object mapping: $. - name: bluesky-get-details-about-some description: Bluesky Get details about some accounts. hints: readOnly: true destructive: false idempotent: true call: bluesky-administration.admingetaccountinfos with: dids: tools.dids outputParameters: - type: object mapping: $. - name: bluesky-get-admin-view-invite description: Bluesky Get an admin view of invite codes. hints: readOnly: true destructive: false idempotent: true call: bluesky-administration.admingetinvitecodes with: sort: tools.sort limit: tools.limit cursor: tools.cursor outputParameters: - type: object mapping: $. - name: bluesky-get-service-specific-admin description: Bluesky Get the service-specific admin status of a subject (account, record, or blob). hints: readOnly: true destructive: false idempotent: true call: bluesky-administration.admingetsubjectstatus with: did: tools.did uri: tools.uri blob: tools.blob outputParameters: - type: object mapping: $. - name: bluesky-get-list-accounts-that description: Bluesky Get list of accounts that matches your search query. hints: readOnly: true destructive: false idempotent: true call: bluesky-administration.adminsearchaccounts with: email: tools.email cursor: tools.cursor limit: tools.limit outputParameters: - type: object mapping: $. - name: bluesky-send-email-user-s-account description: Bluesky Send email to a user's account email address. hints: readOnly: false destructive: false idempotent: false call: bluesky-administration.adminsendemail with: body: tools.body outputParameters: - type: object mapping: $. - name: bluesky-administrative-action-update-account-s description: Bluesky Administrative action to update an account's email. hints: readOnly: false destructive: false idempotent: false call: bluesky-administration.adminupdateaccountemail with: body: tools.body outputParameters: - type: object mapping: $. - name: bluesky-administrative-action-update-account-s-2 description: Bluesky Administrative action to update an account's handle. hints: readOnly: false destructive: false idempotent: false call: bluesky-administration.adminupdateaccounthandle with: body: tools.body outputParameters: - type: object mapping: $. - name: bluesky-update-password-user-account description: Bluesky Update the password for a user account as an administrator. hints: readOnly: false destructive: false idempotent: false call: bluesky-administration.adminupdateaccountpassword with: body: tools.body outputParameters: - type: object mapping: $. - name: bluesky-update-service-specific-admin description: Bluesky Update the service-specific admin status of a subject (account, record, or blob). hints: readOnly: false destructive: false idempotent: false call: bluesky-administration.adminupdatesubjectstatus with: body: tools.body outputParameters: - type: object mapping: $.