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 :
Вариант 2: Установка из PyPI
Самый простой способ установить x-twitter-mcp
— через PyPI:
Вариант 3: Установка из исходного кода
Если вы предпочитаете установку из исходного репозитория:
Клонировать репозиторий :
git clone https://github.com/rafaljanicki/x-twitter-mcp-server.git cd x-twitter-mcp-serverНастройка виртуальной среды (необязательно, но рекомендуется):
python -m venv .venv source .venv/bin/activate # On Windows: .venv\Scripts\activateУстановка зависимостей : с использованием
uv
(рекомендуется, так как проект используетuv.lock
):uv syncАльтернативно, используя
pip
:pip install .Настройте переменные среды :
Создайте файл
.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:
Если установлено из исходного кода с uv
:
Вариант 2: использование FastMCP напрямую (только исходный код)
Если вы выполнили установку из исходного кода и предпочитаете запустить сервер с использованием режима разработки FastMCP:
Сервер запустится и будет прослушивать соединения MCP. Вы должны увидеть вывод вроде:
Использование с 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:
Если установлено из исходного кода с uv
:
"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 последних твитов об ИИ.
get_trends
Описание : Находит популярные темы в 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
.
Автор
Рафал Яницкий - rafal@kult.io
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.
Tools
X (Twitter) MCP-сервер
- Функции
- Предпосылки
- Установка
- Запуск сервера
- Использование с Claude Desktop
- Доступные инструменты
- Поиск неисправностей
- Внося вклад
- Лицензия
- Автор
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityWeatherXM Pro MCP ServerLast updated -86MIT License
- MIT License