open-index/open-npm huggingface dataset:
npm package: @mintmcp/qbo-mcp-server
Description: MCP server implementation for QuickBooks Online integration
Latest version: 0.0.1

# QuickBooks Online MCP Server

This is a Model Context Protocol (MCP) server implementation for QuickBooks Online integration.

## Setup

1. Install dependencies:
```bash
npm install
```

2. Create a `.env` file in the root directory with the following variables:
```env
QUICKBOOKS_CLIENT_ID=your_client_id
QUICKBOOKS_CLIENT_SECRET=your_client_secret
QUICKBOOKS_ENVIRONMENT=sandbox
QUICKBOOKS_OAUTH_PORT=8000  # Optional, defaults to 8000
```

3. Get your Client ID and Client Secret:
   - Go to the [Intuit Developer Portal](https://developer.intuit.com/)
   - Create a new app or select an existing one
   - Get the Client ID and Client Secret from the app's keys section
   - Add `http://localhost:8000/callback` to the app's Redirect URIs

## Authentication

There are two ways to authenticate with QuickBooks Online:

### Option 1: Using Environment Variables

If you already have a refresh token and realm ID, you can add them directly to your `.env` file:

```env
QUICKBOOKS_REFRESH_TOKEN=your_refresh_token
QUICKBOOKS_REALM_ID=your_realm_id
```

### Option 2: Using the OAuth Flow

If you don't have a refresh token, you can use the built-in OAuth flow:

This will:
- Start a temporary local server
- Open your default browser automatically
- Redirect you to QuickBooks for authentication
- Save the tokens to your `.env` file once authenticated
- Close automatically when complete

## Usage

After authentication is set up, you can use the MCP server to interact with QuickBooks Online. The server provides various tools for managing customers, estimates, bills, and more.

## Available Tools

Added tools for Create, Delete, Get, Search, Update for the following entities:


- Account
- Bill Payment
- Bill
- Customer
- Employee
- Estimate
- Invoice
- Item
- Journal Entry
- Purchase
- Vendor


## Error Handling

If you see an error message like "QuickBooks not connected", make sure to:

1. Check that your `.env` file contains all required variables
2. Verify that your tokens are valid and not expired
npm package: @mintmcqueen/mcp-screenshot-server
Description: Universal MCP server for taking screenshots across Windows, macOS, and Linux
Latest version: 1.2.0

# Screenshot MCP

A cross-platform MCP (Model Context Protocol) server for taking screenshots on Windows, macOS, and Linux.

## DEVELOPMENT NOTES:
* Definitely works on macos -- check it on windows and linux
* Will add video/audio support and add drawing
* Would like to add some streaming special sauce
* TELL ME WHAT TO BUILD AARON

## Installation

### NPX (Recommended)
```bash
npx @mintmcqueen/mcp-screenshot-server
```

### NPM Global Install
```bash
npm install -g @mintmcqueen/mcp-screenshot-server
```

### Claude Code Configuration

Add the MCP server to Claude Code:

```bash
claude mcp add -s user screenshot npx @mintmcqueen/mcp-screenshot-server
```

## Usage

The server provides a `take_screenshot` tool with the following options:

- **target** (optional): Window or application name to capture. If not provided, captures the entire screen.
- **output_path** (optional): Path to save the screenshot. If not provided, returns the image as base64.

### Examples in Claude

```
Take a screenshot of the entire screen
```

```
Take a screenshot of the "Chrome" window
```

```
Take a screenshot and save it to ~/Desktop/screenshot.png
```

## Platform Requirements

### macOS
- Uses built-in `screencapture` command
- No additional requirements

### Windows
- Uses PowerShell with .NET Framework
- No additional requirements

### Windows (WSL2)
- **Automatically detected** - no configuration needed
- Uses Windows PowerShell as a bridge from WSL2
- Screenshots saved to Windows-accessible paths
- Full compatibility with all WSL2 distributions

### Linux
- Requires one of:
  - `gnome-screenshot` (GNOME)
  - `scrot` (lightweight)
  - `import` (ImageMagick)

## WSL2 Support

The MCP Screenshot Server includes full WSL2 support with automatic detection and seamless operation:

- **Automatic Detection**: The server detects when running in WSL2 and automatically switches to use Windows PowerShell
- **Path Conversion**: Handles conversion between WSL2 paths (`/mnt/c/...`) and Windows paths (`C:\...`)
- **No Configuration**: Works out of the box with any WSL2 distribution
- **Error Handling**: Provides clear error messages for WSL2-specific issues

### How it Works

1. The server detects WSL2 by checking environment variables and kernel information
2. When a screenshot is requested, it uses `powershell.exe` to capture from the Windows host
3. Paths are automatically converted between WSL2 and Windows formats
4. Temporary files use Windows temp directory for cross-environment compatibility

## Development

```bash
# Clone and install
git clone <repo>
cd mcp-screenshot-server
npm install

# Build
npm run build

# Watch mode
npm run watch
```

## License

MIT