DEV Community

nottelabs
nottelabs

Posted on • Originally published at open.substack.com

Notte-MCP: Browser Control for LLM Agents via the Model Context Protocol

Explore Notte on Github

A lightweight MCP server that gives LLMs full browser automation powers — from web scraping to form-filling and multi-step workflows.

Large Language Models (LLMs) like Claude and tools like Cursor are powerful — but inherently limited. Without external tools, they can’t interact with the real web, access live data, or perform complex multi-step tasks. That’s where the Model Context Protocol (MCP) comes in.

MCP allows AI systems to break free from their limitations by interfacing with external services through dedicated servers. Notte builds on this, enabling browser control capabilities.

What Is Notte?

Notte is a full-stack framework for building, deploying, and scaling web-native AI agents. We transform the internet into an agent-friendly environment, turning any website into a structured, navigable map described in natural language.

At the core of our platform is a unique perception layer that enables AI agents to “see” and understand web interfaces just like a human would. With a single API, you can power intelligent agents capable of acting, navigating, and extracting data from any web page.

Why MCP Exists: A Universal Interface for LLMs

What if LLMs could use any tool without custom code?

That’s what the Model Context Protocol (MCP) unlocks — a shared protocol that allows LLMs like Claude or ChatGPT to interact with external tools without custom engineering. Today, tool-augmented LLMs like Perplexity or ManusAI are powerful but brittle. Each tool requires its own integration. As the toolset grows, so does the engineering overhead.

MCP changes that — it acts as a standard interface, making tools interoperable and stackable.

Introducing the Notte-MCP Server

Notte-MCP Architechture

To bridge LLMs and browser control, we’ve developed the Notte-MCP server — a lightweight implementation of the MCP protocol, purpose-built for browser automation. This allows systems like Claude and Cursor to act on your behalf directly from a chat interface.

By integrating with our server, LLMs gain real browser control capabilities, including:

  • Creating instant browser sessions
  • Running automated agents
  • Observing and acting on websites
  • Securing and managing credentials

This mirrors the capabilities of the Notte-API and enables AI systems to handle more complex tasks.

Notte API vs. Notte-MCP: Granular Control vs. High-Level Intent

Notte offers three ways to interact with the web:

1. Notte API — granular end-points like /observe to get the current state of a page and its available actions, /step to take actions on a page, and /scrape to extract structured data from a page.
These are ideal when you want full control, similar to using a remote control for a TV — where you manually press each button in sequence.

2. Notte SDK — a Python wrapper around the API that simplifies usage.
3. Notte-MCP — a higher-level abstraction.
Instead of manually calling each endpoint, MCP lets you issue a single intent (e.g., “log into Stripe and download last month’s invoice”) and it handles the chaining under the hood. Think of it like using voice commands for a TV: “Put on Channel 5 and raise volume by 10.” The system figures out the sequence for you.

MCP abstracts away the step-by-step logic and lets AI systems operate at the level of intentions.

The Power of Standardisation

Without an MCP server, every time an LLM wants to use a tool, someone has to manually write the code. Tools don’t talk the same language. With MCP, all tools follow a shared format — like USB for hardware or HTML for webpages. That standardisation is the unlock:

  • LLMs can read schemas like manuals
  • Tools can plug-and-play into multi-agent systems

Real-World Use Cases

With Notte-MCP, LLMs can:

  • Provide enhanced coding assistance by fetching real-time documentation
  • Pull answers from Stack Overflow or discussions from Hacker News
  • Complete repetitive forms using built-in authentication
  • Download files and resources from websites
  • Collect data from sites without public APIs
  • Automate multi-step research workflows

Browser Support and Execution Modes

Notte-MCP supports both Chromium and Firefox, giving developers flexibility in their environment. Agents can operate in either headless or visual mode, depending on your use case — ideal for debugging or stealth automation.

Built-in Retry Logic

Failures happen. Whether it’s a slow-loading page or an interrupted session, Notte-MCP includes robust retry logic to handle transient issues and ensure more reliable automation.

How It Works: Technical Setup

Setting up the Notte-MCP server is straightforward and requires minimal configuration for existing Claude or Cursor users. The implementation integrates seamlessly with AI workflows and provides a consistent API interface.

To get started:

export NOTTE_API_KEY="your-api-key"
pip install notte-mcp
python -m notte_mcp.server #start the MCP server
Enter fullscreen mode Exit fullscreen mode

This launches a local server on port 8000. You can then configure Claude Desktop or Cursor to connect to it using:

{
  "mcpServers": {
    "notte-mcp": {
      "url": "http://localhost:8000/sse",
      "env": {
        "NOTTE_API_KEY": "your-notte-api-key"
      }
    }
  }
}
Enter fullscreen mode Exit fullscreen mode

Follow the official docs for more detailed setup:

Cursor MCP Integration
MCP Protocol Quickstart

Workflow Example

Let’s say you want Claude to:

  1. Search Hacker News for “LangChain”
  2. Click the top result
  3. Scrape the comment section
  4. Save it to Notion

Using Notte-MCP, this entire workflow can be run from a single natural-language prompt, with Notte handling the browser steps and page structure automatically. You get structured data and semantic action support out of the box.

Looking Forward

As we continue developing Notte, we see tremendous potential for integration with various AI systems. The ability to control browsers opens up new possibilities for automation, research, and assistance that weren’t previously possible with standalone LLM systems.

Explore Further

Notte on GitHub
Notte-MCP GitHub
Getting Started with Notte
Full Blog + Setup Guide

[This article was last updated on June 2, 2025. For the latest features and improvements, check the version releases or our changelog via twitter.]

Top comments (1)

Collapse
 
nathan_tarbert profile image
Nathan Tarbert

Pretty cool, less hassle setting stuff up and more time actually building.