Skip to main content
Glama
Rumble MCP

Rumble MCP

by AndrewHossam

Rumble MCP

CI npm version npm downloads License: MIT

⚠️ Disclaimer: This tool requires a valid subscription to TheRumble.app. It is intended for personal use only. Any misuse of this tool is not the responsibility of the developer. By using this tool, you agree to comply with TheRumble's terms of service.

An MCP (Model Context Protocol) server that provides AI assistants with access to TheRumble.app investment research data for the Egyptian stock market (EGX).

Quick Install

Related MCP server: Financial Modeling Prep MCP Server

Features

Feature

Description

📈 Fundamental Calls

Long-term investment recommendations with target prices, analyst ratings, and performance metrics

📊 Technical Calls

Short-term trading signals with entry, target, and stop-loss prices

🏆 Track Records

Historical performance and alpha vs EGX30 benchmark

📋 Asset Lists

Curated portfolios: RFP, Bottom Fisher, and RSP

Installation

Option 1: npx (No Installation Required)

npx rumble-mcp

Option 2: Global Install

npm install -g rumble-mcp

Option 3: From Source

git clone https://github.com/AndrewHossam/rumble-mcp.git
cd rumble-mcp
npm install && npm run build
npm link  # Makes 'rumble-mcp' globally available

Getting Your Credentials

TheRumble uses Firebase authentication. To prevent your token from expiring every hour, you should use both an ID token and a Refresh token.

Run the helper script to get both:

npx rumble-mcp extract-token
# OR inside the project
npm run extract-token

Paste the generated script into your browser console on therumble.app. It will give you the .env content to copy.

Why use a refresh token?

  • Without it: Credentials expire in 1 hour

  • With it: The MCP auto-refreshes your session indefinitely 🚀


IDE & AI Client Setup

VS Code / VS Code Insiders

  1. Click the Install in VS Code button above, or

  2. Open Settings (Cmd+,) → search "MCP" → Add server configuration:

{
  "mcp": {
    "servers": {
      "rumble": {
        "command": "npx",
        "args": ["rumble-mcp"],
        "env": {
          "RUMBLE_FIREBASE_TOKEN": "your_firebase_token",
          "RUMBLE_REFRESH_TOKEN": "your_refresh_token",
          "RUMBLE_MARKET": "EGY"
        }
      }
    }
  }
}

Cursor

  1. Click the Install in Cursor button above, or

  2. Go to Settings → MCP Servers → Add:

{
  "rumble": {
    "command": "npx",
    "args": ["rumble-mcp"],
    "env": {
      "RUMBLE_FIREBASE_TOKEN": "your_firebase_token",
      "RUMBLE_REFRESH_TOKEN": "your_refresh_token",
      "RUMBLE_MARKET": "EGY"
    }
  }
}

Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "rumble": {
      "command": "npx",
      "args": ["rumble-mcp"],
      "env": {
        "RUMBLE_FIREBASE_TOKEN": "your_firebase_token",
        "RUMBLE_REFRESH_TOKEN": "your_refresh_token",
        "RUMBLE_MARKET": "EGY"
      }
    }
  }
}

Claude Code (Anthropic)

claude mcp add rumble -- npx rumble-mcp

Then set your tokens:

export RUMBLE_FIREBASE_TOKEN="your_firebase_token"
export RUMBLE_REFRESH_TOKEN="your_refresh_token"
export RUMBLE_MARKET="EGY"  # Optional, defaults to EGY

🤖 Other AI Clients (Windsurf, Continue, etc.)

Most MCP-compatible clients follow a similar pattern:

{
  "name": "rumble",
  "command": "npx",
  "args": ["rumble-mcp"],
  "env": {
    "RUMBLE_FIREBASE_TOKEN": "your_firebase_token",
    "RUMBLE_REFRESH_TOKEN": "your_refresh_token",
    "RUMBLE_MARKET": "EGY"
  }
}

Available Tools

Tool

Category

Description

get_fundamental_calls

Discovery

List active fundamental investment calls

get_technical_calls

Discovery

List active technical trading calls

get_call_details

Details

Get full details for any call (fundamental/technical) by ID

get_fundamental_track_record

Insights

Fundamental track record (avg return, alpha vs index, holding period)

get_technical_track_record

Insights

Technical track record (hit ratio, avg win/loss, holding period)

get_latest_releases

Insights

Latest content releases

get_rfp_portfolio

Portfolios

Rumble Fundamental Portfolio (long-term picks)

get_bottom_fisher_portfolio

Portfolios

Bottom Fisher Portfolio (undervalued stocks)

get_rsp_portfolio

Portfolios

Rumble Shariah Portfolio (Shariah-compliant)

list_known_portfolios

Portfolios

List all known portfolio aliases

get_call_details Usage

  • Parameters: callId (required), type (optional: fundamental/technical), sections (optional: ["story", "performance", "updates"])

  • Example:

    {"callId": "call_id_here", "sections": ["performance", "updates"]}

Example Usage

Once configured, ask your AI assistant:

"What are the current active fundamental calls on Rumble?"

"Get full details for call_id_here"

"Show me just the performance and updates for that symbol"

"Get the Bottom Fisher portfolio"


Environment Variables

Variable

Required

Description

RUMBLE_FIREBASE_TOKEN

✅ Yes

Your Firebase ID token from therumble.app

