Olostep

Olostep

olostep

Provides web scraping and search capabilities through Olostep's API, converting web content to markdown and retrieving structured search results with JavaScript rendering support.

Integrates with Olostep's web scraping API to extract webpage content in markdown format, discover website URLs through search queries, and retrieve structured Google search results with country-specific routing and JavaScript rendering support.

9243 views7Local (stdio)

What it does

  • Scrape websites to markdown, HTML, or plain text
  • Search Google with structured results
  • Batch scrape up to 10k URLs at once
  • Crawl websites autonomously from a start URL
  • Route requests by country for geo-targeted content
  • Handle JavaScript-heavy sites with configurable wait times

Best for

Data analysts extracting web content for researchDevelopers building content aggregation systemsSEO professionals mapping website structuresResearchers gathering data from multiple sources
Requires Olostep API keyDocker deployment availableBatch processing up to 10k URLs

About Olostep

Olostep is a community-built MCP server published by olostep that provides AI assistants with tools and capabilities via the Model Context Protocol. Integrate Olostep with scraperapi to scrape Bing, extract markdown content, and retrieve Google results with advanced ro It is categorized under search web.

How to install

You can install Olostep in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.

License

Olostep is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.

Olostep MCP Server

Docker Hub npm version License: ISC

A Model Context Protocol (MCP) server implementation that integrates with Olostep for web scraping, content extraction, and search capabilities. To set up Olostep MCP Server, you need to have an API key. You can get the API key by signing up on the Olostep website.

Features

  • Scrape website content in HTML, Markdown, JSON or Plain Text (with optional parsers)
  • Parser-based web search with structured results
  • AI Answers with citations and optional JSON-shaped outputs
  • Batch scraping of up to 10k URLs
  • Autonomous site crawling from a start URL
  • Website URL discovery and mapping (with include/exclude filters)
  • Country-specific request routing for geo-targeted content
  • Configurable wait times for JavaScript-heavy websites
  • Comprehensive error handling and reporting
  • Simple API key configuration

Installation

🐳 Running with Docker (Recommended)

The easiest way to run the Olostep MCP server:

docker pull olostep/mcp-server

docker run -i --rm \
  -e OLOSTEP_API_KEY="your-api-key" \
  olostep/mcp-server

Local-only Docker build (no Docker Hub required)

If the Docker Hub image isn’t available from your environment, you can build and run the image locally from this repository:

cd olostep-mcp-server
npm install
npm run build
docker build -t olostep/mcp-server:local .

docker run -i --rm -e OLOSTEP_API_KEY="your-api-key" olostep/mcp-server:local

Local smoke test (initialize + tools/list)

This MCP server uses stdio transport. You can validate it starts and lists tools without needing a working API key:

On Windows (PowerShell):

cd .\olostep-mcp-server
powershell -ExecutionPolicy Bypass -File .\scripts\smoke-test.ps1

To actually call tools successfully, provide OLOSTEP_API_KEY when running the container.

Using Docker with Claude Desktop

Add this to your claude_desktop_config.json:

{
  "mcpServers": {
    "olostep": {
      "command": "docker",
      "args": [
        "run", "-i", "--rm",
        "-e", "OLOSTEP_API_KEY=YOUR_API_KEY_HERE",
        "olostep/mcp-server"
      ]
    }
  }
}

Using Docker with Cursor

Add an MCP server with:

  • Name: olostep
  • Type: command
  • Command: docker run -i --rm -e OLOSTEP_API_KEY=your-api-key olostep/mcp-server

Running with npx

env OLOSTEP_API_KEY=your-api-key npx -y olostep-mcp

On Windows (PowerShell):

$env:OLOSTEP_API_KEY = \"your-api-key\"; npx -y olostep-mcp

On Windows (CMD):

set OLOSTEP_API_KEY=your-api-key && npx -y olostep-mcp

Manual Installation

npm install -g olostep-mcp

Running on Claude Desktop

Add this to your claude_desktop_config.json:

{
  "mcpServers": {
    "mcp-server-olostep": {
      "command": "npx",
      "args": ["-y", "olostep-mcp"],
      "env": {
        "OLOSTEP_API_KEY": "YOUR_API_KEY_HERE"
      }
    }
  }
}

