naftiko: 1.0.0-alpha2 info: label: Ghost Admin API description: The Ghost Admin API provides full read and write access to all content and configuration within a Ghost publication. It enables developers to create, update, and delete posts, pages, tags, members, tiers, newsletters, and offers programmatically. Authentication is handled via JSON Web Tokens generated from an Admin API key, integration tokens, or staff access tokens. The Admin API supports everything the Ghost Admin interface can do and more, making it suitable for building custom publishing workflows, content automation, member management systems, and advanced integrations. tags: - Ghost - API created: '2026-05-06' modified: '2026-05-06' capability: consumes: - type: http namespace: ghost baseUri: https://your-site.ghost.io/ghost/api/admin description: Ghost Admin API HTTP API. authentication: type: bearer token: '{{GHOST_TOKEN}}' resources: - name: posts path: /posts/ operations: - name: adminbrowseposts method: GET description: Browse posts outputRawFormat: json outputParameters: - name: result type: object value: $. - name: admincreatepost method: POST description: Create a post outputRawFormat: json outputParameters: - name: result type: object value: $. - name: posts-id path: /posts/{id}/ operations: - name: adminreadpost method: GET description: Read a post by ID outputRawFormat: json outputParameters: - name: result type: object value: $. - name: adminupdatepost method: PUT description: Update a post outputRawFormat: json outputParameters: - name: result type: object value: $. - name: admindeletepost method: DELETE description: Delete a post outputRawFormat: json outputParameters: - name: result type: object value: $. - name: pages path: /pages/ operations: - name: adminbrowsepages method: GET description: Browse pages outputRawFormat: json outputParameters: - name: result type: object value: $. - name: admincreatepage method: POST description: Create a page outputRawFormat: json outputParameters: - name: result type: object value: $. - name: pages-id path: /pages/{id}/ operations: - name: adminreadpage method: GET description: Read a page by ID outputRawFormat: json outputParameters: - name: result type: object value: $. - name: adminupdatepage method: PUT description: Update a page outputRawFormat: json outputParameters: - name: result type: object value: $. - name: admindeletepage method: DELETE description: Delete a page outputRawFormat: json outputParameters: - name: result type: object value: $. - name: tags path: /tags/ operations: - name: adminbrowsetags method: GET description: Browse tags outputRawFormat: json outputParameters: - name: result type: object value: $. - name: admincreatetag method: POST description: Create a tag outputRawFormat: json outputParameters: - name: result type: object value: $. - name: tags-id path: /tags/{id}/ operations: - name: adminreadtag method: GET description: Read a tag by ID outputRawFormat: json outputParameters: - name: result type: object value: $. - name: adminupdatetag method: PUT description: Update a tag outputRawFormat: json outputParameters: - name: result type: object value: $. - name: admindeletetag method: DELETE description: Delete a tag outputRawFormat: json outputParameters: - name: result type: object value: $. - name: members path: /members/ operations: - name: adminbrowsemembers method: GET description: Browse members outputRawFormat: json outputParameters: - name: result type: object value: $. - name: admincreatemember method: POST description: Create a member outputRawFormat: json outputParameters: - name: result type: object value: $. - name: members-id path: /members/{id}/ operations: - name: adminreadmember method: GET description: Read a member by ID outputRawFormat: json outputParameters: - name: result type: object value: $. - name: adminupdatemember method: PUT description: Update a member outputRawFormat: json outputParameters: - name: result type: object value: $. - name: admindeletemember method: DELETE description: Delete a member outputRawFormat: json outputParameters: - name: result type: object value: $. - name: tiers path: /tiers/ operations: - name: adminbrowsetiers method: GET description: Browse tiers outputRawFormat: json outputParameters: - name: result type: object value: $. - name: admincreatetier method: POST description: Create a tier outputRawFormat: json outputParameters: - name: result type: object value: $. - name: tiers-id path: /tiers/{id}/ operations: - name: adminreadtier method: GET description: Read a tier by ID outputRawFormat: json outputParameters: - name: result type: object value: $. - name: adminupdatetier method: PUT description: Update a tier outputRawFormat: json outputParameters: - name: result type: object value: $. - name: newsletters path: /newsletters/ operations: - name: adminbrowsenewsletters method: GET description: Browse newsletters outputRawFormat: json outputParameters: - name: result type: object value: $. - name: admincreatenewsletter method: POST description: Create a newsletter outputRawFormat: json outputParameters: - name: result type: object value: $. - name: newsletters-id path: /newsletters/{id}/ operations: - name: adminreadnewsletter method: GET description: Read a newsletter by ID outputRawFormat: json outputParameters: - name: result type: object value: $. - name: adminupdatenewsletter method: PUT description: Update a newsletter outputRawFormat: json outputParameters: - name: result type: object value: $. - name: offers path: /offers/ operations: - name: adminbrowseoffers method: GET description: Browse offers outputRawFormat: json outputParameters: - name: result type: object value: $. - name: admincreateoffer method: POST description: Create an offer outputRawFormat: json outputParameters: - name: result type: object value: $. - name: offers-id path: /offers/{id}/ operations: - name: adminreadoffer method: GET description: Read an offer by ID outputRawFormat: json outputParameters: - name: result type: object value: $. - name: adminupdateoffer method: PUT description: Update an offer outputRawFormat: json outputParameters: - name: result type: object value: $. - name: users path: /users/ operations: - name: adminbrowseusers method: GET description: Browse users inputParameters: - name: include in: query type: string description: Include related resources. Supports count.posts and roles. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: users-id path: /users/{id}/ operations: - name: adminreaduser method: GET description: Read a user by ID outputRawFormat: json outputParameters: - name: result type: object value: $. - name: webhooks path: /webhooks/ operations: - name: admincreatewebhook method: POST description: Create a webhook outputRawFormat: json outputParameters: - name: result type: object value: $. - name: webhooks-id path: /webhooks/{id}/ operations: - name: adminupdatewebhook method: PUT description: Update a webhook outputRawFormat: json outputParameters: - name: result type: object value: $. - name: admindeletewebhook method: DELETE description: Delete a webhook outputRawFormat: json outputParameters: - name: result type: object value: $. - name: images-upload path: /images/upload/ operations: - name: adminuploadimage method: POST description: Upload an image outputRawFormat: json outputParameters: - name: result type: object value: $. - name: themes-upload path: /themes/upload/ operations: - name: adminuploadtheme method: POST description: Upload a theme outputRawFormat: json outputParameters: - name: result type: object value: $. - name: themes-name-activate path: /themes/{name}/activate/ operations: - name: adminactivatetheme method: PUT description: Activate a theme inputParameters: - name: name in: path type: string required: true description: The name of the theme to activate outputRawFormat: json outputParameters: - name: result type: object value: $. - name: site path: /site/ operations: - name: adminreadsite method: GET description: Read site information outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest port: 8080 namespace: ghost-rest description: REST adapter for Ghost Admin API. resources: - path: /posts/ name: adminbrowseposts operations: - method: GET name: adminbrowseposts description: Browse posts call: ghost.adminbrowseposts outputParameters: - type: object mapping: $. - path: /posts/ name: admincreatepost operations: - method: POST name: admincreatepost description: Create a post call: ghost.admincreatepost outputParameters: - type: object mapping: $. - path: /posts/{id}/ name: adminreadpost operations: - method: GET name: adminreadpost description: Read a post by ID call: ghost.adminreadpost outputParameters: - type: object mapping: $. - path: /posts/{id}/ name: adminupdatepost operations: - method: PUT name: adminupdatepost description: Update a post call: ghost.adminupdatepost outputParameters: - type: object mapping: $. - path: /posts/{id}/ name: admindeletepost operations: - method: DELETE name: admindeletepost description: Delete a post call: ghost.admindeletepost outputParameters: - type: object mapping: $. - path: /pages/ name: adminbrowsepages operations: - method: GET name: adminbrowsepages description: Browse pages call: ghost.adminbrowsepages outputParameters: - type: object mapping: $. - path: /pages/ name: admincreatepage operations: - method: POST name: admincreatepage description: Create a page call: ghost.admincreatepage outputParameters: - type: object mapping: $. - path: /pages/{id}/ name: adminreadpage operations: - method: GET name: adminreadpage description: Read a page by ID call: ghost.adminreadpage outputParameters: - type: object mapping: $. - path: /pages/{id}/ name: adminupdatepage operations: - method: PUT name: adminupdatepage description: Update a page call: ghost.adminupdatepage outputParameters: - type: object mapping: $. - path: /pages/{id}/ name: admindeletepage operations: - method: DELETE name: admindeletepage description: Delete a page call: ghost.admindeletepage outputParameters: - type: object mapping: $. - path: /tags/ name: adminbrowsetags operations: - method: GET name: adminbrowsetags description: Browse tags call: ghost.adminbrowsetags outputParameters: - type: object mapping: $. - path: /tags/ name: admincreatetag operations: - method: POST name: admincreatetag description: Create a tag call: ghost.admincreatetag outputParameters: - type: object mapping: $. - path: /tags/{id}/ name: adminreadtag operations: - method: GET name: adminreadtag description: Read a tag by ID call: ghost.adminreadtag outputParameters: - type: object mapping: $. - path: /tags/{id}/ name: adminupdatetag operations: - method: PUT name: adminupdatetag description: Update a tag call: ghost.adminupdatetag outputParameters: - type: object mapping: $. - path: /tags/{id}/ name: admindeletetag operations: - method: DELETE name: admindeletetag description: Delete a tag call: ghost.admindeletetag outputParameters: - type: object mapping: $. - path: /members/ name: adminbrowsemembers operations: - method: GET name: adminbrowsemembers description: Browse members call: ghost.adminbrowsemembers outputParameters: - type: object mapping: $. - path: /members/ name: admincreatemember operations: - method: POST name: admincreatemember description: Create a member call: ghost.admincreatemember outputParameters: - type: object mapping: $. - path: /members/{id}/ name: adminreadmember operations: - method: GET name: adminreadmember description: Read a member by ID call: ghost.adminreadmember outputParameters: - type: object mapping: $. - path: /members/{id}/ name: adminupdatemember operations: - method: PUT name: adminupdatemember description: Update a member call: ghost.adminupdatemember outputParameters: - type: object mapping: $. - path: /members/{id}/ name: admindeletemember operations: - method: DELETE name: admindeletemember description: Delete a member call: ghost.admindeletemember outputParameters: - type: object mapping: $. - path: /tiers/ name: adminbrowsetiers operations: - method: GET name: adminbrowsetiers description: Browse tiers call: ghost.adminbrowsetiers outputParameters: - type: object mapping: $. - path: /tiers/ name: admincreatetier operations: - method: POST name: admincreatetier description: Create a tier call: ghost.admincreatetier outputParameters: - type: object mapping: $. - path: /tiers/{id}/ name: adminreadtier operations: - method: GET name: adminreadtier description: Read a tier by ID call: ghost.adminreadtier outputParameters: - type: object mapping: $. - path: /tiers/{id}/ name: adminupdatetier operations: - method: PUT name: adminupdatetier description: Update a tier call: ghost.adminupdatetier outputParameters: - type: object mapping: $. - path: /newsletters/ name: adminbrowsenewsletters operations: - method: GET name: adminbrowsenewsletters description: Browse newsletters call: ghost.adminbrowsenewsletters outputParameters: - type: object mapping: $. - path: /newsletters/ name: admincreatenewsletter operations: - method: POST name: admincreatenewsletter description: Create a newsletter call: ghost.admincreatenewsletter outputParameters: - type: object mapping: $. - path: /newsletters/{id}/ name: adminreadnewsletter operations: - method: GET name: adminreadnewsletter description: Read a newsletter by ID call: ghost.adminreadnewsletter outputParameters: - type: object mapping: $. - path: /newsletters/{id}/ name: adminupdatenewsletter operations: - method: PUT name: adminupdatenewsletter description: Update a newsletter call: ghost.adminupdatenewsletter outputParameters: - type: object mapping: $. - path: /offers/ name: adminbrowseoffers operations: - method: GET name: adminbrowseoffers description: Browse offers call: ghost.adminbrowseoffers outputParameters: - type: object mapping: $. - path: /offers/ name: admincreateoffer operations: - method: POST name: admincreateoffer description: Create an offer call: ghost.admincreateoffer outputParameters: - type: object mapping: $. - path: /offers/{id}/ name: adminreadoffer operations: - method: GET name: adminreadoffer description: Read an offer by ID call: ghost.adminreadoffer outputParameters: - type: object mapping: $. - path: /offers/{id}/ name: adminupdateoffer operations: - method: PUT name: adminupdateoffer description: Update an offer call: ghost.adminupdateoffer outputParameters: - type: object mapping: $. - path: /users/ name: adminbrowseusers operations: - method: GET name: adminbrowseusers description: Browse users call: ghost.adminbrowseusers outputParameters: - type: object mapping: $. - path: /users/{id}/ name: adminreaduser operations: - method: GET name: adminreaduser description: Read a user by ID call: ghost.adminreaduser outputParameters: - type: object mapping: $. - path: /webhooks/ name: admincreatewebhook operations: - method: POST name: admincreatewebhook description: Create a webhook call: ghost.admincreatewebhook outputParameters: - type: object mapping: $. - path: /webhooks/{id}/ name: adminupdatewebhook operations: - method: PUT name: adminupdatewebhook description: Update a webhook call: ghost.adminupdatewebhook outputParameters: - type: object mapping: $. - path: /webhooks/{id}/ name: admindeletewebhook operations: - method: DELETE name: admindeletewebhook description: Delete a webhook call: ghost.admindeletewebhook outputParameters: - type: object mapping: $. - path: /images/upload/ name: adminuploadimage operations: - method: POST name: adminuploadimage description: Upload an image call: ghost.adminuploadimage outputParameters: - type: object mapping: $. - path: /themes/upload/ name: adminuploadtheme operations: - method: POST name: adminuploadtheme description: Upload a theme call: ghost.adminuploadtheme outputParameters: - type: object mapping: $. - path: /themes/{name}/activate/ name: adminactivatetheme operations: - method: PUT name: adminactivatetheme description: Activate a theme call: ghost.adminactivatetheme with: name: rest.name outputParameters: - type: object mapping: $. - path: /site/ name: adminreadsite operations: - method: GET name: adminreadsite description: Read site information call: ghost.adminreadsite outputParameters: - type: object mapping: $. - type: mcp port: 9090 namespace: ghost-mcp transport: http description: MCP adapter for Ghost Admin API for AI agent use. tools: - name: adminbrowseposts description: Browse posts hints: readOnly: true destructive: false idempotent: true call: ghost.adminbrowseposts outputParameters: - type: object mapping: $. - name: admincreatepost description: Create a post hints: readOnly: false destructive: false idempotent: false call: ghost.admincreatepost outputParameters: - type: object mapping: $. - name: adminreadpost description: Read a post by ID hints: readOnly: true destructive: false idempotent: true call: ghost.adminreadpost outputParameters: - type: object mapping: $. - name: adminupdatepost description: Update a post hints: readOnly: false destructive: false idempotent: true call: ghost.adminupdatepost outputParameters: - type: object mapping: $. - name: admindeletepost description: Delete a post hints: readOnly: false destructive: true idempotent: true call: ghost.admindeletepost outputParameters: - type: object mapping: $. - name: adminbrowsepages description: Browse pages hints: readOnly: true destructive: false idempotent: true call: ghost.adminbrowsepages outputParameters: - type: object mapping: $. - name: admincreatepage description: Create a page hints: readOnly: false destructive: false idempotent: false call: ghost.admincreatepage outputParameters: - type: object mapping: $. - name: adminreadpage description: Read a page by ID hints: readOnly: true destructive: false idempotent: true call: ghost.adminreadpage outputParameters: - type: object mapping: $. - name: adminupdatepage description: Update a page hints: readOnly: false destructive: false idempotent: true call: ghost.adminupdatepage outputParameters: - type: object mapping: $. - name: admindeletepage description: Delete a page hints: readOnly: false destructive: true idempotent: true call: ghost.admindeletepage outputParameters: - type: object mapping: $. - name: adminbrowsetags description: Browse tags hints: readOnly: true destructive: false idempotent: true call: ghost.adminbrowsetags outputParameters: - type: object mapping: $. - name: admincreatetag description: Create a tag hints: readOnly: false destructive: false idempotent: false call: ghost.admincreatetag outputParameters: - type: object mapping: $. - name: adminreadtag description: Read a tag by ID hints: readOnly: true destructive: false idempotent: true call: ghost.adminreadtag outputParameters: - type: object mapping: $. - name: adminupdatetag description: Update a tag hints: readOnly: false destructive: false idempotent: true call: ghost.adminupdatetag outputParameters: - type: object mapping: $. - name: admindeletetag description: Delete a tag hints: readOnly: false destructive: true idempotent: true call: ghost.admindeletetag outputParameters: - type: object mapping: $. - name: adminbrowsemembers description: Browse members hints: readOnly: true destructive: false idempotent: true call: ghost.adminbrowsemembers outputParameters: - type: object mapping: $. - name: admincreatemember description: Create a member hints: readOnly: false destructive: false idempotent: false call: ghost.admincreatemember outputParameters: - type: object mapping: $. - name: adminreadmember description: Read a member by ID hints: readOnly: true destructive: false idempotent: true call: ghost.adminreadmember outputParameters: - type: object mapping: $. - name: adminupdatemember description: Update a member hints: readOnly: false destructive: false idempotent: true call: ghost.adminupdatemember outputParameters: - type: object mapping: $. - name: admindeletemember description: Delete a member hints: readOnly: false destructive: true idempotent: true call: ghost.admindeletemember outputParameters: - type: object mapping: $. - name: adminbrowsetiers description: Browse tiers hints: readOnly: true destructive: false idempotent: true call: ghost.adminbrowsetiers outputParameters: - type: object mapping: $. - name: admincreatetier description: Create a tier hints: readOnly: false destructive: false idempotent: false call: ghost.admincreatetier outputParameters: - type: object mapping: $. - name: adminreadtier description: Read a tier by ID hints: readOnly: true destructive: false idempotent: true call: ghost.adminreadtier outputParameters: - type: object mapping: $. - name: adminupdatetier description: Update a tier hints: readOnly: false destructive: false idempotent: true call: ghost.adminupdatetier outputParameters: - type: object mapping: $. - name: adminbrowsenewsletters description: Browse newsletters hints: readOnly: true destructive: false idempotent: true call: ghost.adminbrowsenewsletters outputParameters: - type: object mapping: $. - name: admincreatenewsletter description: Create a newsletter hints: readOnly: false destructive: false idempotent: false call: ghost.admincreatenewsletter outputParameters: - type: object mapping: $. - name: adminreadnewsletter description: Read a newsletter by ID hints: readOnly: true destructive: false idempotent: true call: ghost.adminreadnewsletter outputParameters: - type: object mapping: $. - name: adminupdatenewsletter description: Update a newsletter hints: readOnly: false destructive: false idempotent: true call: ghost.adminupdatenewsletter outputParameters: - type: object mapping: $. - name: adminbrowseoffers description: Browse offers hints: readOnly: true destructive: false idempotent: true call: ghost.adminbrowseoffers outputParameters: - type: object mapping: $. - name: admincreateoffer description: Create an offer hints: readOnly: false destructive: false idempotent: false call: ghost.admincreateoffer outputParameters: - type: object mapping: $. - name: adminreadoffer description: Read an offer by ID hints: readOnly: true destructive: false idempotent: true call: ghost.adminreadoffer outputParameters: - type: object mapping: $. - name: adminupdateoffer description: Update an offer hints: readOnly: false destructive: false idempotent: true call: ghost.adminupdateoffer outputParameters: - type: object mapping: $. - name: adminbrowseusers description: Browse users hints: readOnly: true destructive: false idempotent: true call: ghost.adminbrowseusers with: include: tools.include inputParameters: - name: include type: string description: Include related resources. Supports count.posts and roles. outputParameters: - type: object mapping: $. - name: adminreaduser description: Read a user by ID hints: readOnly: true destructive: false idempotent: true call: ghost.adminreaduser outputParameters: - type: object mapping: $. - name: admincreatewebhook description: Create a webhook hints: readOnly: false destructive: false idempotent: false call: ghost.admincreatewebhook outputParameters: - type: object mapping: $. - name: adminupdatewebhook description: Update a webhook hints: readOnly: false destructive: false idempotent: true call: ghost.adminupdatewebhook outputParameters: - type: object mapping: $. - name: admindeletewebhook description: Delete a webhook hints: readOnly: false destructive: true idempotent: true call: ghost.admindeletewebhook outputParameters: - type: object mapping: $. - name: adminuploadimage description: Upload an image hints: readOnly: false destructive: false idempotent: false call: ghost.adminuploadimage outputParameters: - type: object mapping: $. - name: adminuploadtheme description: Upload a theme hints: readOnly: false destructive: false idempotent: false call: ghost.adminuploadtheme outputParameters: - type: object mapping: $. - name: adminactivatetheme description: Activate a theme hints: readOnly: false destructive: false idempotent: true call: ghost.adminactivatetheme with: name: tools.name inputParameters: - name: name type: string description: The name of the theme to activate required: true outputParameters: - type: object mapping: $. - name: adminreadsite description: Read site information hints: readOnly: true destructive: false idempotent: true call: ghost.adminreadsite outputParameters: - type: object mapping: $. binds: - namespace: env keys: GHOST_TOKEN: GHOST_TOKEN