RUMBLE_REFRESH_TOKEN

Recommended

Firebase refresh token for automatic token renewal

RUMBLE_MARKET

No

Market code (default: EGY for Egypt)

RUMBLE_DEVICE_ID

No

Stable device ID for request headers (auto-generated if omitted)

RUMBLE_SESSION_ID

No

Stable session ID for request headers (auto-generated if omitted)

FIREBASE_API_KEY

No

Public Firebase Web API key for token refresh (falls back to the built-in default)


Development

# Clone and setup
git clone https://github.com/AndrewHossam/rumble-mcp.git
cd rumble-mcp
npm install

# Development mode (hot reload)
npm run dev

# Build for production
npm run build

# Run tests
npm test

Developer Workflow & Safety

This project includes automated safety checks to prevent breaking changes:

  • Pre-commit Hooks: Automatically lint and format staged files on every commit; a pre-push hook runs the full validation suite (lint, format, typecheck, tests, prod audit).

  • CI/CD: GitHub Actions automatically verifies builds and types on every push and pull request.

  • Publish Safety: The project is locked to automatically run a fresh build before npm publish to ensure users always get the latest code.


Support & Sponsorship

If you find this MCP useful, consider supporting the project:

License

MIT © 2026


Available Tools

11 tools
get_asset_listB

Get a curated portfolio/asset list from TheRumble by ID or alias.

Inputs: listId (required).

get_bottom_fisher_portfolioC

Get the Bottom Fisher Portfolio - Undervalued stocks with high upside potential.

Inputs: no named parameters.

get_call_detailsA

Get detailed information about a specific investment call (fundamental or technical).

Returns comprehensive data including:

  • Basic info: ID, title, status, action/recommendation

  • Asset: Stock symbol (ticker), company name, industry, icon

  • Prices: Start/current/target prices, buy range (for technical)

  • Story: Full investment thesis and analysis

  • Performance: Current price vs start, remaining upside

  • Updates: Historical updates and revisions from analysts

Use the 'sections' parameter to filter which data to return.

Inputs: callId (required), type, sections.

get_fundamental_callsA

Get a list of active fundamental investment calls from TheRumble. Returns stock recommendations with target prices, performance, and analyst info. Use get_call_details for full details on a specific call.

Inputs: skip, limit, market, status.

get_fundamental_track_recordA

Get the overall track record for fundamental calls, including average return, alpha vs benchmark, and hit ratio.

Inputs: market.

get_latest_releasesB

Get the latest content releases and updates for fundamental calls.

Inputs: market.

get_rfp_portfolioA

Get the Rumble Fundamental Portfolio (RFP) - Long-term investment picks based on fundamental analysis for the Egyptian market.

Inputs: no named parameters.

get_rsp_portfolioA

Get the Rumble Shariah Portfolio (RSP) - Shariah-compliant stocks handpicked for the Egyptian market.

Inputs: no named parameters.

get_technical_callsA

Get a list of active technical trading calls from TheRumble. Returns short-term trading signals with entry range, target prices, and expert info. Use get_call_details for full story and updates on a specific call.

Inputs: skip, limit, market, status.

get_technical_track_recordB

Get the overall track record for technical calls, including hit ratio, average win/loss, and holding period.

Inputs: market.

list_known_portfoliosA

List all known curated portfolio IDs and their descriptions.

Inputs: no named parameters.

Tool Schema Changelog

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

Loading tool schema changelog…

    TDQS

    A3.8/5.0

    Scored across 11 tools

    Disambiguation5/5

    Each tool targets a distinct asset or call type: portfolios, fundamental vs technical calls, track records, releases, and details. No two tools overlap in purpose, making selection unambiguous.

    Naming Consistency5/5

    All tool names follow a consistent 'get_<descriptive_noun>' pattern using snake_case. This predictability aids agent understanding and selection.

    Tool Count5/5

    With 11 tools covering portfolios, calls, track records, releases, and details, the count is well within the ideal 3-15 range and matches the server's financial analysis scope.

    Completeness5/5

    The tool set provides a full read-only surface: listing known portfolios, retrieving specific portfolios or asset lists, listing fundamental and technical calls with details, track records, and latest updates. No obvious gaps for consuming investment research.

    Maintenance

    ActivityStale
    ResponsivenessOutdated data

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      A
      maintenance
      Enables AI assistants to access and analyze financial data, stock information, company fundamentals, and market insights through 250+ tools covering stocks, ETFs, crypto, forex, commodities, and economics.
      624 npm
      Apache 2.0
    • A
      license
      Not graded
      quality
      A
      maintenance
      Exposes 250+ financial data tools to AI assistants, enabling access and analysis of stocks, company fundamentals, ETFs, crypto, forex, commodities, economics, and market insights.
      624 npm
      Apache 2.0
    • A
      license
      Not graded
      quality
      A
      maintenance
      Exposes 250+ financial data tools to AI assistants, enabling access and analysis of stocks, company fundamentals, ETFs, crypto, forex, commodities, economic indicators, and market insights.
      624 npm
      Apache 2.0
    • A
      license
      Not graded
      quality
      A
      maintenance
      Enables AI assistants to access and analyze financial data, stock information, company fundamentals, and market insights through 250+ tools covering stocks, ETFs, crypto, forex, commodities, and economics.
      624 npm
      Apache 2.0