Notipo

Publish to self-hosted WordPress from AI agents: markdown, images, SEO, and Notion sync.

我該用這個嗎

品質與安全性

A
說明品質
95%
結構描述完整度
72%
命名品質
98%
汙染風險
100%
權限相符程度
100%
協定合規性
100%

根據工具定義與協定合規性的自動化分析。

上下文成本

~2,845Token(工具定義)
~2.1 KB典型回應大小
顯著的注意力影響(128k 上下文的 2.22%)

這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。

安裝

一鍵安裝

將以下內容加入你的 `claude_desktop_config.json` 檔案:

{
  "mcpServers": {
    "notipo": {
      "url": "https://app.notipo.com/api/mcp"
    }
  }
}

遠端端點

https://app.notipo.com/api/mcpstreamable-http

它能做什麼

工具清單

工具(13)

🟢 唯讀🟡 寫入🔴 刪除⚪ 未知
🟢list_posts

List all posts for your Notipo account. Returns title, status, WordPress URL, category, and timestamps.

輸入結構描述

{
  "type": "object",
  "properties": {},
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "posts": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "status": {
            "type": "string",
            "description": "DRAFT | PUBLISHED | SYNCED | FAILED, etc."
          },
          "wpUrl": {
            "type": [
              "string",
              "null"
            ]
          },
          "category": {
            "type": [
              "string",
              "null"
            ]
          },
          "createdAt": {
            "type": "string"
          },
          "updatedAt": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "title",
          "status",
          "wpUrl",
          "category",
          "createdAt",
          "updatedAt"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "posts"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_post(postId)

Get details of a specific post by ID, including status, WordPress URL, and category.

輸入結構描述

{
  "type": "object",
  "properties": {
    "postId": {
      "type": "string",
      "description": "The post ID"
    }
  },
  "required": [
    "postId"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "title": {
      "type": "string"
    },
    "status": {
      "type": "string",
      "description": "DRAFT | PUBLISHED | SYNCED | FAILED, etc."
    },
    "wpUrl": {
      "type": [
        "string",
        "null"
      ]
    },
    "category": {
      "type": [
        "string",
        "null"
      ]
    },
    "createdAt": {
      "type": "string"
    },
    "updatedAt": {
      "type": "string"
    },
    "wpPostId": {
      "type": [
        "number",
        "null"
      ]
    },
    "notionPageId": {
      "type": [
        "string",
        "null"
      ]
    }
  },
  "required": [
    "id",
    "title",
    "status",
    "wpUrl",
    "category",
    "createdAt",
    "updatedAt",
    "wpPostId",
    "notionPageId"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡create_post(title, body, category, tags, seoKeyword, ...)

Create a new blog post. Creates a Notion page and triggers sync to WordPress. The body should be markdown. Set publish=true to publish immediately, or leave false to create a draft.

輸入結構描述

{
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "Post title"
    },
    "body": {
      "type": "string",
      "description": "Post content in markdown"
    },
    "category": {
      "type": "string",
      "description": "Category name"
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Tag names"
    },
    "seoKeyword": {
      "type": "string",
      "description": "SEO focus keyword"
    },
    "seoDescription": {
      "type": "string",
      "maxLength": 160,
      "description": "Custom meta description for SEO (max 160 chars). Auto-derived from content if not set."
    },
    "slug": {
      "type": "string",
      "description": "Custom URL slug"
    },
    "publish": {
      "type": "boolean",
      "default": false,
      "description": "Publish immediately (true) or create as draft (false)"
    }
  },
  "required": [
    "title"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "jobId": {
      "type": "string",
      "description": "Use get_job to poll status"
    },
    "notionPageId": {
      "type": "string"
    }
  },
  "required": [
    "jobId",
    "notionPageId"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡direct_publish(title, body, category, tags, seoKeyword, ...)

Publish a blog post directly to WordPress without Notion. Handles image uploads, Gutenberg conversion, featured image generation, and SEO metadata. Body must be markdown. Set publish=true to go live, false for draft. Use this instead of create_post when you don't need Notion.

輸入結構描述

{
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "Post title"
    },
    "body": {
      "type": "string",
      "description": "Post content in markdown (required)"
    },
    "category": {
      "type": "string",
      "description": "Category name"
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Tag names"
    },
    "seoKeyword": {
      "type": "string",
      "description": "SEO focus keyword"
    },
    "seoDescription": {
      "type": "string",
      "maxLength": 160,
      "description": "Custom meta description for SEO (max 160 chars)"
    },
    "imageTitle": {
      "type": "string",
      "description": "Featured image title/text overlay"
    },
    "slug": {
      "type": "string",
      "description": "Custom URL slug"
    },
    "publish": {
      "type": "boolean",
      "default": false,
      "description": "Publish immediately (true) or create as draft (false)"
    }
  },
  "required": [
    "title",
    "body"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "jobId": {
      "type": "string",
      "description": "Use get_job to poll status"
    }
  },
  "required": [
    "jobId"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡update_post(postId, title, body, category, tags, ...)

Update an existing post's content or properties in Notion, then re-sync to WordPress. Only provided fields are updated.

輸入結構描述

{
  "type": "object",
  "properties": {
    "postId": {
      "type": "string",
      "description": "The post ID to update"
    },
    "title": {
      "type": "string",
      "description": "New title"
    },
    "body": {
      "type": "string",
      "description": "New content in markdown (replaces entire body)"
    },
    "category": {
      "type": "string",
      "description": "New category name"
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "New tag names"
    },
    "seoKeyword": {
      "type": "string",
      "description": "New SEO focus keyword"
    },
    "seoDescription": {
      "type": "string",
      "maxLength": 160,
      "description": "New meta description for SEO (max 160 chars)"
    },
    "slug": {
      "type": "string",
      "description": "New URL slug"
    },
    "publish": {
      "type": "boolean",
      "description": "Set true to also publish after updating"
    }
  },
  "required": [
    "postId"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "jobId": {
      "type": "string",
      "description": "Use get_job to poll status"
    }
  },
  "required": [
    "jobId"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡publish_post(postId)

Publish a draft post to WordPress (make it live).

輸入結構描述

{
  "type": "object",
  "properties": {
    "postId": {
      "type": "string",
      "description": "The post ID to publish"
    }
  },
  "required": [
    "postId"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "jobId": {
      "type": "string",
      "description": "Use get_job to poll status"
    }
  },
  "required": [
    "jobId"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🔴delete_post(postId)

Delete a post from Notipo, WordPress, and reset the Notion page status. This cannot be undone.

輸入結構描述

{
  "type": "object",
  "properties": {
    "postId": {
      "type": "string",
      "description": "The post ID to delete"
    }
  },
  "required": [
    "postId"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "deleted": {
      "type": "boolean"
    }
  },
  "required": [
    "deleted"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_categories

List all WordPress categories synced to Notipo. Use these names when creating posts.

輸入結構描述

{
  "type": "object",
  "properties": {},
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "categories": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "wpCategoryId": {
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name",
          "wpCategoryId"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "categories"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_tags

List all WordPress tags synced to Notipo. Use these names when creating posts.

輸入結構描述

{
  "type": "object",
  "properties": {},
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "tags": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "wpTagId": {
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name",
          "wpTagId"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "tags"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_job(jobId)

Check the status of a sync or publish job. Returns status (PENDING, RUNNING, COMPLETED, FAILED), progress steps, and any error message.

輸入結構描述

{
  "type": "object",
  "properties": {
    "jobId": {
      "type": "string",
      "description": "The job ID returned from create_post, update_post, or publish_post"
    }
  },
  "required": [
    "jobId"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "type": {
      "type": "string",
      "description": "SYNC_POST | PUBLISH_POST"
    },
    "status": {
      "type": "string",
      "description": "PENDING | RUNNING | COMPLETED | FAILED"
    },
    "error": {
      "type": [
        "string",
        "null"
      ]
    },
    "createdAt": {
      "type": "string"
    },
    "completedAt": {
      "type": [
        "string",
        "null"
      ]
    },
    "result": {
      "anyOf": [
        {},
        {
          "type": "null"
        }
      ]
    },
    "startedAt": {
      "type": [
        "string",
        "null"
      ]
    },
    "post": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "id": {
              "type": "string"
            },
            "title": {
              "type": "string"
            },
            "status": {
              "type": "string"
            },
            "wpUrl": {
              "type": [
                "string",
                "null"
              ]
            }
          },
          "required": [
            "id",
            "title",
            "status",
            "wpUrl"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "id",
    "type",
    "status",
    "error",
    "createdAt",
    "completedAt",
    "startedAt",
    "post"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_jobs(status, limit)

List recent sync and publish jobs. Useful for monitoring pipeline activity.

輸入結構描述

{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "PENDING",
        "RUNNING",
        "COMPLETED",
        "FAILED"
      ],
      "description": "Filter by job status"
    },
    "limit": {
      "type": "number",
      "minimum": 1,
      "maximum": 50,
      "default": 10,
      "description": "Number of jobs to return (default 10)"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "jobs": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "description": "SYNC_POST | PUBLISH_POST"
          },
          "status": {
            "type": "string",
            "description": "PENDING | RUNNING | COMPLETED | FAILED"
          },
          "error": {
            "type": [
              "string",
              "null"
            ]
          },
          "createdAt": {
            "type": "string"
          },
          "completedAt": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "type",
          "status",
          "error",
          "createdAt",
          "completedAt"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "jobs"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_settings

Get your Notipo account configuration: which services are connected (Notion, WordPress), current plan, feature settings, and trigger statuses.

輸入結構描述

{
  "type": "object",
  "properties": {},
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "notionConnected": {
      "type": "boolean"
    },
    "wordpressConnected": {
      "type": "boolean"
    },
    "plan": {
      "type": "string",
      "description": "FREE | TRIAL | PRO"
    },
    "wpSeoPlugin": {
      "type": [
        "string",
        "null"
      ],
      "description": "RANK_MATH | YOAST | SEOPRESS | AIOSEO"
    },
    "codeHighlighter": {
      "type": [
        "string",
        "null"
      ]
    }
  },
  "required": [
    "notionConnected",
    "wordpressConnected",
    "plan",
    "wpSeoPlugin",
    "codeHighlighter"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪sync_now

Trigger an immediate sync from Notion. Checks for any posts with trigger statuses and queues sync jobs. Pro plan only. Has a 15-second cooldown between calls.

輸入結構描述

{
  "type": "object",
  "properties": {},
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "triggered": {
      "type": "boolean"
    },
    "message": {
      "type": "string"
    }
  },
  "required": [
    "triggered",
    "message"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

社群

為此伺服器評分

證據

近期觀測

已驗證未記錄版本13 個工具
已驗證未記錄版本13 個工具