Skip to main content
Glama
README.md
# Primp MCP Server

A Model Context Protocol (MCP) server that provides access to the [primp](https://github.com/deedy5/primp) HTTP client library with browser impersonation capabilities.

## Features

- **Browser Impersonation**: Impersonate various browsers (Chrome, Firefox, Safari, Edge) and operating systems
- **HTTP Methods**: Support for GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS
- **Authentication**: Basic auth and Bearer token support
- **Proxy Support**: HTTP/HTTPS proxy support
- **File Uploads**: Multipart form data file uploads
- **Response Formats**: Return responses as text, JSON, markdown, plain text, or rich text
- **Advanced Options**: Configurable timeouts, redirect handling, SSL verification

## Installation

```bash
pip install -e .
```

## Usage

The server provides two main tools:

### 1. `primp_request`

Make HTTP requests with browser impersonation (note, these instructions are for the LLM):

```python
# Example usage in MCP client
{
    "name": "primp_request",
    "arguments": {
        "url": "https://httpbin.org/get",
        "method": "GET",
        "impersonate": "chrome_131",
        "impersonate_os": "windows",
        "headers": {
            "User-Agent": "My-App/1.0"
        },
        "return_format": "json"
    }
}
```

### 2. `primp_upload`

Upload files using multipart form data:

```python
# Example usage in MCP client
{
    "name": "primp_upload",
    "arguments": {
        "url": "https://httpbin.org/post",
        "files": [
            {
                "name": "file",
                "filename": "example.txt",
                "content": "SGVsbG8gV29ybGQ=",  # base64 encoded
                "content_type": "text/plain"
            }
        ],
        "data": {
            "description": "Test upload"
        }
    }
}
```

## Configuration

Add to your MCP settings:

```json
{
  "mcpServers": {
    "primp": {
      "command": "primp-mcp"
    }
  }
}
```

## Supported Browsers

- Chrome (versions 99-131)
- Firefox (versions 99-133)
- Safari (versions 12-18, including iPad/iPhone)
- Edge (versions 99-131)
- OkHttp (versions 3.14.9-5.0.0)

## Supported Operating Systems

- Windows
- macOS
- Linux
- Android
- iOS

## License

MIT