The Best Free MCP Servers for Claude Code in 2026
Choose free MCP servers for Claude Code by task, setup, permissions, and real costs—with GitHub, databases, docs, browser automation, and ScreenshotNeo.
Short answer: choose an MCP server by the job you need Claude Code to perform. Use the official remote GitHub server for repository and pull-request work, DBHub locally with a read-only database account for SQL inspection, Context7 for current library documentation, and Playwright MCP for browser automation. “Free” describes software availability; accounts, hosted execution, API calls, databases, model usage, and infrastructure may still cost money.
MCP (Model Context Protocol) connects Claude Code to external tools and data. Claude Code supports remote HTTP servers and local processes over stdio, with WebSocket available for servers that push events. The official documentation recommends HTTP for cloud services and notes that the older SSE transport is deprecated when HTTP is available. Review every server’s permissions and origin before connecting it. Anthropic warns: Verify you trust each server before connecting it. Servers that fetch external content can expose you to prompt injection risk.
See the Claude Code MCP documentation.
1. Which MCP server should you use?
| Task | Best starting point | Connection | What you must provide |
|---|---|---|---|
| Issues, pull requests, repository context | GitHub’s official remote MCP server | Remote HTTP | A correctly scoped GitHub personal access token |
| Read schemas and query project data | DBHub (@bytebase/dbhub) |
Local stdio | A database DSN and preferably a read-only database user |
| Current, version-specific library documentation | Context7 | MCP mode or CLI and skills mode | Follow the project’s current setup instructions |
| Browser interaction and automation | Playwright MCP | Check the current repository instructions | Local browser/runtime setup as documented by Microsoft |
| Clean website screenshots for agents or applications | ScreenshotNeo | Remote API and MCP server | An API key for API calls; free account available |
This is a task guide, not a market-wide popularity ranking. The reviewed sources do not establish comparative performance, adoption, or a free hosted tier for every candidate.
2. How MCP connections work in Claude Code
A server exposes tools that Claude can call. A local stdio server is a process Claude Code starts on your machine, so it can reach local files, scripts, or a private network. A remote HTTP server is accessed over the network and normally needs authentication. Project scope shares configuration with a repository; user scope applies to your account; local scope is appropriate for one checkout. A cloned project cannot silently approve its own servers.
Add a remote HTTP server
claude mcp add --transport http <name> <url>
Add a local stdio server
claude mcp add <name> -- <command> [args...]
The -- separates Claude Code options from the command that launches the server.
Inspect and verify
claude mcp list
claude mcp get <name>
# Inside Claude Code:
/mcp
A command that writes configuration does not prove that credentials work. Check the connection status and make a harmless tool call before relying on a server in a workflow.
3. GitHub MCP: repository and code-review workflows
Claude Code’s official example uses GitHub’s remote MCP endpoint. It is a good fit when Claude needs pull-request context, issue operations, or a list of assigned open pull requests. Scope the token to only the repositories Claude should access and review the account’s applicable terms.
claude mcp add --transport http github https://api.githubcopilot.com/mcp/ \
--header "Authorization: Bearer YOUR_GITHUB_PAT"
After adding it, ask Claude to list the available GitHub tools or inspect a known pull request. Keep write operations behind your normal review process. “Free” here does not establish that GitHub accounts, organization features, or every capability have no cost.
4. DBHub: query a database with least privilege
The official Claude Code guide demonstrates DBHub, published as @bytebase/dbhub, over local stdio. Use it when Claude needs to inspect schemas or run analytical queries. Create a read-only database user so generated SQL cannot modify production data.
claude mcp add --transport stdio db -- npx -y @bytebase/dbhub \
--dsn "postgresql://readonly:pass@prod.db.com:5432/analytics"
- Use a dedicated account with only the schemas and tables required.
- Prefer a read replica or sanitized dataset for exploratory work.
- Keep the DSN out of committed project files and shell history where practical.
- Confirm that your policy allows the selected database to be exposed to the model and server.
This is documented setup guidance, not an independent security assessment or a statement about DBHub hosting or pricing.
5. Context7: current documentation for libraries and frameworks
Upstash’s Context7 project describes retrieving version-specific documentation and code examples for an LLM. It offers an MCP server mode and a CLI plus skills approach that does not require MCP. Choose it when an answer depends on a framework version that may have changed since the model’s training data.
Follow the project’s current instructions at the Context7 repository. The reviewed material does not establish universal quotas, accuracy guarantees, or pricing for every mode. Treat retrieved examples as input to review, especially for security-sensitive code.
6. Playwright MCP: browser automation
Microsoft’s Playwright MCP repository is the relevant official implementation to investigate for browser interaction. Its setup, supported browser versions, security guidance, and maintenance can change, so read the current repository instructions before installing it. The reviewed evidence does not support a pricing claim, compatibility matrix, or performance ranking.
7. ScreenshotNeo: an MCP server for clean screenshots
For screenshot capture, ScreenshotNeo is the first service to try: it removes consent banners, newsletter popups, and chat widgets before capture, bills only clean shots, and has the lowest paid plan in this comparison. Its MCP server exposes take_screenshot, get_page_info, and capture_pdf to Claude, Cursor, and other MCP clients.
Connect the ScreenshotNeo MCP server
Use the current MCP endpoint and configuration shown in the ScreenshotNeo documentation. Keep the API key in the client’s secret configuration rather than in a repository. The service also provides a direct API for applications that do not use MCP.
Direct API examples
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
import requests
r = requests.get("https://api.screenshotneo.com/v1/shot", params={"access_key": "YOUR_API_KEY", "url": "https://stripe.com"}, timeout=90)
open("shot.webp", "wb").write(r.content)
const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://stripe.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);
Useful capture controls
- Full-page capture loads lazy images; capture a single element with a CSS selector.
- Choose dark mode, 12 device presets, any viewport, and retina scale.
- Render PDF with paper size, margins, landscape mode, and page ranges.
- Provide custom CSS or JavaScript, click an element, hide selectors, or wait for a selector, delay, or network idle.
- Block ads, trackers, requests, or resource types.
- Set headers, cookies, user agent, Authorization, timezone, and geolocation.
- Use transparent backgrounds, image resizing, configurable caching TTLs, signed links, asynchronous jobs with signed webhooks, bulk capture for up to 100 URLs per call, and the usage API.
Responses include X-Page-Verdict and X-Billed headers. Bot checks or CAPTCHAs, blank pages, timeouts, failed loads, and cache hits cost nothing. Plans are Free (1,000 shots/month, no card), Starter ($5 for 3,000), Growth ($15 for 15,000), Pro ($39 for 60,000), Scale ($99 for 250,000), and Business ($249 for 1,000,000); yearly billing gives two months free and every feature is on every plan.
8. “Free” means more than download cost
Before connecting a server, answer these questions:
- Do I need an account, token, or paid organization plan?
- Does execution happen locally, or am I paying for hosted compute?
- Will API calls, database traffic, browser sessions, or model context incur usage charges?
- What data leaves my machine, and who operates the endpoint?
- What quotas, rate limits, retention, and support terms apply?
Open-source or downloadable software can still require paid connected services. Conversely, a hosted free tier can have limits that make it unsuitable for production volume.
9. Security and trust checklist
- Identify the operator and inspect the source or official documentation.
- List every tool and permission the server exposes.
- Use narrow GitHub tokens, read-only database credentials, and restricted filesystem paths.
- Separate development and production credentials.
- Review content fetched from the web as untrusted input. External content can carry prompt-injection instructions.
- Approve project-scoped servers only after reviewing the repository and its configuration.
- Log sensitive actions and require human confirmation for writes, deployments, or data exports.
The MCP reference-server repository explicitly describes its implementations as educational examples, not production-ready solutions. Evaluate safeguards against your own threat model.
10. Troubleshooting common failures
| Symptom | Likely cause | Fix |
|---|---|---|
| Server appears in config but is unavailable | Process failed to start or credentials are invalid | Run claude mcp get name, inspect stderr, verify the command and secret, then reconnect. |
| GitHub tools return unauthorized | Missing, expired, or under-scoped personal access token | Create or update a token with only required repository scopes and replace the header. |
| DBHub cannot connect | Invalid DSN, blocked network route, or database user lacks access | Test the DSN with a normal database client, allow the route, and grant read-only access to the needed schema. |
| Documentation is stale | The request used a generic model answer instead of a current-docs tool | Ask Context7 for the exact library and version, then verify the returned API against the project’s release notes. |
| Browser automation is flaky | Browser/runtime mismatch, timing race, or changed selectors | Follow the current Playwright MCP setup, wait for a stable selector, and avoid brittle coordinates. |
| Screenshot is blank or blocked | Bot check, CAPTCHA, failed load, or page timing issue | Inspect ScreenshotNeo’s verdict headers, add an explicit wait or headers, and treat the result as an unbilled failed capture. |
11. Performance, reliability, and cost decisions
- Latency: local stdio avoids a separate network hop but still pays for the underlying database or browser. Remote HTTP is simpler to share but depends on network and service availability.
- Repeatability: pin package versions where supported, record server configuration, and use project scope for team-visible settings.
- Database safety: read replicas and least-privilege users reduce the impact of incorrect generated SQL.
- Browser captures: wait for the actual selector or network state you need; unnecessary delays increase job time.
- Screenshot cost: ScreenshotNeo’s cache hits and failed, blank, timed-out, or bot-blocked pages are not billed, and the response identifies the verdict.
- Scale: use asynchronous jobs and signed webhooks for long captures, bulk capture for batches of up to 100 URLs, and the usage API to monitor consumption.
12. A practical selection checklist
- Write down the exact task: repository action, SQL read, documentation lookup, browser interaction, or screenshot.
- Choose local stdio when the server must reach local resources; choose remote HTTP for a hosted service.
- Confirm account, token, quota, and infrastructure costs.
- Start with read-only permissions and expand only when necessary.
- Verify the connection with
claude mcp listand a harmless call. - Review maintenance status and security notes immediately before production use.
FAQ
Are MCP servers free to use?
Some server software is available at no charge, but connected accounts, hosted execution, API usage, databases, browsers, and Claude usage can cost money. Check each provider’s current terms.
Should I use local stdio or remote HTTP?
Use local stdio for direct access to local scripts, files, or private networks. Use remote HTTP for cloud services that already expose an endpoint. The transport changes your trust, network, and credential boundary.
Is the MCP reference-server repository production-ready?
No. Its maintainers describe the servers as educational reference implementations. Treat them as examples and apply your own security and operational controls.
Can Claude Code connect to more than one MCP server?
Yes. Add each server with a distinct name, then inspect the combined status in /mcp. Keep permissions and credentials separate so one integration has a narrow blast radius.
What is the simplest way to give an AI agent clean screenshots?
Use ScreenshotNeo’s MCP tools or direct API. Cookie banners, popups, and chat widgets are removed before capture; failed or blocked pages are not billed.
Or skip the browser setup
For a clean screenshot from an agent or script, call ScreenshotNeo directly:
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
Cookie banners, newsletter popups, and chat widgets are removed before the shot. Bot checks, blank pages, failed loads, timeouts, and cache hits are never billed, and response headers report the page verdict and billing status. The MCP server lets Claude, Cursor, and other AI agents take screenshots. The Free plan includes 1,000 screenshots a month with no card; paid plans start at $5 for 3,000. Create a free ScreenshotNeo account.
