Skip to main content
Glama
mcp-server-subito-scraper

mcp-server-subito-scraper

by pindaroli

Subito.it MCP Server (via Apify)

License: MIT Node.js Model Context Protocol

TypeScript-based MCP (Model Context Protocol) server for searching and scraping listings from Subito.it using the Apify Actor azzouzana/subito-scraper-pro-by-search-url.

Instantly executable with npx on any MCP-compatible client (Claude Desktop, Cursor, Gemini Antigravity, Windsurf, VS Code, etc.).


๐ŸŒŸ Key Features

  • ๐Ÿš€ Run with npx, no global install: ready to use with npx -y mcp-server-subito-scraper.

  • ๐Ÿ‡ฎ๐Ÿ‡น Full support for all Subito.it categories: Motors (cars, motorcycles), Real Estate (sale/rent), Electronics/IT, Phones, Furniture, Jobs, and General Marketplace.

  • ๐Ÿ” Smart search (subito_search): Automatically generates URLs with filters for query, category, region, min/max price, and TuttoSubito shipping (shp=true).

  • ๐Ÿ”— Direct URL scraping (subito_scrape_by_url): Paste any URL with complex filters applied directly from the site.

  • ๐Ÿ“ฆ Dataset retrieval (subito_get_dataset_items): View and extract results from previously created Apify datasets.

  • ๐Ÿ”‘ Flexible Token Configuration: Via environment variable (APIFY_TOKEN), command-line parameter (--token), or directly in the prompt/tool.


Related MCP server: OLX MCP Server

๐Ÿ”‘ Getting an Apify Token

  1. Create a free account at Apify.com.

  2. Go to Settings > Integrations > API Tokens or console.apify.com/settings/integrations.

  3. Copy your Personal API Token (e.g. apify_api_...).


๐Ÿ› ๏ธ Configuration in MCP Clients

1. Claude Desktop

Add the configuration to the claude_desktop_config.json file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "subito-scraper": {
      "command": "npx",
      "args": ["-y", "mcp-server-subito-scraper"],
      "env": {
        "APIFY_TOKEN": "IL_TUO_TOKEN_APIFY_QUI"
      }
    }
  }
}

Alternatively, passing the token as a CLI argument:

{
  "mcpServers": {
    "subito-scraper": {
      "command": "npx",
      "args": ["-y", "mcp-server-subito-scraper", "--token", "IL_TUO_TOKEN_APIFY_QUI"]
    }
  }
}

2. Cursor / Windsurf

In the client's MCP settings:

{
  "subito-scraper": {
    "command": "npx",
    "args": ["-y", "mcp-server-subito-scraper"],
    "env": {
      "APIFY_TOKEN": "IL_TUO_TOKEN_APIFY_QUI"
    }
  }
}

3. Gemini Antigravity / Agentic IDE

Add the MCP configuration block in the mcpServers section:

{
  "mcpServers": {
    "subito-scraper": {
      "command": "npx",
      "args": ["-y", "mcp-server-subito-scraper"],
      "env": {
        "APIFY_TOKEN": "IL_TUO_TOKEN_APIFY_QUI"
      }
    }
  }
}

๐Ÿงฐ Available Tools

1. subito_search

Automatically builds the Subito URL and runs the scraper.

Parameter

Type

Description

Default

query

string (required)

Search text (e.g. "MacBook Pro M3", "Vespa 125")

-

category

string (optional)

Category (e.g. "usato", "auto", "moto", "case", "informatica", "telefonia", "arredamento")

"usato"

region

string (optional)

Italian region (e.g. "italia", "lombardia", "lazio", "piemonte", "veneto")

"italia"

minPrice

number (optional)

Minimum price in Euros

-

maxPrice

number (optional)

Maximum price in Euros

-

shippingOnly

boolean (optional)

Filter only listings with TuttoSubito shipping

false

sortBy

string (optional)

Sorting: "datedesc", "priceasc", "pricedesc"

"datedesc"

maxItems

number (optional)

Maximum number of listings to extract

30

timeoutSecs

number (optional)

Maximum execution timeout in seconds

300

token

string (optional)

Apify token (overrides the environment one)

-


2. subito_scrape_by_url

Scrapes from a ready-made direct search URL.

Parameter

Type

Description

Default

searchUrl

string (required)

Full Subito.it search URL

-

maxItems

number (optional)

Maximum number of listings to extract

30

timeoutSecs

number (optional)

Timeout in seconds

300

token

string (optional)

Custom Apify token

-


3. subito_get_dataset_items

Retrieves extracted data from a previously saved Apify dataset.

Parameter

Type

Description

Default

datasetId

string (required)

Apify dataset ID

-

limit

number (optional)

Number of items to read

50

offset

number (optional)

Offset for pagination

0

token

string (optional)

Apify token

-


4. apify_check_status

Checks that the Apify token is valid and displays account information.


๐Ÿ’ป Local Development and Compilation

If you want to clone and modify the server locally:

# 1. Clona il repository
git clone https://github.com/pindaroli/mcp-server-subito-scraper.git
cd mcp-server-subito-scraper

# 2. Installa le dipendenze
npm install

# 3. Compila il codice TypeScript
npm run build

# 4. Esegui in modalitร  test
APIFY_TOKEN=tuo_token_qui npm start

Or in development mode with hot reload:

APIFY_TOKEN=tuo_token_qui npm run dev

๐Ÿš€ Publishing to NPM and GitHub

To publish the package and make it available to everyone via npx mcp-server-subito-scraper:

# Esegui il login a npm
npm login

# Pubblica il pacchetto
npm publish --access public

๐Ÿ“„ License

This project is distributed under the MIT license. See the LICENSE file for details.

Disclaimer: This MCP server is not officially affiliated with, sponsored, or endorsed by Subito.it S.r.l. All trademarks belong to their respective owners.

Available Tools

4 tools
apify_check_statusB

Checks the status of the Apify account and validates the API token

Inputs: token.

subito_get_dataset_itemsC

Fetches scraped items from a previously generated Apify dataset ID

Inputs: datasetId (required), limit, token, offset.

subito_scrape_by_urlB

Scrapes classified ads directly from a Subito.it search URL using Apify Actor (azzouzana/subito-scraper-pro-by-search-url)

Inputs: searchUrl (required), token, maxItems, timeoutSecs.

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 4 tools

    Disambiguation4/5

    Each tool targets a distinct aspect: scraping by URL vs. by search parameters, checking account status, and retrieving dataset items. There is slight potential confusion between subito_scrape_by_url and subito_search, but their descriptions clarify the difference (URL vs. keyword-based).

    Naming Consistency4/5

    Tool names use a consistent verb_noun pattern with a domain prefix (subito_). Names are descriptive and follow a predictable structure, though subito_search could optionally be subito_search_by_keywords for perfect parallelism with subito_scrape_by_url.

    Tool Count5/5

    Four tools are appropriate for a focused scraping server: two scraping methods, one status check, and one data retrieval tool. Each tool has a clear purpose and no unnecessary bloat.

    Completeness3/5

    The tool surface covers scraping, search, status checking, and data retrieval, but lacks ability to list or manage datasets (e.g., delete old datasets). An agent scraping multiple times may accumulate datasets without cleanup, which is a notable gap.

    Maintenance

    ActivitySlowing
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers