Skip to main content
Glama
flarewand

freeqrcode-mcp-server

by flarewand
README.md
# Free QR Code Generator MCP Server

A Model Context Protocol (MCP) server that provides QR code generation capabilities through AI assistants like Cursor, Claude, and other MCP-compatible clients.

## Features

- 🎯 **Multiple QR Code Types**: URL, text, vCard, WiFi, email, phone
- 🎨 **Customization Options**: Size, colors, error correction levels
- 🚀 **High Performance**: Built with TypeScript and optimized for production
- 🔒 **Secure**: No local file system access, cloud-based API calls
- 📱 **Cross-Platform**: Works on Windows, macOS, and Linux

## Installation

### Global Installation (Recommended)

```bash
npm install -g freeqrcode-mcp-server
```

### Local Installation

```bash
npm install freeqrcode-mcp-server
```

## Usage

### 1. Cursor IDE Configuration

Add this to your `mcp.json`:

```json
{
  "mcpServers": {
    "freeqrcode": {
      "command": "npx",
      "args": ["freeqrcode-mcp-server"]
    }
  }
}
```

### 2. VS Code Configuration

Add this to your VS Code MCP settings:

```json
{
  "servers": {
    "freeqrcode": {
      "command": "npx",
      "args": ["freeqrcode-mcp-server"]
    }
  }
}
```

### 3. Environment Variables

You can customize the API endpoint:

```bash
export QR_API_BASE_URL=https://your-custom-domain.com
```

## Content Formats

The MCP server supports multiple content formats for different QR code types:

### URL QR Codes
```typescript
// Object format (recommended)
{
  type: 'url',
  content: { url: 'https://example.com' }
}

// String format (legacy)
{
  type: 'url',
  content: 'https://example.com'
}
```

### Text QR Codes
```typescript
{
  type: 'text',
  content: 'Hello, World!'
}
```

### vCard QR Codes
```typescript
{
  type: 'vcard',
  content: {
    firstName: 'John',
    lastName: 'Doe',
    email: 'john@example.com',
    phone: '+1-555-123-4567'
  }
}
```

### Email QR Codes
```typescript
{
  type: 'email',
  content: {
    email: 'contact@example.com',
    subject: 'Hello',
    body: 'Message body'
  }
}
```

### Phone QR Codes
```typescript
{
  type: 'phone',
  content: { phone: '+1-555-123-4567' }
}
```

### WiFi QR Codes
```typescript
{
  type: 'wifi',
  content: {
    ssid: 'MyWiFi',
    password: 'password123',
    encryption: 'WPA',
    hidden: false
  }
}
```

## Customization Options

All QR code generation tools support these options:

- **`size`**: QR code size in pixels (64-1024, default: 256)
- **`foregroundColor`**: Foreground color in hex format (default: #000000)
- **`backgroundColor`**: Background color in hex format (default: #FFFFFF)
- **`errorCorrectionLevel`**: Error correction level (`L`, `M`, `Q`, `H`, default: `M`)

## Error Correction Levels

- **L (Low)**: 7% recovery capacity
- **M (Medium)**: 15% recovery capacity (default)
- **Q (Quartile)**: 25% recovery capacity
- **H (High)**: 30% recovery capacity

## Contributing

1. Fork the repository
2. Create a feature branch
3. Make your changes
4. Add tests
5. Submit a pull request

## License

MIT License - see [LICENSE](LICENSE) file for details.

TDQS

B3.1/5.0

Scored across 1 tool

Disambiguation5/5

With only one tool, there is no risk of confusion or overlap.

Naming Consistency5/5

The single tool name follows a clear verb_noun pattern (generate_and_save_qr) and is descriptive.

Tool Count2/5

A single tool for QR code generation is minimal; users might expect additional tools for customization (e.g., size, format, or returning data).

Completeness2/5

The tool covers only basic generation and saving, missing common QR code parameters (e.g., error correction, size) or other operations like reading or styling.

Maintenance

ActivityInactive
ResponsivenessUnresponsive