Skip to main content
Glama
floppydata-mcp

floppydata-mcp

Official
by Floppydata

Floppydata MCP

Floppydata MCP lets agents use the Floppydata Client API v2 (Web Data, proxies, and Cloud Browser) directly from an MCP-compatible client.

It is intentionally small: install it with npx, provide FLOPPYDATA_API_KEY, and the server talks to https://api.floppydata.net.

Setup

Create a Client API key in the Floppydata dashboard:

https://app.floppydata.com/api-keys

Add this server to your MCP client:

{
  "mcpServers": {
    "floppydata": {
      "command": "npx",
      "args": ["-y", "@floppydata/mcp"],
      "env": {
        "FLOPPYDATA_API_KEY": "YOUR_API_KEY"
      }
    }
  }
}

That is the whole setup. There is no hosted service, no extra CLI, and no base URL configuration.

Related MCP server: webharvest

Tools

fetch_web_data

Fetch a public page through Web Data.

Useful when an agent needs page HTML and the target site should be fetched through Floppydata infrastructure.

Required input:

{
  "url": "https://example.com"
}

Optional inputs: countryCode, city, difficulty, cacheMaxAgeDays.

create_rotating_proxy_connection

Build one rotating proxy connection.

The most important value in the response is:

connection.connectionString

Example input:

{
  "type": "residential",
  "country": "US",
  "city": "New York",
  "rotation": 15,
  "protocol": "http"
}

list_rotating_proxy_locations

List available rotating proxy countries, cities, and states for a proxy type.

Example input:

{
  "type": "residential"
}

check_proxy

Check the exit IP and location for a proxy.

Example input:

{
  "connectionString": "http://USERNAME:PASSWORD@geo.g-w.info:10080"
}

The response shape is:

{
  "ip": "123.45.67.89",
  "location": {
    "countryCode": "US",
    "country": "United States",
    "state": "California",
    "city": "San Francisco"
  }
}

list_static_proxies

List static proxies on the account.

Use items[n].connection.connectionString as the copy-paste proxy URL.

get_account_balances

Check account balances across Web Data, rotating proxy traffic, and static proxies.

Optional input:

{
  "product": "proxy-rotating"
}

Allowed products: web-data, proxy-rotating, proxy-static.

get_account_usage

Check account usage rollups.

Responses include:

  • yesterday

  • last7Days

  • last30Days

  • optional requestedRange when from or to is provided

  • lastUpdatedAt

Example input:

{
  "product": "proxy-rotating",
  "from": "2026-06-01T00:00:00Z",
  "to": "2026-06-26T23:59:59Z",
  "countryCode": "US",
  "proxyType": "residential"
}

Cloud Browser

Start a cloud browser that already has a Floppydata proxy attached, then drive it from your own Puppeteer or Playwright code.

create_browser_session

Creates and starts a browser. The smallest request is {}: a burner browser on a residential proxy that runs for 10 minutes.

The most important value in the response is:

connectUrl

Pass it to puppeteer.connect({ browserWSEndpoint: connectUrl }) or chromium.connectOverCDP(connectUrl).

Example input:

{
  "proxy": {
    "type": "residential",
    "location": { "countryCode": "US", "city": "New York" },
    "rotation": { "mode": "sticky" }
  },
  "browser": {
    "viewport": { "width": 1440, "height": 900 },
    "fingerprint": { "os": "windows", "locale": "en-US", "timezone": "auto" }
  },
  "runtime": { "timeoutSeconds": 1800, "keepAlive": true },
  "persist": { "ttlSeconds": 900 },
  "startUrl": "https://example.com"
}
  • Use "proxy": { "type": "static", "ip": "123.45.67.89" } to browse through one of your static IPs from list_static_proxies.

  • Add persist.ttlSeconds to keep settings.id reusable after the session ends. Pass "settings": { "id": "..." } on a later call to come back with the same cookies and fingerprint.

  • storage.cookies loads cookies before the session starts.

list_browser_sessions

List session history. Optional inputs: status (running, stopped, timedOut, failed), cursor, limit.

get_browser_session

Get one session by sessionId. Returns a freshly signed connectUrl while the session is running.

stop_browser_session

Stop a session by sessionId and save its persistent state. Stop sessions when you are done with them.

create_browser_live_view

Get a liveViewUrl a human can open to watch and control a running session. It is rejected while a Puppeteer or Playwright client is connected.

delete_browser_session

Delete an ended session from history by sessionId. Saved settings are kept.