Or for a more straightforward way you can install via the Smithery CLI by running the following code in your device terminal

npx -y @smithery/cli install @olostep/olostep-mcp-server --client claude

Running on Windsurf

Add this to your ./codeium/windsurf/model_config.json:

{
  "mcpServers": {
    "mcp-server-olostep": {
      "command": "npx",
      "args": ["-y", "olostep-mcp"],
      "env": {
        "OLOSTEP_API_KEY": "YOUR_API_KEY_HERE"
      }
    }
  }
}

Running on Cursor

To configure Olostep MCP in Cursor:

  1. Open Cursor Settings
  2. Go to Features > MCP Servers
  3. Click "+ Add New MCP Server"
  4. Enter the following:
    • Name: "olostep-mcp" (or your preferred name)
    • Type: "command"
    • Command: env OLOSTEP_API_KEY=your-api-key npx -y olostep-mcp

Replace your-api-key with your Olostep API key.

Running on Metorial

Option 1: One-Click Installation (Recommended)

  1. Open Metorial dashboard
  2. Navigate to MCP Servers directory
  3. Search for "Olostep"
  4. Click "Install" and enter your API key

Option 2: Manual Configuration

Add this to your Metorial MCP server configuration:

{
  "olostep": {
    "command": "npx",
    "args": ["-y", "olostep-mcp"],
    "env": {
      "OLOSTEP_API_KEY": "YOUR_API_KEY_HERE"
    }
  }
}

The Olostep tools will then be available in your Metorial AI chats.

Configuration

Environment Variables

  • OLOSTEP_API_KEY: Your Olostep API key (required)
  • ORBIT_KEY: An optional key for using Orbit to route requests.

Available Tools

1. Scrape Website (scrape_website)

Extract content from a single URL. Supports multiple formats and JavaScript rendering.

{
  "name": "scrape_website",
  "arguments": {
    "url_to_scrape": "https://example.com",
    "output_format": "markdown",
    "country": "US",
    "wait_before_scraping": 1000,
    "parser": "@olostep/amazon-product"
  }
}

Parameters:

  • url_to_scrape: The URL of the website you want to scrape (required)
  • output_format: Choose format (html, markdown, json, or text) - default: markdown
  • country: Optional country code (e.g., US, GB, CA) for location-specific scraping
  • wait_before_scraping: Wait time in milliseconds before scraping (0-10000)
  • parser: Optional parser ID for specialized extraction

Response (example):

{
  "content": [
    {
      "type": "text",
      "text": "{\n  \"id\": \"scrp_...\",\n  \"url\": \"https://example.com\",\n  \"markdown_content\": \"# ...\",\n  \"html_content\": null,\n  \"json_content\": null,\n  \"text_content\": null,\n  \"status\": \"succeeded\",\n  \"timestamp\": \"2025-11-14T12:34:56Z\",\n  \"screenshot_hosted_url\": null,\n  \"page_metadata\": { }\n}"
    }
  ]
}

2. Search the Web (search_web)

Search the Web for a given query and get structured results (non-AI, parser-based).

{
  "name": "search_web",
  "arguments": {
    "query": "your search query",
    "country": "US"
  }
}

Parameters:

  • query: Search query (required)
  • country: Optional country code for localized results (default: US)

Response:

  • Structured JSON (as text) representing parser-based results

3. Answers (AI) (answers)

Search the web and return AI-powered answers in the JSON structure you want, with sources and citations.

{
  "name": "answers",
  "arguments": {
    "task": "Who are the top 5 competitors to Acme Inc. in the EU?",
    "json": "Return a list of the top 5 competitors with name and homepage URL"
  }
}

Parameters:

  • task: Question or task to answer using web data (required)
  • json: Optional JSON schema/object or a short description of the desired output shape

Response includes:

  • answer_id, object, task, result (JSON if provided), sources, created

4. Batch Scrape URLs (batch_scrape_urls)

Scrape up to 10k URLs at the same time. Perfect for large-scale data extraction.

