Mobbin Agent

Mobbin Agent

MCP server that gives AI agents browser-based access to Mobbin for design research, screen discovery, and screenshot collection through automated browser control.

Category
Visit Server

README

Mobbin Agent

MCP server that gives AI agents browser-based access to Mobbin for design research, screen discovery, and screenshot collection.

Claude Code (AI reasoning + decisions)
    ↕ MCP Protocol (stdio)
Mobbin Agent (TypeScript MCP server)
    ↕ Playwright (browser automation)
Mobbin.com (authenticated session)
    ↕ Local filesystem
data/downloads/ (saved screenshots)

The AI agent decides what to browse, search, and download. The MCP server provides deterministic browser control tools. No extra LLM cost per browser action.

Features

  • 10 MCP tools — lifecycle, navigation, interaction, perception, collection
  • Session persistence — authenticate once, sessions auto-restore across runs
  • Structured extraction — page data returned as classified JSON (screens, flows, apps, categories)
  • Full-resolution downloads — batch download screen images at 1920px PNG quality
  • Anti-detection — realistic user agent, disabled automation flags, human-like delays
  • Direct script access — bypass MCP and import modules directly for batch tasks

Requirements

  • Node.js >= 18
  • A Mobbin account (free or paid)

Setup

git clone git@github.com:ismailsaleekh/mobbin-agent.git
cd mobbin-agent
npm install
npx playwright install chromium
npm run build

First-time authentication

Mobbin requires login. On first use, authenticate in a visible browser window — the session is saved automatically for future runs.

node -e "
import('./dist/browser.js').then(async ({ BrowserManager }) => {
  const { MobbinNavigator } = await import('./dist/mobbin.js');
  const browser = new BrowserManager();
  await browser.launch({ headless: false });
  const mobbin = new MobbinNavigator(browser);
  const result = await mobbin.login();
  console.log(result);
  await browser.close();
  process.exit(0);
});
"

A Chromium window opens to mobbin.com/login. Log in manually — the server detects completion and saves cookies to data/session/storage-state.json. Sessions last ~24-48 hours.

Usage with Claude Code

Add to your Claude Code MCP configuration:

{
  "mcpServers": {
    "mobbin": {
      "command": "node",
      "args": ["/absolute/path/to/mobbin-agent/dist/index.js"]
    }
  }
}

Then ask Claude to browse Mobbin:

"Find trending dashboard screen patterns on Mobbin and download the top 20 at full resolution"

"Browse onboarding flows on Mobbin and extract the screen URLs for e-commerce apps"

Tools

10 tools across 5 categories:

Category Tool Description
Lifecycle mobbin_connect Launch browser and restore saved session
mobbin_login Navigate to login page for manual authentication
mobbin_disconnect Save session and close browser
Navigation mobbin_navigate Go to any Mobbin URL, wait for load
mobbin_scroll Scroll page to load more content (infinite scroll)
Interaction mobbin_click Click element by text, CSS selector, or coordinates
mobbin_type Type text into input field
Perception mobbin_screenshot Take viewport screenshot (returns PNG)
mobbin_extract Extract structured data from current page
Collection mobbin_download Download screen images by URL to local filesystem

See Tool Reference for parameters, return formats, and examples.

Example: Batch collection script

gather.mjs collects screen images by pattern — bypasses MCP and imports modules directly:

# Collect trending dashboard screens
PATTERN=Dashboard node gather.mjs

# Collect most popular checkout screens with more scrolling
PATTERN=Checkout SORT=mostPopular MAX_SCROLLS=12 node gather.mjs

Images are saved to data/downloads/{pattern}/ at full 1920px PNG resolution.

Project structure

mobbin-agent/
├── src/
│   ├── index.ts          # MCP server entry point (stdio transport)
│   ├── browser.ts        # Playwright browser lifecycle and interactions
│   ├── mobbin.ts          # Mobbin domain logic (login, extract, classify)
│   └── tools.ts           # MCP tool definitions and handlers
├── docs/                  # Full documentation
│   ├── INDEX.md           # Tool reference (all 10 tools)
│   ├── OPERATIONAL-GUIDE.md  # Workflows, rules, recipes
│   ├── connection.md      # MCP setup, session, direct usage
│   ├── tools/             # Detailed tool docs (5 files)
│   ├── reference/         # URL patterns, page types
│   └── troubleshooting/   # Known issues and solutions
├── gather.mjs             # Batch collection example script
├── data/
│   ├── session/           # Saved browser session (gitignored)
│   └── downloads/         # Downloaded images (gitignored)
├── MOBBIN-INSTRUCTIONS.md # Mandatory reading for AI agents
├── package.json
└── tsconfig.json

Documentation

Document Purpose
MOBBIN-INSTRUCTIONS.md Entry point — key rules for AI agents
Tool Reference All 10 tools with links to detailed docs
Operational Guide Rules, collection workflows, script templates, timeouts
Connection Guide MCP config, browser lifecycle, session persistence, direct script usage
URL Patterns Search templates, filter catalogs, CDN URLs
Page Types Page classification reference
Troubleshooting Known issues and solutions

Tech stack

Component Technology
MCP server @modelcontextprotocol/sdk 1.12
Browser automation playwright 1.52 (Chromium)
Language TypeScript 5.8 (ESM, strict)
Transport stdio (JSON-RPC 2.0)
Session storage Playwright storageState (JSON cookies)

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured