Skip to content
Back to OpenTweet

Card snapshot

opentweet.io · 2026-10-02 05:46:19 UTC · e64a69eb66b83cb7b663d227b53be4a0224e805c95815a87a2506adf6dc443e7

This is a frozen copy of the agent's agent-card.json as we observed it at the timestamp above. We capture a new snapshot every time the card's content hash changes. Useful for: forensic drift analysis, verifying downstream callers see the right version, reproducing routing decisions made historically.

{
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-07-09/server.schema.json",
  "name": "OpenTweet",
  "description": "Post and schedule to X, Bluesky and LinkedIn via MCP. Create, schedule and publish posts and threads, view X analytics, run an evergreen content queue, find inspiration, and generate AI images and video, all from your AI assistant.",
  "url": "https://opentweet.io",
  "documentation_url": "https://opentweet.io/twitter-mcp-server",
  "source_url": "https://github.com/opentweetio/mcp-server",
  "npm_package": "@opentweet/mcp-server",
  "version": "1.3.0",
  "protocol_version": "2025-06-18",
  "remotes": [
    {
      "type": "streamable-http",
      "url": "https://mcp.opentweet.io/mcp",
      "headers": [
        {
          "name": "Authorization",
          "description": "Bearer token using your OpenTweet API key (ot_ prefix). Get one at https://opentweet.io/developer",
          "is_required": true,
          "is_secret": true
        }
      ]
    }
  ],
  "capabilities": {
    "tools": true,
    "resources": true,
    "prompts": true
  },
  "tools": [
    {
      "name": "opentweet_create_tweet",
      "description": "Create a tweet. Can save as draft, schedule for a specific time, or publish immediately to X."
    },
    {
      "name": "opentweet_create_thread",
      "description": "Create a Twitter/X thread (multiple connected tweets posted as a chain)."
    },
    {
      "name": "opentweet_list_tweets",
      "description": "List your tweets with optional filtering by status. Returns paginated results."
    },
    {
      "name": "opentweet_get_tweet",
      "description": "Get full details of a specific tweet by its ID."
    },
    {
      "name": "opentweet_update_tweet",
      "description": "Update an existing tweet. Can change text, category, schedule, or media. Cannot edit already-posted tweets."
    },
    {
      "name": "opentweet_delete_tweet",
      "description": "Permanently delete a tweet. If the tweet was published to X, it is also deleted from X by default."
    },
    {
      "name": "opentweet_publish_tweet",
      "description": "Publish an existing draft or scheduled tweet immediately to X/Twitter."
    },
    {
      "name": "opentweet_schedule_tweet",
      "description": "Schedule an existing draft tweet for a specific date and time."
    },
    {
      "name": "opentweet_batch_schedule",
      "description": "Schedule multiple tweets at once. Provide an array of post IDs with their scheduled dates."
    },
    {
      "name": "opentweet_repurpose_tweet",
      "description": "Repurpose an existing tweet with AI, transforming it into your own voice. Saves the result as a draft by default."
    },
    {
      "name": "opentweet_upload_media",
      "description": "Upload an image or video file to use in tweets. Returns a URL for create_tweet/update_tweet media_urls."
    },
    {
      "name": "opentweet_generate_image",
      "description": "Generate an AI image from a text prompt using Grok Imagine (xAI). Returns a permanent URL ready to use in tweets."
    },
    {
      "name": "opentweet_generate_video",
      "description": "Generate an AI video from a text prompt using Grok Imagine (xAI). Starts the job and polls until complete."
    },
    {
      "name": "opentweet_get_analytics",
      "description": "Get your posting analytics including stats, streaks, trends, category breakdown, and recent activity."
    },
    {
      "name": "opentweet_get_top_posts",
      "description": "Get your top-performing tweets ranked by engagement or another metric."
    },
    {
      "name": "opentweet_get_profile_growth",
      "description": "Get your profile growth metrics over time (followers and engagement trends)."
    },
    {
      "name": "opentweet_get_best_times",
      "description": "Get the best times to post on X based on your historical engagement data."
    },
    {
      "name": "opentweet_analyze_best_times",
      "description": "Trigger a fresh analysis of your posting history to find the best times to post."
    },
    {
      "name": "opentweet_get_content_gaps",
      "description": "Get your content gaps \u2014 topics and angles you have not covered recently."
    },
    {
      "name": "opentweet_search_inspiration",
      "description": "Search X/Twitter for high-performing tweets to find content inspiration, with engagement metrics."
    },
    {
      "name": "opentweet_get_account",
      "description": "Get your OpenTweet account status: subscription plan, daily posting limits, post counts, and connected X accounts."
    },
    {
      "name": "opentweet_list_accounts",
      "description": "List your connected X/Twitter accounts. Use the account IDs with the x_account_id parameter in other tools."
    },
    {
      "name": "opentweet_get_evergreen_settings",
      "description": "Get your evergreen queue settings and pool statistics."
    },
    {
      "name": "opentweet_update_evergreen_settings",
      "description": "Update evergreen queue settings: active state, posts per day, posting times, and default cooldown."
    },
    {
      "name": "opentweet_list_evergreen_posts",
      "description": "List posts in your evergreen pool that will be automatically reposted on rotation."
    },
    {
      "name": "opentweet_get_evergreen_post",
      "description": "Get full details of a specific evergreen post including its recent publishing history."
    },
    {
      "name": "opentweet_add_to_evergreen",
      "description": "Add a post to the evergreen queue pool, by existing post ID or as new evergreen text."
    },
    {
      "name": "opentweet_update_evergreen_post",
      "description": "Update an evergreen post \u2014 its content, cooldown, or paused state."
    },
    {
      "name": "opentweet_remove_from_evergreen",
      "description": "Remove a post from the evergreen pool. The post is converted back to a regular draft, not deleted."
    },
    {
      "name": "opentweet_get_evergreen_history",
      "description": "View the publishing history of evergreen posts \u2014 clones created and posted from the pool."
    },
    {
      "name": "opentweet_create_article",
      "description": "Create a long-form X Article with a title and markdown body. Save as draft or schedule for later."
    },
    {
      "name": "opentweet_get_article",
      "description": "Get full details of a specific X Article by its ID."
    },
    {
      "name": "opentweet_list_articles",
      "description": "List your X Articles with optional status filtering."
    },
    {
      "name": "opentweet_update_article",
      "description": "Update an existing X Article: title, body, or schedule. Cannot edit already-published articles."
    },
    {
      "name": "opentweet_publish_article",
      "description": "Publish a draft or scheduled X Article immediately. Requires an X Premium account (any Premium tier)."
    },
    {
      "name": "opentweet_delete_article",
      "description": "Delete an X Article. If it was published, it is also removed from X."
    }
  ],
  "install": {
    "hosted": {
      "url": "https://mcp.opentweet.io/mcp",
      "config": {
        "mcpServers": {
          "opentweet": {
            "type": "streamable-http",
            "url": "https://mcp.opentweet.io/mcp",
            "headers": {
              "Authorization": "Bearer YOUR_API_KEY"
            }
          }
        }
      }
    },
    "npx": "npx -y @opentweet/mcp-server",
    "config": {
      "mcpServers": {
        "opentweet": {
          "command": "npx",
          "args": [
            "-y",
            "@opentweet/mcp-server"
          ],
          "env": {
            "OPENTWEET_API_KEY": "YOUR_API_KEY"
          }
        }
      }
    }
  },
  "auth": {
    "type": "api_key",
    "env_var": "OPENTWEET_API_KEY",
    "instructions": "Get your API key at https://opentweet.io/developer"
  },
  "categories": [
    "social-media",
    "content-creation",
    "twitter",
    "scheduling",
    "marketing"
  ],
  "pricing": {
    "model": "freemium",
    "free_tier": "7-day trial",
    "paid_from": "$11.99/month"
  }
}