Skip to main content
Glama
bnbot-mcp-server

bnbot-mcp-server

by jackleeio

bnbot-mcp-server

MCP Server for BNBOT Chrome Extension - Control Twitter/X via AI assistants like OpenClaw or Claude Desktop.

Architecture

AI Assistant (OpenClaw / Claude Desktop)
    ↓ stdio (MCP protocol)
bnbot-mcp-server (local Node.js process)
    ↓↑ WebSocket (ws://localhost:18900)
BNBOT Chrome Extension
    ↓ DOM operations
Twitter/X

Related MCP server: Twitter MCP

Setup

1. Install BNBOT Chrome Extension

Install from the Chrome Web Store.

2. Enable OpenClaw Integration

In the BNBOT extension sidebar, open Settings and turn on the OpenClaw toggle.

3. Configure Your AI Assistant

OpenClaw / Claude Desktop

Add to your MCP config:

{
  "mcpServers": {
    "bnbot": {
      "command": "npx",
      "args": ["bnbot-mcp-server"]
    }
  }
}

Custom Port

{
  "mcpServers": {
    "bnbot": {
      "command": "npx",
      "args": ["bnbot-mcp-server", "--port", "9999"]
    }
  }
}

4. Use It

Ask your AI assistant:

  • "Scrape my Twitter timeline"

  • "Search for tweets about AI"

  • "Post a tweet saying hello world"

  • "Navigate to my bookmarks and scrape them"

Available Tools

Scrape

Tool

Description

scrape_timeline

Scrape tweets from the timeline

scrape_bookmarks

Scrape bookmarked tweets

scrape_search_results

Search and scrape results

scrape_current_view

Scrape currently visible tweets

scrape_thread

Scrape a tweet thread from URL

account_analytics

Get account analytics data

Tweet

Tool

Description

post_tweet

Post a tweet with optional images

post_thread

Post a thread of tweets

submit_reply

Reply to a tweet

quote_tweet

Quote a tweet with optional comment

Engagement

Tool

Description

like_tweet

Like a target tweet

retweet

Retweet a target tweet

follow_user

Follow a target user

Navigation

Tool

Description

navigate_to_tweet

Go to a specific tweet

navigate_to_search

Go to search page

navigate_to_bookmarks

Go to bookmarks

navigate_to_notifications

Go to notifications

navigate_to_following

Go to following timeline

return_to_timeline

Go back to timeline

Status

Tool

Description

get_extension_status

Check extension connection

get_current_page_info

Get current page info

Content

Tool

Description

fetch_wechat_article

Fetch and extract WeChat article content

fetch_tiktok_video

Fetch TikTok metadata and download video locally

fetch_xiaohongshu_note

Fetch Xiaohongshu note content and metadata

Article

Tool

Description

open_article_editor

Open X article editor via stable flow

fill_article_title

Fill article title field

fill_article_body

Fill article body (plain / markdown / html)

upload_article_header_image

Upload article header image

publish_article

Publish article (or keep draft)

create_article

End-to-end article creation flow

Testing

Use the MCP Inspector to test tools directly:

npx @modelcontextprotocol/inspector npx bnbot-mcp-server

License

MIT

Available Tools

31 tools
account_analyticsC

Get Twitter/X account analytics data for a date range.

Inputs: endDate, startDate, granularity.

create_articleA

Create and publish a Twitter/X article (long-form content). Handles the full flow: open editor, fill title, fill body, and optionally publish.

Inputs: title (required), content (required), format, publish, +2 more.

fetch_tiktok_videoB

Fetch TikTok video metadata including description, author info, and video download URL. Automatically downloads the video via the browser extension and saves it locally.

Inputs: url (required), savePath.

fetch_wechat_articleB

Fetch and extract content from a WeChat Official Account article. Returns markdown-formatted article content including title, author, and body text.

Inputs: url (required).

fetch_xiaohongshu_noteA

Fetch content from a Xiaohongshu (Little Red Book) note including text, images, author, and engagement metrics.

Inputs: url (required).

fill_article_bodyB

Fill article body in the current editor. Supports optional body images.

Inputs: content (required), format, bodyImages.

fill_article_titleB

Fill article title in the current Twitter/X article editor.

Inputs: title (required).

follow_userA

Follow a user on Twitter/X. If username is provided, navigates to their profile first. Otherwise follows the author of the currently open tweet.

Inputs: username.

get_current_page_infoB

Get information about the current page open in the Twitter/X tab (URL, page type, etc.).

Inputs: no named parameters.

get_extension_statusB

Check if the BNBOT Chrome extension is connected and get its current status.

Inputs: no named parameters.

like_tweetA

Like the tweet on the currently open tweet page. Navigate to the tweet first using navigate_to_tweet.

Inputs: no named parameters.

open_article_editorA

Open the Twitter/X article editor using the stable flow (navigate to compose page then click create).

Inputs: no named parameters.

post_threadC

Post a thread (multiple connected tweets) on Twitter/X.

Inputs: tweets (required), draftOnly.

post_tweetC

Post a new tweet on Twitter/X. Supports text and optional images/videos.

Inputs: text (required), media, draftOnly.

publish_articleC

Publish article or keep as draft (auto-save).

Inputs: asDraft, publish.

quote_tweetA

Quote tweet the currently open tweet with custom text. Navigate to the tweet first using navigate_to_tweet.

Inputs: text (required), media, draftOnly.

return_to_timelineA

Navigate back to the Twitter/X home timeline.

Inputs: no named parameters.

retweetA

Retweet/repost the tweet on the currently open tweet page. Navigate to the tweet first using navigate_to_tweet.

Inputs: no named parameters.

scrape_bookmarksA

Scrape bookmarked tweets from Twitter/X. Automatically navigates to the bookmarks page.

Inputs: limit.

scrape_current_viewA

Scrape tweets currently visible on the page without scrolling.

Inputs: no named parameters.

scrape_search_resultsB

Search for tweets and scrape the results. Navigates to search page with the given query.

Inputs: query (required), limit.

scrape_threadA

Scrape all tweets from a Twitter/X thread. Must be on a tweet detail page (/status/ URL). Collects all tweets by the same author, returns individual tweets and merged text.

Inputs: maxScrolls.

scrape_timelineA

Scrape tweets from the Twitter/X timeline. Returns tweet text, author, metrics, and URLs. Navigate to the timeline first if not already there.

Inputs: limit, scrollAttempts.

search_jobsB

Search for available jobs — tweet engagement campaigns with crypto rewards. Returns a list of active jobs you can complete to earn rewards.

Inputs: sort, type, limit, token, +3 more.

submit_replyB

Reply to a specific tweet. Navigate to the tweet first or provide the tweet URL.

Inputs: text (required), image, tweetUrl.

upload_article_header_imageA

Upload a header image in the current article editor. Supports URL/local path/data URL.

Inputs: headerImage (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.3/5.0

    Scored across 31 tools

    Disambiguation4/5

    Each tool largely targets a distinct action or resource (navigation, scraping, posting, engagement, article creation), and descriptions clarify boundaries. The only notable overlap is create_article duplicating the granular open_article_editor, fill_article_title, fill_article_body, upload_article_header_image, and publish_article tools, which could confuse an agent about which path to use.

    Naming Consistency4/5

    Predominantly consistent snake_case verb_noun pattern (e.g., post_tweet, scrape_timeline, navigate_to_tweet, fetch_wechat_article). Minor deviations exist: retweet lacks a noun, account_analytics has no verb, and return_to_timeline uses 'return' instead of 'navigate'. Still highly readable and mostly predictable.

    Tool Count2/5

    31 tools is above the typical 3-15 range, and the article workflow is unnecessarily split into six granular tools plus a redundant create_article wrapper. While the breadth of Twitter automation and cross-platform fetching justifies many tools, the count feels heavy and includes clear redundancy.

    Completeness4/5

    Core Twitter/X lifecycle is well covered: navigation, scraping, posting, replying, liking, retweeting, quoting, following, analytics, and long-form articles. Minor gaps exist (e.g., delete tweet, bookmark/unbookmark, direct messages, reading notifications), but agents can accomplish most stated goals.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      D
      maintenance
      An MCP server for interacting with the Twitter/X API v2, enabling AI assistants to retrieve tweets, post content, reply, quote, and more programmatically.
      2,203 npm
      13
      MIT
    • A
      license
      B
      quality
      D
      maintenance
      MCP server for interacting with the X platform (Twitter) via MCP clients like Claude, Cursor AI, and Windsurf AI.
      20
      18 npm
      6
      MIT
    • A
      license
      A
      quality
      B
      maintenance
      MCP server to read X (Twitter) posts, threads, replies, quotes, and search using your own logged-in session, no API key required.
      8
      177 PyPI
      4
      MIT