{
  "name": "batch_scrape_urls",
  "arguments": {
    "urls_to_scrape": [
      {"url": "https://example.com/a", "custom_id": "a"},
      {"url": "https://example.com/b", "custom_id": "b"}
    ],
    "output_format": "markdown",
    "country": "US",
    "wait_before_scraping": 500,
    "parser": "@olostep/amazon-product"
  }
}

Response includes:

  • batch_id, status, total_urls, created_at, formats, country, parser, urls

5. Create Crawl (create_crawl)

Autonomously discover and scrape entire websites by following links.

{
  "name": "create_crawl",
  "arguments": {
    "start_url": "https://example.com/docs",
    "max_pages": 25,
    "follow_links": true,
    "output_format": "markdown",
    "country": "US",
    "parser": "@olostep/doc-parser"
  }
}

Response includes:

  • crawl_id, object, status, start_url, max_pages, follow_links, created, formats, country, parser

6. Create Map (create_map)

Get all URLs on a website. Extract all URLs for discovery and analysis.

{
  "name": "create_map",
  "arguments": {
    "website_url": "https://example.com",
    "search_query": "blog",
    "top_n": 200,
    "include_url_patterns": ["/blog/**"],
    "exclude_url_patterns": ["/admin/**"]
  }
}

Response includes:

  • map_id, object, url, total_urls, urls, search_query, top_n

7. Get Webpage Content (get_webpage_content)

Retrieves webpage content in clean markdown format with support for JavaScript rendering.

{
  "name": "get_webpage_content",
  "arguments": {
    "url_to_scrape": "https://example.com",
    "wait_before_scraping": 1000,
    "country": "US"
  }
}

Parameters:

  • url_to_scrape: The URL of the webpage to scrape (required)
  • wait_before_scraping: Time to wait in milliseconds before starting the scrape (default: 0)
  • country: Residential country to load the request from (e.g., US, CA, GB) (optional)

Response:

{
  "content": [
    {
      "type": "text",
      "text": "# Example Website\n\nThis is the markdown content of the webpage..."
    }
  ]
}

8. Get Website URLs (get_website_urls)

Search and retrieve relevant URLs from a website, sorted by relevance to your query.

{
  "name": "get_website_urls",
  "arguments": {
    "url": "https://example.com",
    "search_query": "your search term"
  }
}

Parameters:

  • url: The URL of the website to map (required)
  • search_query: The search query to sort URLs by (required)

Response:

{
  "content": [
    {
      "type": "text",
      "text": "Fou

---

*README truncated. [View full README on GitHub](https://github.com/olostep/olostep-mcp-server).*

Alternatives

Related Skills

Browse all skills
google-official-seo-guide

Official Google SEO guide covering search optimization, best practices, Search Console, crawling, indexing, and improving website search visibility based on official Google documentation

80
ux-writing

Create user-centered, accessible interface copy (microcopy) for digital products including buttons, labels, error messages, notifications, forms, onboarding, empty states, success messages, and help text. Use when writing or editing any text that appears in apps, websites, or software interfaces, designing conversational flows, establishing voice and tone guidelines, auditing product content for consistency and usability, reviewing UI strings, or improving existing interface copy. Applies UX writing best practices based on four quality standards — purposeful, concise, conversational, and clear. Includes accessibility guidelines, research-backed benchmarks (sentence length, comprehension rates, reading levels), expanded error patterns, tone adaptation frameworks, and comprehensive reference materials.

19
browser-automation

Automate web browser interactions using natural language via CLI commands. Use when the user asks to browse websites, navigate web pages, extract data from websites, take screenshots, fill forms, click buttons, or interact with web applications. Triggers include "browse", "navigate to", "go to website", "extract data from webpage", "screenshot", "web scraping", "fill out form", "click on", "search for on the web". When taking actions be as specific as possible.

16
web-research

Use this skill for requests related to web research; it provides a structured approach to conducting comprehensive web research

14
last30days

Research a topic from the last 30 days on Reddit + X + Web, become an expert, and write copy-paste-ready prompts for the user's target tool.

7
seo-optimizer

Search Engine Optimization specialist for content strategy, technical SEO, keyword research, and ranking improvements. Use when optimizing website content, improving search rankings, conducting keyword analysis, or implementing SEO best practices. Expert in on-page SEO, meta tags, schema markup, and Core Web Vitals.

5