npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@garuhq/mcp

v0.8.1

Published

Garu MCP server — payments for AI agents. PIX, card, boleto.

Downloads

1,214

Readme

@garuhq/mcp

npm version License: MIT

An MCP server for the Garu payment platform. Create charges, manage customers, and discover products — directly from any MCP client like Claude Desktop, Cursor, or Claude Code.

Features

  • PIX Charges — Create instant PIX charges with auto-generated QR codes for Brazilian real-time payments.
  • Boleto Charges — Generate boleto bancário payment slips.
  • Charge Management — List, retrieve, and refund charges (full or partial).
  • Products — List your seller's products and look them up by UUID — the same UUID accepted by the charge tools.
  • Customers — Create, list, get, update, and remove customers linked to your seller account.

Setup

Create a Garu account and get your API key at garu.com.br.

Usage

Claude Code

claude mcp add garu -e GARU_API_KEY=sk_live_xxx -- npx -y --package=@garuhq/mcp@latest garu-mcp

Cursor

Open the command palette and choose "Cursor Settings" > "MCP" > "Add new global MCP server".

{
  "mcpServers": {
    "garu": {
      "command": "npx",
      "args": ["-y", "--package=@garuhq/mcp@latest", "garu-mcp"],
      "env": {
        "GARU_API_KEY": "sk_live_xxx"
      }
    }
  }
}

Windsurf

Add to .windsurf/mcp.json:

{
  "mcpServers": {
    "garu": {
      "command": "npx",
      "args": ["-y", "--package=@garuhq/mcp@latest", "garu-mcp"],
      "env": {
        "GARU_API_KEY": "sk_live_xxx"
      }
    }
  }
}

VS Code

Add to .vscode/mcp.json:

{
  "mcpServers": {
    "garu": {
      "command": "npx",
      "args": ["-y", "--package=@garuhq/mcp@latest", "garu-mcp"],
      "env": {
        "GARU_API_KEY": "sk_live_xxx"
      }
    }
  }
}

Claude Desktop

Open Claude Desktop settings > "Developer" tab > "Edit Config".

{
  "mcpServers": {
    "garu": {
      "command": "npx",
      "args": ["-y", "--package=@garuhq/mcp@latest", "garu-mcp"],
      "env": {
        "GARU_API_KEY": "sk_live_xxx"
      }
    }
  }
}

Codex

codex mcp add garu --env GARU_API_KEY=sk_live_xxx -- npx -y --package=@garuhq/mcp@latest garu-mcp

Tools

Products (5 tools)

| Tool | Description | |------|-------------| | list_products | List your seller's products with pagination and search | | get_product | Get a single product by UUID — the identifier accepted by the charge tools | | get_product_portal_config | Read per-product portal customization (B2B2C, v0.8.0). Returns null if unset — product falls back to seller-level config | | set_product_portal_config | Upsert with merge: only fields provided are written. Pass null on a field to inherit from seller | | clear_product_portal_config | Remove the per-product config; product falls back to seller-level config |

Use list_products to discover the UUID you'll pass to create_pix_charge or create_boleto_charge.

Per-product portal config is the B2B2C primitive: SaaS that models professionals/coaches/instructors as Products under one Seller can give each one custom branding (businessName, primaryColor, logoUrl) and policies on the customer payment page + /minha-area portal — all without fragmenting the seller's accounting.

Charges (5 tools)

| Tool | Description | |------|-------------| | create_pix_charge | Create a PIX charge with QR code | | create_boleto_charge | Create a boleto bancário charge | | list_charges | List charges with pagination and filters | | get_charge | Get charge details by ID (includes status) | | refund_charge | Refund a charge (full or partial) |

Customers (6 tools)

| Tool | Description | |------|-------------| | create_customer | Create a customer linked to your seller account | | list_customers | List customers with search and pagination | | get_customer | Get customer details by ID | | update_customer | Update customer information | | delete_customer | Remove customer from your seller account | | set_customer_billing_email_override | Override the billing-email used for that customer |

Scheduled charges (12 tools)

Bill an existing customer on a future date — one-time or recurring with card tokenization.

| Tool | Description | |------|-------------| | create_scheduled_charge | Schedule a future charge. type='recurring' enables silent-charge of saved card on cycle 2+ | | list_scheduled_charges | Paginated list with filters by status, type, due-date range, customer | | get_scheduled_charge | Detail bundle: charge + event timeline + linked transactions | | mark_paid_scheduled_charge | Mark a cycle paid (off-Garu reconciliation) | | postpone_scheduled_charge | Move next due date forward | | pause_scheduled_charge / resume_scheduled_charge | Suspend / re-enable a series | | cancel_recurrence_scheduled_charge | Hard-stop future cycles (recurring only) | | cancel_at_period_end_scheduled_charge | Stripe-style soft-cancel; reversible | | change_scheduled_charge_payment_method | Swap the saved card | | clear_scheduled_charge_payment_method | Remove saved card; future cycles email-with-link | | list_scheduled_charge_attempts | Per-attempt billing log (v0.8.2). Each row carries the canonical failureCode for declines — use this to debug recurring billing failures without joining Transactions |

Resources

  • garu://docs/quickstart — Getting started guide
  • garu://docs/openapi — Link to the OpenAPI spec

Environment Variables

  • GARU_API_KEY — Your Garu API key (required). Get yours at garu.com.br.

Local Development

  1. Clone and build:
git clone https://github.com/Garu-Pagamentos/garu-mcp.git
npm install
npm run build
  1. To use the local build, replace the npx command with the path to your local build:

Claude Code:

claude mcp add garu -e GARU_API_KEY=sk_live_xxx -- node /absolute/path/to/garu-mcp/dist/index.js

Cursor / VS Code / Windsurf / Claude Desktop:

{
  "mcpServers": {
    "garu": {
      "command": "node",
      "args": ["/absolute/path/to/garu-mcp/dist/index.js"],
      "env": {
        "GARU_API_KEY": "sk_live_xxx"
      }
    }
  }
}
  1. Run tests:
npm test

License

MIT