Skip to main content
Glama
amydojo

pinterest-mcp

by amydojo

pinterest-mcp

A guarded remote MCP bridge for publishing original Pinterest Pins without living in the Pinterest UI.

Current status

v0.1 implements the Pinterest API + MCP safety core. It is designed for Amy/LabDojo's own Pinterest business account and defaults to dry-run.

MCP tools

  • pinterest_status — 安全性/設定状態を読み取る

  • list_boards — ボードを読み取る

  • get_pin — Pin の直接読み戻し

  • preview_pin — 検証と重複チェックを行い、書き込みは一切行わない

  • publish_pin — live モードでのみ画像 Pin を1件作成する

  • publish_batch — 順次実行の制限付きバッチで、最大10件の Pin

  • create_board — live モードでのみボードを1件作成する

There are deliberately no update or delete tools in v0.1.

Related MCP server: Andrew Social Bridge

Safety contract

  1. PINTEREST_WRITE_MODE=dry-run がデフォルトです。

  2. リモート MCP エンドポイントは MCP_BRIDGE_TOKEN ベアラー認証を必要とします。

  3. Pin の宛先は PINTEREST_ALLOWED_LINK_HOSTS(デフォルトでは Etsy)に制限されます。

  4. Pin 画像は HTTPS を使用する必要があります。

  5. API 呼び出しの前に Pinterest のフィールド制限が適用されます。タイトル 100、説明 800、代替テキスト 500、リンク 2048 文字です。

  6. 作成前に、ブリッジは対象ボードに同じ正規化されたタイトル + 宛先リンクを持つ既存の Pin がないかを確認します。

  7. 作成後、ブリッジは返された Pin ID を読み戻し、ボード、タイトル、宛先を検証します。

  8. バッチ書き込みは順次実行され、最大 10 件に制限されます。

  9. シークレットを Git、Notion、Figma、Drive ドキュメント、チャットの記録に置くべきではありません。

Authentication

このブリッジはアプリ所有者自身のアカウントを自動化するため、MVP は Pinterest の Client Credentials を使用します。デプロイの環境変数には、アプリ ID とアプリシークレットのみを保存してください。この許可タイプでは Pinterest が 2 要素認証を要求します。

リクエストするスコープ:

  • boards:read

  • boards:write

  • pins:read

  • pins:write

サーバーは必要に応じてアクセストークンを発行してキャッシュします。長期間有効なアクセストークンがコミットされることはありません。

Pinterest developer prerequisites

  1. Pinterest ビジネスアカウントを使用し、メールを確認します。

  2. アカウント/アプリ所有者に対して 2FA を有効にします。

  3. Pinterest 開発者アプリを登録し、API アクセスをリクエストします。

  4. トライアルアクセスでは Pin の作成を試せますが、作成した Pin は作成者にのみ表示されます。標準アクセスが公開自動化の本番ターゲットです。

  5. App ID と App Secret はデプロイのシークレットにのみコピーします。

Environment

.env.example をコピーして設定します:

PINTEREST_APP_ID=...
PINTEREST_APP_SECRET=...
PINTEREST_WRITE_MODE=dry-run
PINTEREST_DEFAULT_BOARD_ID=...
PINTEREST_ALLOWED_LINK_HOSTS=etsy.com,www.etsy.com
MCP_BRIDGE_TOKEN=<random 24+ char secret>

Deploy

このリポジトリは Vercel 対応です。

  • ヘルスチェック: /health

  • MCP: /mcp

MCP エンドポイントはステートレスな Streamable HTTP を使用するため、サーバーレスインフラストラクチャ上で問題なく動作します。

Image delivery

Pinterest は公開 HTTPS の image_url から画像 Pin を作成できます。非公開の Google Drive ファイルは非公開のままにし、Pinterest の直接メディアソースとしては無効です。

計画されている Remy ワークフロー:

Drive approved master -> posting derivative -> controlled public asset URL -> preview_pin -> publish_pin/publish_batch -> Pinterest readback -> Notion status

公開配信レイヤーは意図的に真実の源泉から分離されています。Drive が信頼できるアーカイブとして残ります。

Remy Relics

examples/remy-relics-parked-evidence-batch.json には、最初の4件のオブジェクト Pin が手動で投稿された後も保留されたままの4件の証拠 Pin が含まれています。それらの画像 URL は、制御された公開メディアレイヤーが接続されるまで意図的に空白になっています。

Local checks

npm install
npm run check

Production rule

以下のすべてが満たされるまで、PINTEREST_WRITE_MODE=live に切り替えないでください:

  • Pinterest アプリのアクセスが承認されている

  • ボード ID が API の読み戻しで検証されている

  • メディア URL が承認された最終的な派生物である

  • preview_pin が衝突なしと表示する

  • タイトル/説明/代替テキスト/リンクが正規のものと一致する

そのうえで、範囲を限定して書き込み、Pin ID を検証し、1回限りのメンテナンスを行うときはブリッジを dry-run に戻してください。

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    A safety-gated MCP bridge for the Instagram API, enabling read-only profile and recent-post access and draft preparation of image posts with human approval for publishing.
    Apache 2.0
  • A
    license
    A
    quality
    C
    maintenance
    A minimal MCP server for the Pinterest API v5 that reads boards, pins, and analytics and publishes new pins and boards, with human sign-off required before any public changes.
    8
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Read-only MCP server for exposing Pinterest boards, sections, pins, and imagery as a visual reference library. Enables ChatGPT and other clients to list, search, and retrieve Pinterest content through natural language.
    MIT