{
  "name": "x-twitter",
  "display_name": "X (Twitter)",
  "description": "Create, manage and publish X/Twitter posts directly through Claude chat.",
  "repository": {
    "type": "git",
    "url": "https://github.com/vidhupv/x-mcp"
  },
  "homepage": "https://github.com/vidhupv/x-mcp",
  "author": {
    "name": "vidhupv"
  },
  "license": "MIT",
  "categories": [
    "Messaging"
  ],
  "tags": [
    "Twitter",
    "X"
  ],
  "installations": {
    "uvx": {
      "type": "uvx",
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/vidhupv/x-mcp",
        "x-mcp"
      ],
      "env": {
        "TWITTER_API_KEY": "${TWITTER_API_KEY}",
        "TWITTER_API_SECRET": "${TWITTER_API_SECRET}",
        "TWITTER_ACCESS_TOKEN": "${TWITTER_ACCESS_TOKEN}",
        "TWITTER_ACCESS_TOKEN_SECRET": "${TWITTER_ACCESS_TOKEN_SECRET}"
      }
    }
  },
  "examples": [
    {
      "title": "Tweet",
      "description": "Example of sending a tweet through Claude chat.",
      "prompt": "Tweet 'Just learned how to tweet through AI - mind blown! \ud83e\udd16\u2728'"
    },
    {
      "title": "Create Thread",
      "description": "Create a thread about a specific topic.",
      "prompt": "Create a thread about the history of pizza"
    },
    {
      "title": "Show Drafts",
      "description": "Request to see draft tweets.",
      "prompt": "Show me my draft tweets"
    },
    {
      "title": "Publish Draft",
      "description": "Publish an existing draft.",
      "prompt": "Publish this draft!"
    },
    {
      "title": "Delete Draft",
      "description": "Delete a specific draft.",
      "prompt": "Delete that draft"
    }
  ],
  "arguments": {
    "TWITTER_API_KEY": {
      "description": "The API key for accessing Twitter's API.",
      "required": true,
      "example": "your_api_key"
    },
    "TWITTER_API_SECRET": {
      "description": "The API secret key for accessing Twitter's API.",
      "required": true,
      "example": "your_api_secret"
    },
    "TWITTER_ACCESS_TOKEN": {
      "description": "The access token for authorizing the application to access Twitter on behalf of the user.",
      "required": true,
      "example": "your_access_token"
    },
    "TWITTER_ACCESS_TOKEN_SECRET": {
      "description": "The access token secret for authorizing the application to access Twitter on behalf of the user.",
      "required": true,
      "example": "your_access_token_secret"
    }
  },
  "tools": [
    {
      "name": "create_draft_tweet",
      "description": "Create a draft tweet",
      "inputSchema": {
        "type": "object",
        "properties": {
          "content": {
            "type": "string",
            "description": "The content of the tweet"
          }
        },
        "required": [
          "content"
        ]
      }
    },
    {
      "name": "create_draft_thread",
      "description": "Create a draft tweet thread",
      "inputSchema": {
        "type": "object",
        "properties": {
          "contents": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "An array of tweet contents for the thread"
          }
        },
        "required": [
          "contents"
        ]
      }
    },
    {
      "name": "list_drafts",
      "description": "List all draft tweets and threads",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "required": []
      }
    },
    {
      "name": "publish_draft",
      "description": "Publish a draft tweet or thread",
      "inputSchema": {
        "type": "object",
        "properties": {
          "draft_id": {
            "type": "string",
            "description": "ID of the draft to publish"
          }
        },
        "required": [
          "draft_id"
        ]
      }
    },
    {
      "name": "delete_draft",
      "description": "Delete a draft tweet or thread",
      "inputSchema": {
        "type": "object",
        "properties": {
          "draft_id": {
            "type": "string",
            "description": "ID of the draft to delete"
          }
        },
        "required": [
          "draft_id"
        ]
      }
    }
  ]
}