Skip to main content
Glama
741,764 tools. Updated 2026-11-04 08:50

"Pinterest social media platform" matching MCP tools:

  • List all connected social media accounts across all workspaces. Returns account IDs, platform types (INSTAGRAM, X, FACEBOOK, LINKEDIN, TIKTOK, YOUTUBE, THREADS, BLUESKY, PINTEREST, GOOGLE_BUSINESS, TELEGRAM), and account names. Use the returned account IDs when creating posts.
    ConnectorOAuth
  • Social Media Post Generator: Write platform-specific social media posts. (free, AI-generated, rate-limited).
    ConnectorNo auth
  • All-in-one brand name check: domain availability across TLDs, username availability across the major social platforms, an optional 0-100 brand score, and USPTO trademark screening. Returns JSON with per-TLD and per-platform results (each with an availability verdict and 0-1 confidence), availability summaries, brandScore, and trademark risk. Use namesniper_check_domains or namesniper_check_social instead when only one dimension is needed. Free without an API key (rate-limited; trademark is skipped and Instagram/TikTok/X return best-effort HTTP confidence); a paid key unlocks verified accuracy on those platforms plus trademark screening.
    ConnectorNo auth
  • Replaces the video or image behind a not-yet-published post (draft, ready, scheduled or failed) with another upload from the same workspace, like the dashboard's "Replace media". The post keeps its schedule, captions, first comments and platform settings; only the media file changes. Set `apply_to_batch: true` to also swap every other post in the same batch (same media, same status and, for scheduled posts, the same scheduled time), which is what you want when one upload was scheduled to several platforms at once. Upload the new file first with create_video_upload_from_url or create_video_upload + finalize_video_upload, then pass its id here. Refuses text posts, carousels, and posts that are queued, processing or published. Platform compatibility of the new file is not re-checked, so pick media that suits every platform in the batch.
    Connector
    Destructive
    OAuth
  • Generate an image or a video with FotoAI (fotoai.hu), paid with the user's OWN FotoAI credits. Call fotoai_quote first, tell the user the price, and pass its quote_id here only after the user agrees. Returns the generation id. The finished outputs are saved into this Postemi workspace's media library automatically. With wait_seconds (up to 50) the call waits for a short image and returns media paths directly; otherwise call fotoai_get_generation with the id until status is completed. Attach each media PATH to create_post. Pass an idempotencyKey (a UUID you invent per generation). If a call times out, repeat it with the SAME key: you get the same generation back and nothing is charged twice.
    ConnectorOAuth
  • Search a single network for posts matching a query, returned as the unified Post[] schema and tagged with its platform. Keyless on TikTok, YouTube, and Pinterest. Instagram, Twitter/X, Reddit, and Facebook need operator-side credentials (returns credentials_required until set). Snapchat and Threads do not support keyless search (returns not_supported); LinkedIn is quarantined. To fan one query across every network at once, use search_all.
    ConnectorNo auth

Matching MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    A local MCP service for safely preparing, validating, and executing multi-platform social media auto-publishing, with dry-run mode and real adapter for Douyin.
    6
    1
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Extracts images, gifs, videos, and search results from Pinterest without authentication. Supports search, pin details, board pins, related pins, autocomplete, and media downloads.
    6
    26 npm
    1
    MIT

