agentql-mcp

MCP.Pizza Chef: tinyfish-io

Give it a link and a plain-English list of what you want back — product name, price, rating, author — and it returns those fields without you having to describe how the page is built. There is exactly one tool, and it does that one job. A key from AgentQL's developer portal is required: the trial covers 300 calls, after which the free plan allows 50 a month and each extra call costs two cents. Three behaviours are fixed in the code — it never scrolls, never waits for slow content, and always runs in fast mode.

Data
Web/Research

Use This MCP server To

Pull every product name and price off a shop page Turn a search results page into a tidy table Collect job titles and locations from a careers page Grab article headlines and dates from a news site Compare prices for one item across several stores

README

AgentQL MCP Server

This is a Model Context Protocol (MCP) server that integrates AgentQL's data extraction capabilities.

Features

Tools

  • extract-web-data - extract structured data from a given 'url', using 'prompt' as a description of actual data and its fields to extract.

Installation

To use AgentQL MCP Server to extract data from web pages, you need to install it via npm, get an API key from our Dev Portal, and configure it in your favorite app that supports MCP.

Install the package

npm install -g agentql-mcp

Configure Claude

  • Open Claude Desktop Settings via +, (don't confuse with Claude Account Settings)
  • Go to Developer sidebar section
  • Click Edit Config and open claude_desktop_config.json file
  • Add agentql server inside mcpServers dictionary in the config file
  • Restart the app
{
  "mcpServers": {
    "agentql": {
      "command": "npx",
      "args": ["-y", "agentql-mcp"],
      "env": {
        "AGENTQL_API_KEY": "YOUR_API_KEY"
      }
    }
  }
}

Read more about MCP configuration in Claude here.

Configure VS Code

For one-click installation, click one of the install buttons below:

Install with NPX in VS Code Install with NPX in VS Code Insiders

Manual Installation

Click the install buttons at the top of this section for the quickest installation method. For manual installation, follow these steps:

Add the following JSON block to your User Settings (JSON) file in VS Code. You can do this by pressing Ctrl + Shift + P and typing Preferences: Open User Settings (JSON).

{
  "mcp": {
    "inputs": [
      {
        "type": "promptString",
        "id": "apiKey",
        "description": "AgentQL API Key",
        "password": true
      }
    ],
    "servers": {
      "agentql": {
        "command": "npx",
        "args": ["-y", "agentql-mcp"],
        "env": {
          "AGENTQL_API_KEY": "${input:apiKey}"
        }
      }
    }
  }
}

Optionally, you can add it to a file called .vscode/mcp.json in your workspace. This will allow you to share the configuration with others.

{
  "inputs": [
    {
      "type": "promptString",
      "id": "apiKey",
      "description": "AgentQL API Key",
      "password": true
    }
  ],
  "servers": {
    "agentql": {
      "command": "npx",
      "args": ["-y", "agentql-mcp"],
      "env": {
        "AGENTQL_API_KEY": "${input:apiKey}"
      }
    }
  }
}

Configure Cursor

  • Open Cursor Settings
  • Go to MCP > MCP Servers
  • Click + Add new MCP Server
  • Enter the following:
    • Name: "agentql" (or your preferred name)
    • Type: "command"
    • Command: env AGENTQL_API_KEY=YOUR_API_KEY npx -y agentql-mcp

Read more about MCP configuration in Cursor here.

Configure Windsurf

  • Open Windsurf: MCP Configuration Panel
  • Click Add custom server+
  • Alternatively you can open ~/.codeium/windsurf/mcp_config.json directly
  • Add agentql server inside mcpServers dictionary in the config file
{
  "mcpServers": {
    "agentql": {
      "command": "npx",
      "args": ["-y", "agentql-mcp"],
      "env": {
        "AGENTQL_API_KEY": "YOUR_API_KEY"
      }
    }
  }
}

Read more about MCP configuration in Windsurf here.

Validate MCP integration

Give your agent a task that will require extracting data from the web. For example:

Extract the list of videos from the page https://www.youtube.com/results?search_query=agentql, every video should have a title, an author name, a number of views and a url to the video. Make sure to exclude ads items. Format this as a markdown table.

Tip

In case your agent complains that it can't open urls or load content from the web instead of using AgentQL, try adding "use tools" or "use agentql tool" hint.

Development

Install dependencies:

npm install

Build the server:

npm run build

For development with auto-rebuild:

npm run watch

If you want to try out development version, you can use the following config instead of the default one:

{
  "mcpServers": {
    "agentql": {
      "command": "/path/to/agentql-mcp/dist/index.js",
      "env": {
        "AGENTQL_API_KEY": "YOUR_API_KEY"
      }
    }
  }
}

Note

Don't forget to remove the default AgentQL MCP server config to not confuse Claude with two similar servers.

Debugging

Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector, which is available as a package script:

npm run inspector

The Inspector will provide a URL to access debugging tools in your browser.

agentql-mcp FAQ

Is it free to use?
Not for long. Signing up gives you 300 trial calls; after that the free plan allows 50 calls a month and each additional one is billed at two cents. Every extraction you ask for is one call.
Do I need a key?
Yes. You get one from AgentQL's developer portal and paste it into your app's settings. The server refuses to start without it.
Can I use this to scrape a page that loads more as you scroll?
Not reliably. Scrolling is switched off in the code and cannot be turned on from your prompt, so you will only get what appears before any scrolling.
Does it work on pages behind a login?
No. It fetches the page itself, so anything requiring your account or a password is out of reach.
Which apps does it work in?
Claude Desktop, Cursor, VS Code, and Windsurf all have documented setup, and VS Code offers a one-click install button.
Can it change anything on the sites it reads?
No. The single tool only reads a page and returns the fields you asked for; it cannot click, fill in forms, or submit anything.
How hard is it to set up?
You paste a short block into your app's settings with your key in it. Nothing needs to be built or compiled.