delete_browser_settings

Permanently delete saved settings and browser state by settingsId.

Security

The server reads the API key from FLOPPYDATA_API_KEY and sends it as X-Api-Key.

API keys and passwords are redacted from errors and logs. Proxy passwords and signed browser connectUrl tokens are still returned in successful responses because those credentials are the output customers need to use. Tokens in error messages are redacted.

Development

See CONTRIBUTING.md.

Available Tools

14 tools
check_proxyB

Check a proxy connection and return the exit IP and location seen through that proxy.

Inputs: host, port, password, protocol, +2 more.

create_browser_live_viewA

Get a URL a human can open to watch and control a running Cloud Browser session. Rejected while a CDP client is connected.

Inputs: sessionId (required).

create_browser_sessionA

Start a Cloud Browser with a Floppydata proxy attached. Drive it with Puppeteer connect({ browserWSEndpoint }) or Playwright chromium.connectOverCDP() using the returned connectUrl. The smallest request is {}. Stop the session when done to stop billing.

Inputs: proxy, browser, persist, runtime, +4 more.

create_rotating_proxy_connectionC

Build one copy-paste rotating proxy connection string for a country, state, city, ASN, session, and rotation.

Inputs: type (required), country (required), asn, city, +4 more.

delete_browser_sessionA

Delete an ended Cloud Browser session from history. Persistent browser settings are kept; use delete_browser_settings for those.

Inputs: sessionId (required).

delete_browser_settingsA

Permanently delete saved Cloud Browser settings and browser state (cookies, storage). Fails while a session using them is running.

Inputs: settingsId (required).

fetch_web_dataA

Fetch a public web page through Floppydata Web Data. Use this when the agent needs the HTML of a URL.

Inputs: url (required), city, difficulty, countryCode, +1 more.

get_account_balancesA

Get account balances for Web Data, rotating proxy traffic, and static proxies.

Inputs: product.

get_account_usageB

Get account usage rollups. Responses include yesterday, last7Days, last30Days, optional requestedRange, and lastUpdatedAt.

Inputs: to, from, poolId, product, +2 more.

get_browser_sessionA

Get a Cloud Browser session's state. Returns a freshly signed connectUrl while the session is running.

Inputs: sessionId (required).

list_browser_sessionsA

List Cloud Browser session history, newest first, with cursor pagination.

Inputs: limit, cursor, status.

list_rotating_proxy_locationsA

List countries, cities, and states available for rotating proxy connection generation.

Inputs: type (required).

list_static_proxiesA

List static proxies owned by the account, including each proxy connectionString.

Inputs: no named parameters.

stop_browser_sessionB

Stop a Cloud Browser session and save its persistent browser state. Safe to call more than once.

Inputs: sessionId (required).

Tool Schema Changelog

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

Loading tool schema changelog…

    TDQS

    A3.7/5.0

    Scored across 14 tools

    Disambiguation5/5

    Each tool targets a distinct resource and action, with clear boundaries between session lifecycle, proxy operations, account queries, and web data fetching. Overlaps like get_browser_session vs create_browser_live_view and stop_browser_session vs delete_browser_session are well differentiated by their descriptions.

    Naming Consistency5/5

    All tool names follow a consistent snake_case verb_noun pattern (list_, get_, create_, delete_, stop_, check_, fetch_) with no mixed conventions or vague verbs.

    Tool Count5/5

    14 tools is well within the ideal range and appropriately scoped for a server covering browser sessions, proxies, web data, and account management.

    Completeness4/5

    Browser session lifecycle is fully covered (create, list, get, stop, delete, live view), and proxy and account operations are mostly complete. A minor gap exists around browser settings, which only has a delete operation without corresponding get/list/create/update tools.

    Maintenance

    ActivityMaintained
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      C
      maintenance
      Enables scraping and fetching websites with protection handling like Cloudflare and captchas, via an MCP interface.
      18 npm
      1
      Apache 2.0
    • A
      license
      Not graded
      quality
      C
      maintenance
      Enables agents to scrape, crawl, map, search, and extract web pages as clean markdown or structured JSON directly through MCP tools.
      AGPL 3.0
    • A
      license
      A
      quality
      B
      maintenance
      Enables MCP clients to fetch and submit web content through a FlareSolverr instance, bypassing Cloudflare and DDoS-GUARD anti-bot protection. Supports HTTP GET/POST requests returning page content, cookies and headers, plus creating, listing and destroying persistent browser sessions.
      5
      24 npm
      MIT