Free MCP Servers for Claude Code: Playwright, Chrome DevTools and DuckDuckGo

Free MCP servers for Claude Code

I wanted to give Claude Code more abilities, such as controlling a browser, debugging web pages and searching the web, without paying for anything. This post explains what an MCP server is, whether it suits the web app or the terminal, and exactly which commands I ran on my Linux PC to set up three free servers.

What is an MCP server?

MCP stands for Model Context Protocol, an open standard that lets Claude connect to outside tools and data. An MCP server is a small program or online service that offers those tools to Claude. Claude asks, the server does the work, and the result comes back.

Diagram showing Claude Code talking to an MCP server that reaches a browser, web search and files

Web app or terminal?

Terminal (Claude Code) Web (claude.ai)
Local servers (stdio) Yes No
Remote servers (HTTP) Yes Yes, as “connectors”
Reaches your files and shell Yes No
Best for Development and custom tools Hosted services such as Google Drive

The terminal is the more flexible choice because it can start programs on your own machine. The web app can only reach servers that have a public URL.

Step 1: install Node.js

Many MCP servers start through npx, which comes with Node.js. On my CachyOS (Arch-based) PC it was missing, so the servers failed with ENOENT: npx. I fixed it with:

sudo pacman -S nodejs npm

Step 2: add the servers

Each server is added with one claude mcp add command. The --scope user flag makes it available in every project.

claude mcp add --scope user playwright -- npx -y @playwright/mcp@latest
claude mcp add --scope user chrome-devtools -- npx -y chrome-devtools-mcp@latest
claude mcp add --scope user duckduckgo -- npx -y duckduckgo-mcp-server

Check them with:

claude mcp list

All three showed as Connected. Restart Claude Code afterwards so the new tools appear.

What each one does

  • Playwright controls a real browser. Claude can open pages, click, fill forms and take screenshots, which is useful for testing or automating websites.
  • Chrome DevTools lets Claude debug pages: read the console and network requests, check performance and run audits.
  • DuckDuckGo gives Claude web search with no API key.

Why I skipped the paid ones

I first planned to install Perplexity, Firecrawl and Higgsfield as well. But I don’t have a budget for paid AI services, so I removed or skipped them:

Comparison of the free MCP servers kept and the paid ones skipped

  • Perplexity needs a paid API key.
  • Firecrawl needs an API key, and its useful usage is paid.
  • Higgsfield generates images and video using paid credits. I had added it, then removed it with claude mcp remove higgsfield -s user.

Playwright can already open and read web pages, so I don’t miss Firecrawl for basic scraping.

Lessons learned

  1. Check Node.js first. Without npx, every npm-based server fails.
  2. Restart Claude Code after adding a server. My session did not show Higgsfield in /mcp until I restarted.
  3. Remote servers use a browser sign-in, local ones use API keys. Higgsfield needed OAuth, while Perplexity and Firecrawl need keys.
  4. Treat community packages with care. The DuckDuckGo package is small and early (version 0.1.2), and I did not read its code. Look at the package page before trusting it with anything sensitive, and expect DuckDuckGo to rate-limit heavy use.

Quick reference

Command What it does
claude mcp list Show servers and their status
claude mcp add --scope user NAME -- COMMAND Add a local server
claude mcp add --transport http NAME URL Add a remote server
claude mcp remove NAME -s user Remove a server
/mcp Manage and sign in to servers inside Claude Code

If you also want to extend Claude Code with skills and plugins, read my earlier post: Claude Code Skills & Plugins: What They Do and How to Use Them.