Labsco
MCP SERVER

Primp MCP Server

by tjsnell

Make HTTP requests that look like a real browser — Chrome, Firefox, Safari or Edge, on a chosen OS.

Page Fetching & Content Extraction
Summary
The markdown return format is the quiet win.

Impersonation is the headline, and it is what gets you past clients that reject non-browser fingerprints. But the option that changes daily use is `return_format`: asking for markdown means a fetched page arrives as something a model can read, rather than several thousand tokens of tags. Pick the impersonation profile deliberately — the version list is long and specific for a reason.

What it is

A Python server around the primp HTTP client, whose distinguishing feature is browser impersonation: the request carries the TLS and header fingerprint of a specific browser version rather than a generic client. Two tools cover the ground — one for ordinary requests, one for multipart file uploads.

What you get
  • `primp_request` performs GET, POST, PUT, PATCH, DELETE, HEAD or OPTIONS with an `impersonate` profile and an `impersonate_os`
  • `primp_upload` posts files as multipart form data, taking base64 content with a filename and content type
  • `return_format` shapes the response as text, JSON, markdown, plain text or rich text — so a page can come back readable instead of as raw HTML
  • Impersonation profiles cover Chrome 99-131, Firefox 99-133, Safari 12-18 including iPad and iPhone, Edge 99-131 and OkHttp 3.14.9-5.0.0
  • Operating systems: Windows, macOS, Linux, Android, iOS
  • Basic auth and Bearer tokens, HTTP/HTTPS proxies, configurable timeouts, redirect handling and SSL verification
Requirements

No account and no key. Install from a checkout with `pip install -e .`, then set the command to `primp-mcp` in your client config. Project `primp-mcp`, version 0.1.0. It will fetch any URL you give it with your network access, so treat it the way you would treat curl on the same machine.

Setup effort

One command — primp-mcp