X (Twitter) MCP server

by rafaljanicki

X (Twitter) MCP-сервер

Сервер Model Context Protocol (MCP) для взаимодействия с Twitter (X) через инструменты ИИ. Этот сервер позволяет вам получать твиты, публиковать твиты, искать в Twitter, управлять подписчиками и многое другое, все с помощью команд естественного языка в инструментах ИИ.

Функции

  • Извлекайте профили пользователей, подписчиков и списки подписчиков.
  • Публикуйте, удаляйте и добавляйте в избранное твиты.
  • Поищите твиты и тенденции в Twitter.
  • Управляйте закладками и временными шкалами.
  • Встроенная обработка ограничения скорости для API Twitter.
  • Использует API Twitter v2 с надлежащей аутентификацией (ключи и токены API), избегая взлома имени пользователя и пароля, что сводит к минимуму риск блокировки аккаунта.
  • Обеспечивает полную реализацию конечных точек Twitter API v2 для управления пользователями, твитами, лентами новостей и функциями поиска.

Предпосылки

  • Python 3.10 или выше : убедитесь, что в вашей системе установлен Python.
  • Учетная запись разработчика Twitter : вам потребуются учетные данные API (ключ API, секрет API, токен доступа, секрет токена доступа и токен носителя) с портала разработчиков Twitter .
  • Дополнительно: Claude Desktop : загрузите и установите приложение Claude Desktop с веб-сайта Anthropic .
  • Дополнительно: Node.js (для интеграции MCP): требуется для запуска серверов MCP в Claude Desktop.
  • Менеджер пакетов, например uv или pip для зависимостей Python.

Установка

Вариант 1: Установка через Smithery (рекомендуется)

Чтобы автоматически установить сервер X (Twitter) MCP для Claude Desktop через Smithery :

npx -y @smithery/cli install @rafaljanicki/x-twitter-mcp-server --client claude

Вариант 2: Установка из PyPI

Самый простой способ установить x-twitter-mcp — через PyPI:

pip install x-twitter-mcp

Вариант 3: Установка из исходного кода

Если вы предпочитаете установку из исходного репозитория:

  1. Клонировать репозиторий :
    git clone https://github.com/rafaljanicki/x-twitter-mcp-server.git cd x-twitter-mcp-server
  2. Настройка виртуальной среды (необязательно, но рекомендуется):
    python -m venv .venv source .venv/bin/activate # On Windows: .venv\Scripts\activate
  3. Установка зависимостей : с использованием uv (рекомендуется, так как проект использует uv.lock ):
    uv sync
    Альтернативно, используя pip :
    pip install .
  4. Настройте переменные среды :
    • Создайте файл .env в корне проекта (можно скопировать .env.example , если он есть).
    • Добавьте свои учетные данные Twitter API:
      TWITTER_API_KEY=your_api_key TWITTER_API_SECRET=your_api_secret TWITTER_ACCESS_TOKEN=your_access_token TWITTER_ACCESS_TOKEN_SECRET=your_access_token_secret TWITTER_BEARER_TOKEN=your_bearer_token

Запуск сервера

Запустить сервер можно двумя способами:

Вариант 1: использование скрипта CLI

Проект определяет CLI-скрипт x-twitter-mcp-server .

Если установлено из PyPI:

x-twitter-mcp-server

Если установлено из исходного кода с uv :

uv run x-twitter-mcp-server

Вариант 2: использование FastMCP напрямую (только исходный код)

Если вы выполнили установку из исходного кода и предпочитаете запустить сервер с использованием режима разработки FastMCP:

fastmcp dev src/x_twitter_mcp/server.py

Сервер запустится и будет прослушивать соединения MCP. Вы должны увидеть вывод вроде:

Starting TwitterMCPServer...

Использование с Claude Desktop

Чтобы использовать этот сервер MCP с Claude Desktop, вам нужно настроить Claude для подключения к серверу. Выполните следующие шаги:

Шаг 1: Установка Node.js

Claude Desktop использует Node.js для запуска MCP-серверов. Если у вас не установлен Node.js:

  • Загрузите и установите Node.js с nodejs.org .
  • Проверьте установку:
    node --version

Шаг 2: Найдите конфигурацию рабочего стола Claude

Claude Desktop использует файл claude_desktop_config.json для настройки серверов MCP.

  • Windows : %APPDATA%\Claude\claude_desktop_config.json
  • macOS : ~/Library/Application Support/Claude/claude_desktop_config.json