Matching MCP Connectors

  • Update a DRAFT or SCHEDULED post in place; any other status fails with "Cannot edit post in current state", so published posts cannot be changed. Updates are partial: text, contentType, scheduledAt, timezone, thumbnail fields, firstComments and platformThumbnails you omit keep their values; sending firstComments or platformThumbnails replaces every stored entry. The exception is platforms: sending it rebuilds the post's target set from this request alone, so include every connection-id array and platform config you want to keep (TikTok with privacyLevel, Pinterest with its boardId or boardName); omitting platforms leaves accounts, configs, and media untouched. mediaUrls only take effect together with platforms; use publicUrl values from upload_media. On SCHEDULED posts new media is verified in storage. Returns the updated post record. Use publish_draft to change a draft's status, unschedule_post to take a scheduled post off the calendar, delete_post to cancel, and create_post for a new post.
    Connector
    Destructive
    OAuth
  • Score landing-page copy for conversion: 0-100 with a 5-part breakdown (headline, value proposition, social proof, CTA, friction), the top 3 issues, and 3 quick-win rewrites. Use for a page's text. URLs are not fetched; paste the text. For social posts, use predict-viral-potential. Pay-per-call: $0.06 USDC on Base via x402. Without a payment-signature header the call returns an error whose data carries the payment terms.
    ConnectorNo auth
  • Pinterest performance metrics for one published pin over a date range. Use after a pin has been published for a while to report impressions, saves and clicks. For the whole account use get_account_analytics; for publish status use get_pin. Returns pin_id, pinterest_pin_id, account_id, start_date, end_date, provider_mode, totals (each metric summed over the range, lowercase names), daily rows (empty with include_daily=false; pass that when the totals are enough), source (stored or live) and data_as_of for stored reads. total_comments and total_reactions are lifetime counts on live reads and 0 on stored reads, which do not keep them: use source=live for comments and reactions. They read 0 on every daily row, since Pinterest does not report them per day. A pin deleted on Pinterest is answered from stored history with removed_from_pinterest_at set, and fails with pin_removed_on_pinterest when none is stored. Fails with not_found for an unknown pin and with pin_not_published for a pin that has not published yet; sandbox pins return zeroed metrics.
    ConnectorAPI key
  • Draft a change to the link behind the listing's Book button. Links set by a booking provider cannot be changed here. Social media and Google links are refused because they are not booking pages. Creates a DRAFT only — nothing on Google changes. Show the owner the draft this returns, word for word, and publish it with publish_change only after they say yes.
    ConnectorNo auth
  • Edit a draft or scheduled post before it publishes: set or change scheduled_at (must be in the future), change captions, or replace media. Published or publishing posts can't be edited. Provide at least one of scheduled_at, variant_updates, media_urls. Setting scheduled_at on a draft schedules it: the same checks as create_post apply (plan limits, connected accounts) and the post keeps its id. A caption for a platform with no connected account is left out and listed in skipped.
    Connector
    Destructive
    OAuth
  • One TikTok video with its engagement: views, likes, comments, shares and its length. Use when: a row from a search or a listing is worth the detail, or you have a URL and nothing else. Not for: what was said in it, use tiktok_get_transcript. The replies, use tiktok_get_comments. Returns: Record. rows[]: the one video, with author and author_followers, created_at, text (cut at 2000 characters), likes, comments, shares, saves, views, media, duration_s, links, transcript and top_comments[]. saves is how many people saved it; music is the sound and collaborators the branded-content partners. null or empty = the platform does not publish it. Cost: 10 credits when the vendor has to fetch the media, 1 when it does not. The estimate is the higher one, so max_credits never surprises you. Cached 6 hours. Example: {"url": "https://www.tiktok.com/@gymshark/video/7517114944362499342"}
    ConnectorAPI key
  • One Facebook post with its reactions, comments, shares and views. Use when: a row is worth the detail, or you have a URL and nothing else. Not for: the comments themselves, use facebook_get_comments. What is said in a video, use facebook_get_transcript. Returns: Record. rows[]: the one post, with author and author_followers, created_at, text (cut at 2000 characters), likes, comments, shares, saves, views, media, duration_s, links, transcript and top_comments[]. null or empty = the platform does not publish it. Cost: 1 credit. Cached 6 hours. Example: {"url": "https://www.facebook.com/reel/1535656380759655"}
    ConnectorAPI key
  • Returns all groups of the organization the user can access, ordered by name, each with the number of social accounts. Groups are workspaces (brands, clients, projects) that hold social accounts, posts and labels. Call it first to find group IDs for other tools. Use get_social_accounts with group_id to list the accounts of a group. A null approval_workflow means the group inherits the organization approval_workflow from get_organization, it does not mean no approval.
    ConnectorOAuth
  • Exports a deck's slides as PNG files at each slide's real pixels — a square post at 1080×1080, a story at 1080×1920, a leaderboard at 728×90 — ready to upload to an ad platform or a social post. One slide comes back as a PNG; several as a .zip named by deck, slide and size. Hidden slides are left out. The file is saved to the workspace's files; give the user `downloadUrl` (it opens for anyone signed in to the workspace) and say it's also in their files. Slide numbers and the workspace mark aren't drawn. For a PDF or PowerPoint, the user exports from the deck's File menu.
    ConnectorNo auth
  • Exports a deck's slides as PNG files at each slide's real pixels — a square post at 1080×1080, a story at 1080×1920, a leaderboard at 728×90 — ready to upload to an ad platform or a social post. One slide comes back as a PNG; several as a .zip named by deck, slide and size. Hidden slides are left out. The file is saved to the workspace's files; give the user `downloadUrl` (it opens for anyone signed in to the workspace) and say it's also in their files. Slide numbers and the workspace mark aren't drawn. For a PDF or PowerPoint, the user exports from the deck's File menu.
    ConnectorNo auth
  • Step 1 of adding a site to Blawgy. Crawls a domain that is not yet set up and returns what onboarding would suggest: a business description, audience and tone options, competitor domains, the detected business type and search market, and any physical locations found. Nothing is saved. Spends a few LLM calls and takes 15-40 seconds; set includeKeywordPreview=true for a sample of keyword topics too (adds about a minute and DataForSEO spend). Fails if the domain is already registered to an account or is a social/platform site. Review or edit the suggestions, then call create_site.
    ConnectorOAuth
  • Create 1-12 new photo-post drafts in Soclo from supplied content: each a new draft id, an owned Library image assetId and its mediaUri, a caption and scheduledFor (kept only as a proposed time). Without confirm:true, previews and saves nothing; with confirm:true, saves the batch once and returns its receipt. Does not overwrite a draft, generate media or captions, schedule, publish or contact social accounts. Keep batchId, draftRevision and clientRequestId for soclo_posts_recover_drafts. Free; needs plan:create.
    ConnectorOAuth
  • Use this when the user asks how well one of their boards covers a keyword or topic, or when auditing whether a board is on-topic. Scores a board's own live Pinterest content against a keyword and returns the Pins that earned the score, each with its own relevance. This reads the board's real Pins from Pinterest, not just what Tailwind scheduled to it, so it covers Pins added outside Tailwind too. Metered: each scored call spends one plan credit, so score the board once and reuse the result rather than re-calling per question. A board that returns state "absent" yielded no readable Pins — it is empty, or the Pinterest connection needs reconnecting — and is not charged; report that as unknown coverage, never as poor coverage. Large boards are scored from a capped sample; when truncated is true say the score covers part of the board. If the user did not say which Pinterest account to use and list_accounts returns more than one, ask the user which account to use before calling this — do not choose for them.
    ConnectorOAuth
  • Save drafts. Nothing is sent: schedule_post or publish_post does that. One account: `text` + `account_id`; `variants` adds up to 3 alternative versions for that account, each its own draft. Several accounts: `posts`, one entry per draft, each with its own copy. Entries on different accounts are one post with a version per account (sent together with `post_ids`); entries repeating an account are separate posts. The result carries `characterCount` / `characterLimit` (`overLimit` when the text cannot publish), and, when they apply: `mediaRequired` (TikTok and YouTube need a video, Instagram and Pinterest an image or video), `derivedTitle` (YouTube takes the first 100 characters unless `platform_options.title` is set), `settingsRequired` (TikTok's audience is chosen by the user at `settingsUrl`), `pinterestBoard`, and `similarRecent`: this account's posts from the last 30 days that read nearly the same, which the user hears about before it goes out (no need to list posts to check for duplicates). Args: text: Post copy. @handle links by itself on X, Threads, Instagram (max 20 per caption), TikTok, YouTube, Bluesky (full handle, e.g. @name.bsky.social), Mastodon (@name on the same server, @name@server elsewhere) and Telegram channels; on Facebook, Pinterest, Discord and Google Business Profile it stays plain text; on LinkedIn it links only with `user_tags`. account_id: Social-account id (from list_social_accounts), not a platform name. hashtags: Appended to the text as #tags, counted in its limit (YouTube: video tags). A list or comma/space-separated string. goal: e.g. "Educate", "Engage", "Promote", "Entertain". scheduled_for: ISO 8601. Proposes a time on the draft; only schedule_post schedules. `proposedTimeConflict` in the result means the account's daily cap refuses that time; propose its `nextFreeAt`. campaign_id: The `campaignId` of a post made with `posts`: this draft becomes one more account's version of it. user_tags: LinkedIn company: [{company: "<its LinkedIn Page URL>"}] with "@<Company name>" in the text; Antwork finds the Page and links its exact name. LinkedIn people can't be looked up, only the user's own connected accounts. Instagram people on the media: [{username, platform: "instagram", type: "photo_tag", x, y (0-1 from left/top), mediaIndex (carousel photo, 0-based)}]; a photo needs x/y (centre if omitted), a reel takes the username only, a story either. Tagged accounts must be public; `recentTags` in get_post_context lists handles tagged before. The result's `tagChecks` shows each handle as found on Instagram or `unchecked` (personal accounts can't be looked up; still taggable). pinterest_board_id: Pinterest only, from `boards` in get_post_context. Omitted = the account's first board. platform_options: Only what the user asked for. Instagram: publishType ("timeline" | "story"; a reel is "timeline" with a video), postToGrid, coverUrl (a Reel's cover image, https). Facebook: publishType ("timeline" | "story"; a story is one photo or one video, its text is not shown). Pinterest: pinTitle (≤100), link (the pin's destination URL, https). YouTube: privacyStatus ("public" | "unlisted" | "private"), title (≤100), categoryId (e.g. "22", "28"), madeForKids, containsSyntheticMedia (realistic content made or altered with AI), thumbnailUrl (custom thumbnail, JPEG/PNG under 2 MB, https; needs a phone-verified channel). TikTok settings are set by the user at `settingsUrl`, not here. variants: Up to 3 alternative versions for the same account. workspace_id: Workspace ID or name. Optional if user has only one workspace. media_urls: Media for the draft (every draft, with `posts`): library URLs, or public https links to a file, fetched into the library first as add_media(url=...) does. Saves the add_media call when moving posts in from another tool. posts: Several drafts in one call, instead of `text` + `account_id`: `[{"account_id": str, "text": str}]`, each entry optionally with `hashtags`, `goal`, `user_tags`, `pinterest_board_id`, `platform_options`. Each account's copy is written in its own voice; there is no shared body.
    ConnectorOAuth
  • Shows what Xyla would post for an online store, with no Xyla account. Give it the store's web address (Shopify or WooCommerce). Xyla reads the store's brand (logo, colours, niche) and makes 3 sample social media posts from the store's own product photos, with captions. Returns a preview token at once; the posts take about 3 minutes and the card shows them as they finish. A store previewed in the last 7 days gets its earlier samples back. When no card is shown, call preview_status with the token to follow it. A store that already uses Xyla gets a sign-in link instead.
    ConnectorNo auth