# VolunteerReminder

Simple, automated volunteer shift reminders by email, text message (SMS), and calendar invite — so your volunteers actually show up. Plans start at $3/month. SMS is included on Deluxe and Pro as scheduled shift reminders, not a bulk-text or per-message credit pack.

VolunteerReminder is for small nonprofits, churches, food pantries, thrift stores,
and community groups that need volunteers to show up for recurring shifts. An
assistant can start a free trial, import a roster and schedule, and preview
upcoming shifts. New accounts start in test mode so nothing texts a real
volunteer until a human turns live sends on from the dashboard.

## Installation

Connect the remote MCP server (Streamable HTTP) to Claude, ChatGPT, or any MCP
client. No local package install.

```bash
# Connector URL (paste into Claude / ChatGPT custom connectors)
https://mcp.volunteerreminder.com

# Streamable HTTP endpoint
https://mcp.volunteerreminder.com/mcp

# Machine-readable server card
curl -s https://volunteerreminder.com/.well-known/mcp/server-card.json
```

Human walkthrough: https://volunteerreminder.com/docs/agents

## Configuration

Two auth paths:

1. **OAuth Allow (Claude / ChatGPT / Grok).** Add `https://mcp.volunteerreminder.com` as a custom
   connector. VolunteerReminder opens the existing sign-in (magic link or
   current session), then an Allow screen. After Allow, the client holds
   tokens and calls MCP tools as that account. No `vrk_` paste.
2. **API-key bearer (Cursor-style / scripts).** Mint a key from Account →
   Security (https://volunteerreminder.com/account/security) and send `Authorization: Bearer vrk_…`.
   `create_account` emails a verification link and does **not** return a key.

```json
{
  "mcpServers": {
    "volunteerreminder": {
      "url": "https://mcp.volunteerreminder.com/mcp",
      "headers": {
        "Authorization": "Bearer vrk_YOUR_KEY"
      }
    }
  }
}
```

OpenAPI: https://volunteerreminder.com/api/v1/openapi.json
API catalog: https://volunteerreminder.com/.well-known/api-catalog
Pricing JSON: https://volunteerreminder.com/api/v1/pricing

## Usage

Recommended path, always in test mode:

1. `create_account` — start a free trial (human verifies email). Connect via the Allow screen, or mint a key from Account → Security.
2. `import_volunteer_schedule` with `confirm: false` — parse a pasted CSV/roster and preview contacts, schedules, and upcoming shifts.
3. `import_volunteer_schedule` with `confirm: true` and the `preview_token` from that preview — create the schedules, contacts, and assignments.
4. `get_upcoming_shifts` — show the next shifts.

```csv
name,phone,email,job,day,start,end
Jane Doe,512-555-0100,jane@pantry.org,Greeter,Tuesday,9:00 AM,12:00 PM
John Smith,512-555-0101,john@pantry.org,Greeter,Thursday,9:00 AM,12:00 PM
```

```bash
curl -s https://volunteerreminder.com/api/v1/imports/preview \
  -H "Authorization: Bearer vrk_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"name,phone,email,job,day,start\nJane Doe,512-555-0100,jane@pantry.org,Greeter,Tuesday,09:00"}'
```

This import never flips reminder mode, never enables the confirm loop or
substitute finder, and never texts real volunteers.

## Sitemap

See the full [sitemap](https://volunteerreminder.com/sitemap.md) for every public page.