Если файл не существует, создайте его.

Шаг 3: Настройте сервер MCP

Отредактируйте claude_desktop_config.json , чтобы включить сервер x-twitter-mcp . Замените /path/to/x-twitter-mcp-server на фактический путь к каталогу вашего проекта (если установлен из исходников) или путь к исполняемому файлу Python (если установлен из PyPI).

Если установлено из PyPI:

{ "mcpServers": { "x-twitter-mcp": { "command": "x-twitter-mcp-server", "args": [], "env": { "PYTHONUNBUFFERED": "1", "TWITTER_API_KEY": "your_api_key", "TWITTER_API_SECRET": "your_api_secret", "TWITTER_ACCESS_TOKEN": "your_access_token", "TWITTER_ACCESS_TOKEN_SECRET": "your_access_token_secret", "TWITTER_BEARER_TOKEN": "your_bearer_token" } } } }

Если установлено из исходного кода с uv :

{ "mcpServers": { "x-twitter-mcp": { "command": "uv", "args": [ "--directory", "/path/to/x-twitter-mcp-server", "run", "x-twitter-mcp-server" ], "env": { "PYTHONUNBUFFERED": "1" } } } }
  • "command": "x-twitter-mcp-server" : использует скрипт CLI напрямую, если установлен из PyPI.
  • "env" : Если установлено из PyPI, вам может потребоваться указать переменные среды непосредственно в конфигурации (так как нет файла .env ). Если установлено из исходного кода, будет использоваться файл .env .
  • "env": {"PYTHONUNBUFFERED": "1"} : обеспечивает отсутствие буферизации выходных данных для лучшего ведения журнала в Claude.

Шаг 4: Перезагрузите Claude Desktop.

  • Полностью закройте Claude Desktop.
  • Повторно откройте Claude Desktop, чтобы загрузить новую конфигурацию.

Шаг 5: Проверка подключения

  • Откройте рабочий стол Клода.
  • Найдите значок молотка или соединителя в области ввода (нижний правый угол). Это означает, что доступны инструменты MCP.
  • Щелкните значок, чтобы увидеть доступные инструменты из x-twitter-mcp , такие как post_tweet , search_twitter , get_user_profile и т. д.

Шаг 6: Тест с Клодом

Теперь вы можете взаимодействовать с Twitter, используя естественный язык в Claude Desktop. Вот несколько примеров подсказок:

  • Получить профиль пользователя :
    Get the Twitter profile for user ID 123456.
    Клод вызовет инструмент get_user_profile и вернет данные пользователя.
  • Опубликовать твит :
    Post a tweet saying "Hello from Claude Desktop! #MCP"
    Клод воспользуется инструментом post_tweet , чтобы опубликовать твит и подтвердить действие.
  • Поиск в Твиттере :
    Search Twitter for recent tweets about AI.
    Клод вызовет инструмент search_twitter и вернет релевантные твиты.
  • Получить тенденции :
    What are the current trending topics on Twitter?
    Клод будет использовать инструмент get_trends для получения актуальных тем.

При появлении соответствующего запроса предоставьте Клоду разрешение на использование инструментов MCP для сеанса чата.

Доступные инструменты

Ниже приведен список всех инструментов, предоставляемых сервером x-twitter-mcp , а также примеры выполнения в Claude Desktop с использованием подсказок на естественном языке.

Инструменты управления пользователями

get_user_profile
  • Описание : Получите подробную информацию о профиле пользователя.
  • Пример рабочего стола Клода :
    Get the Twitter profile for user ID 123456789.
    Клод вернет данные профиля пользователя, включая идентификатор, имя, имя пользователя, URL-адрес изображения профиля и описание.
get_user_by_screen_name
  • Описание : Выбирает пользователя по его экранному имени.
  • Пример рабочего стола Клода :
    Get the Twitter user with screen name "example_user".
    Клод вернет данные профиля пользователя.
get_user_by_id
  • Описание : Выбирает пользователя по идентификатору.
  • Пример рабочего стола Клода :
    Fetch the Twitter user with ID 987654321.
    Клод вернет данные профиля пользователя.
get_user_followers
  • Описание : Возвращает список подписчиков указанного пользователя.
  • Пример рабочего стола Клода :
    Get the followers of user ID 123456789, limit to 50.
    Клод вернет список из 50 подписчиков.
get_user_following
  • Описание : Извлекает пользователей, на которых подписан указанный пользователь.
  • Пример рабочего стола Клода :
    Who is user ID 123456789 following? Limit to 50 users.
    Клод вернет список из 50 пользователей.
get_user_followers_you_know
  • Описание : Возвращает список общих подписчиков.
  • Пример рабочего стола Клода :
    Get common followers for user ID 123456789, limit to 50.
    Клод вернет список из 50 общих подписчиков (смоделированных путем фильтрации подписчиков).
get_user_subscriptions
  • Описание : Извлекает список пользователей, на которые подписан указанный пользователь.
  • Пример рабочего стола Клода :
    Get the subscriptions for user ID 123456789, limit to 50.
    Клод вернет список из 50 пользователей (используя подписку в качестве прокси для подписок).

Инструменты управления твитами

post_tweet
  • Описание : Опубликуйте твит с дополнительными медиафайлами, ответом и тегами.
  • Пример рабочего стола Клода :
    Post a tweet saying "Hello from Claude Desktop! #MCP"
    Клод опубликует твит и вернет данные о твите.
delete_tweet
  • Описание : Удалить твит по его идентификатору.
  • Пример рабочего стола Клода :
    Delete the tweet with ID 123456789012345678.
    Клод удалит твит и подтвердит действие.
get_tweet_details
  • Описание : Получите подробную информацию о конкретном твите.
  • Пример рабочего стола Клода :
    Get details for tweet ID 123456789012345678.
    Клод вернет данные твита, включая идентификатор, текст, дату создания и идентификатор автора.
create_poll_tweet
  • Описание : Создайте твит с опросом.
  • Пример рабочего стола Клода :
    Create a poll tweet with the question "What's your favorite color?" and options "Red", "Blue", "Green" for 60 minutes.
    Клод создаст твит с опросом и вернет данные твита.
vote_on_poll
  • Описание : Проголосуйте в опросе.
  • Пример рабочего стола Клода :
    Vote "Blue" on the poll in tweet ID 123456789012345678.
    Клод вернет фиктивный ответ (поскольку Twitter API v2 не поддерживает опросное голосование).
favorite_tweet
  • Описание : Добавляет твит в избранное.
  • Пример рабочего стола Клода :
    Like the tweet with ID 123456789012345678.
    Клод добавит твит в избранное и подтвердит действие.
unfavorite_tweet
  • Описание : Удаляет твит из избранного.
  • Пример рабочего стола Клода :
    Unlike the tweet with ID 123456789012345678.
    Клод удалит твит из избранного и подтвердит действие.
bookmark_tweet
  • Описание : Добавляет твит в закладки.
  • Пример рабочего стола Клода :
    Bookmark the tweet with ID 123456789012345678.
    Клод добавит твит в закладки и подтвердит действие.
delete_bookmark
  • Описание : Удаляет твит из закладок.
  • Пример рабочего стола Клода :
    Remove the bookmark for tweet ID 123456789012345678.
    Клод удалит закладку и подтвердит действие.
delete_all_bookmarks
  • Описание : Удаляет все закладки.
  • Пример рабочего стола Клода :
    Delete all my Twitter bookmarks.
    Клод удалит все закладки и подтвердит действие.

Временная шкала и инструменты поиска

get_timeline
  • Описание : Получайте твиты из своей домашней ленты (Для вас).
  • Пример рабочего стола Клода :
    Show my Twitter For You timeline, limit to 20 tweets.
    Клод вернет до 20 твитов из вашей ленты «Для вас».
get_latest_timeline
  • Описание : Получайте твиты из своей домашней ленты (Подписки).
  • Пример рабочего стола Клода :
    Show my Twitter Following timeline, limit to 20 tweets.
    Клод вернет до 20 твитов из вашей ленты «Подписки».
search_twitter
  • Описание : Поиск в Twitter по запросу.
  • Пример рабочего стола Клода :
    Search Twitter for recent tweets about AI, limit to 10.
    Клод вернет до 10 последних твитов об ИИ.
  • Описание : Находит популярные темы в Twitter.
  • Пример рабочего стола Клода :
    What are the current trending topics on Twitter? Limit to 10.
    Клод вернет до 10 популярных тем.
get_highlights_tweets
  • Описание : Извлекает выделенные твиты из ленты пользователя.
  • Пример рабочего стола Клода :
    Get highlighted tweets from user ID 123456789, limit to 20.
    Клод вернет до 20 твитов из ленты пользователя (симулированных как основные моменты).
get_user_mentions
  • Описание : Получите твиты, в которых упоминается конкретный пользователь.
  • Пример рабочего стола Клода :
    Get tweets mentioning user ID 123456789, limit to 20.
    Клод вернет до 20 твитов, в которых упоминается пользователь.

Поиск неисправностей

  • Сервер не запускается :
    • Убедитесь, что ваш файл .env содержит все необходимые учетные данные Twitter API (если он установлен из источника).
    • Если установлена из PyPI, убедитесь, что переменные среды заданы в claude_desktop_config.json или в вашей оболочке.
    • Проверьте вывод терминала на наличие ошибок при запуске x-twitter-mcp-server .
    • Убедитесь, что uv или исполняемый файл Python правильно установлены и доступны.
  • Клод не обнаруживает сервер :
    • Убедитесь, что путь в claude_desktop_config.json правильный.
    • Убедитесь, что command и args указывают на правильный исполняемый файл и скрипт.
    • Перезапустите Claude Desktop после обновления файла конфигурации.
    • Проверьте журналы режима разработчика Клода (Справка → Включить режим разработчика → Открыть файл журнала MCP) на наличие ошибок.
  • Ошибки ограничения скорости :
    • Сервер включает обработку ограничений скорости, но если вы достигнете ограничений API Twitter, вам, возможно, придется подождать окна сброса (например, 15 минут для действий с твитами).
  • Предупреждения о синтаксисе :
    • Если вы видите сообщения SyntaxWarning от Tweepy, они вызваны проблемами docstring в Tweepy с Python 3.13. Сервер включает подавление предупреждений для решения этой проблемы.

Внося вклад

Вклады приветствуются! Пожалуйста, откройте issue или отправьте pull request в репозитории GitHub .

Лицензия

Этот проект лицензирован по лицензии MIT. Подробности см. в файле LICENSE .

Автор

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

X (Twitter) MCP-сервер

  1. Функции
    1. Предпосылки
      1. Установка
        1. Вариант 1: Установка через Smithery (рекомендуется)
        2. Вариант 2: Установка из PyPI
        3. Вариант 3: Установка из исходного кода
      2. Запуск сервера
        1. Вариант 1: использование скрипта CLI
        2. Вариант 2: использование FastMCP напрямую (только исходный код)
      3. Использование с Claude Desktop
        1. Шаг 1: Установка Node.js
        2. Шаг 2: Найдите конфигурацию рабочего стола Claude
        3. Шаг 3: Настройте сервер MCP
        4. Шаг 4: Перезагрузите Claude Desktop.
        5. Шаг 5: Проверка подключения
        6. Шаг 6: Тест с Клодом
      4. Доступные инструменты
        1. Инструменты управления пользователями
        2. Инструменты управления твитами
        3. Временная шкала и инструменты поиска
      5. Поиск неисправностей
        1. Внося вклад
          1. Лицензия
            1. Автор

              Related MCP Servers

              • A
                security
                A
                license
                A
                quality
                A Model Context Protocol (MCP) server for managing social media posts, currently supporting X (formerly Twitter).
                Last updated -
                3
                7
                JavaScript
                MIT License
              • A
                security
                A
                license
                A
                quality
                An MCP server that allows Claude to create, manage and publish X/Twitter posts directly through the chat interface.
                Last updated -
                5
                35
                Python
                MIT License
                • Apple
              • A
                security
                A
                license
                A
                quality
                An MCP server that enables Claude to interact with Twitter, allowing for posting tweets and searching Twitter content.
                Last updated -
                2
                108
                195
                TypeScript
                MIT License
                • Apple
              • -
                security
                A
                license
                -
                quality
                A headless MCP server that provides Twitter API access without requiring local credential setup, enabling core Twitter operations like searching tweets, getting user tweets, posting tweets, and replying to tweets.
                Last updated -
                Python
                MIT License

              View all related MCP servers

              MCP directory API

              We provide all the information about MCP servers via our MCP API.

              curl -X GET 'https://glama.ai/api/mcp/v1/servers/rafaljanicki/x-twitter-mcp-server'

              If you have feedback or need assistance with the MCP directory API, please join our Discord server