Riverland Faeries
Riverland Faeries is an event and gathering management platform for the Radical Faeries community in the Netherlands. This book covers browsing public events, managing gatherings and registrations, coordinating carpooling and logistics, using kanban boards and wiki pages for planning, and integrating with Claude Desktop via the Gathering Organiser MCP connector.
- Getting Started
- Managing Events
- Gathering Planning
- Creating a Gathering
- Gathering Overview Dashboard
- Gathering Statuses and Lifecycle
- Managing the Organiser Team
- Registrations, Forms & Logistics
- Planning Tools
- MCP Server & Claude Desktop Integration
Getting Started
Your first steps with Riverland Faeries; signing in, browsing events, and finding your way around the admin panel.
Getting Started with Riverland Faeries
Riverland Faeries is a community platform for the Radical Faeries in the Netherlands. It handles public event listings, multi-day gathering planning, registrations, carpooling, wiki pages, and more.
What you'll need
- A Junovy Account (sign in at https://auth.junovy.com)
- An admin, editor, or moderator role to access the admin panel (contact an existing admin if you need access)
- A modern web browser (Chrome, Firefox, Safari, or Edge)
Signing in
- Go to https://riverland.faeries.eu
- Click the profile icon in the top-right corner
- Click Sign in with Junovy
- Enter your Junovy Account credentials (and your 2FA code if you have two-factor authentication enabled)
You'll be redirected back to Riverland Faeries, now signed in. If you have an admin role, you'll see a link to the admin panel.
What the platform offers
- Public event listings that anyone can browse without signing in; with list and calendar views, filtering, and event details
- Gathering management for multi-day residential events; including registration forms, carpooling coordination, kanban planning boards, wiki pages, and checklists
- MCP connector for managing gatherings through Claude Desktop or Claude.ai using natural language
Next steps
- Learn how to browse events on the public site
- Explore the admin panel and its sections
Navigating the Public Site
The public site at https://riverland.faeries.eu is open to everyone; no sign-in required. It's where community members browse upcoming events and find out what's happening.
The home page
The home page features a hero section with a call-to-action button labelled View Events. The top navigation bar includes links to Home, Events, Submit Event, About Us, and Contact Us.
Browsing events
- Event photo
- Title and date
- Short description
- Venue and organiser names
- Category tag (e.g. "Gathering", "Workshop")
List vs calendar view
Toggle between List and Calendar views using the buttons at the top right of the events page.
- List view (default): event cards in chronological order
- Calendar view: a monthly calendar with events displayed on their dates
Filtering events
Click the Filters button to narrow results by date range or category. Click Reset to clear all filters and return to the default view.
Viewing event details
Click View Details on any event card to see the full event page, which includes:
- Full event photo
- Complete date, time, and duration
- Venue name, address, and description
- Organiser information
- Full event description
- Links to community chat groups or external resources
Submitting an event
Community members can suggest events via the Submit Event page. Submissions are reviewed by admins before appearing publicly.
Accessing the Admin Panel
The admin panel is where organisers manage events, gatherings, venues, and all the planning tools. You need to be signed in with an appropriate role to access it.
How to get there
- Sign in to https://riverland.faeries.eu
- Click the profile icon in the top-right corner
- Select Admin from the dropdown, or navigate directly to https://riverland.faeries.eu/admin
If you don't see the Admin option, your account doesn't have an admin role. Ask an existing admin to grant you access.
Roles and permissions
| Role | What you can do |
|---|---|
| admin | Full access: create, edit, delete all content and manage users |
| editor | Create and edit events, gatherings, and all planning content |
| moderator | Approve event submissions and moderate content |
| user | Basic admin panel access (view only) |
Sidebar navigation
The admin panel sidebar is organised into two sections:
Content
- Events — Public event listings
- Gatherings — Multi-day gathering planning and management
- Venues — Location management
- Organisers — Organiser profiles
Taxonomy
- Categories — Event and gathering categories
- Tags — Tags for filtering and organisation
Settings at the bottom provides access to site-wide configuration.
Quick actions
The green + Create New button at the top of the sidebar lets you quickly create a new event or gathering from anywhere in the admin panel.
Switching back to the public site
Click Public Site in the top-right corner to return to the public-facing website.
Managing Events
Creating and managing public event listings, venues, organisers, and taxonomy.
Creating an Event
Events are public listings that appear on the Riverland Faeries website. They can be anything from a one-off workshop to a weekend gathering.
Before you start
- You'll need at least one venue and one organiser set up (see Managing Venues and Organisers)
- Have the event details ready: title, dates, description, and an image
Steps
The event will appear in the admin event list. It becomes visible on the public site once published.
Tips
- Use a high-quality landscape image for the event photo; it appears prominently on event cards and detail pages
- Keep the description concise but informative; include practical details like what to bring, accessibility info, and how to get there
- You can create the event as a draft first and publish it later
Editing and Deleting Events
You can update event details at any time, or remove events that are no longer relevant.
Editing an event
Changes are reflected on the public site immediately.
Deleting an event
⚠️ Deleting an event removes it permanently. If you're unsure, consider editing the event to remove it from public view rather than deleting it entirely.
Tips
- If an event has been cancelled, consider updating its title to include "(Cancelled)" and adding a note to the description rather than deleting it; this way people who bookmarked the link still get useful information
- The events list shows the event title, date, venue, and organiser at a glance, making it easy to find the one you need
Managing Venues and Organisers
Venues and organisers are shared across events and gatherings. Set them up once and reuse them wherever needed.
Creating a venue
Editing a venue
Creating an organiser
Editing an organiser
Tips
- Venues and organisers appear on public event pages, so keep the information accurate and friendly
- You can assign multiple organisers to a single event
- If a venue is used by many events, updating the venue details will update the display across all linked events
Categories and Tags
Managing categories
Categories are used as the primary filter on the public events page. Common categories include Gathering, Workshop, Social, Performance, and Heart Circle.
Managing tags
Tips
- Keep the number of categories small (5-10) for a clean filtering experience
- Tags can be more numerous and specific; they're useful for cross-cutting themes
- Both categories and tags are shared across events and gatherings
Gathering Planning
The full gathering management workflow from draft to post-event.
Creating a Gathering
Gatherings are multi-day residential events; the heart of the Radical Faeries community. They're more complex than simple events and come with a full suite of planning tools.
Before you start
- Have the basic details ready: name, type, dates, and expected capacity
- Optionally, set up a venue first (see Managing Venues and Organisers)
Steps
The gathering is created in Draft status. You can start setting up forms, kanban boards, checklists, and wiki pages before publishing it.
What happens next
Once saved, you'll land on the gathering's Overview tab. From here you can:
- Set up registration forms
- Create planning boards
- Add wiki pages
- Manage the organiser team
- Change the gathering's status when you're ready to go live
Tips
- Start in Draft status and work through the planning tools before publishing
- The optimal/max capacity split is useful for gatherings that can stretch a bit; the overview dashboard shows both numbers
- You can link a gathering to a public event listing using the Manage Event Listing quick action
Gathering Overview Dashboard
The Overview tab is your gathering's home base. It shows key stats, quick actions, basic information, and the organiser team at a glance.
Getting there
Stats cards
The top of the overview shows four summary cards:
- Days until gathering: a countdown to the start date
- Capacity (optimal / max): current registrations vs capacity (e.g. "35 / 45")
- Forms created: number of forms set up for this gathering
- Wiki status: whether wiki pages have been created
Quick Actions
Below the stats, you'll find shortcut buttons for common tasks:
- Change Status: move the gathering between Draft, Planning, Published, and Archived
- Manage Event Listing: create or edit the linked public event
- Manage Registration: jump to registration form setup
- Create Carpooling: set up a carpool coordination form
- Create Pickup: set up pickup run coordination
- Create Wiki: start the gathering wiki
- Survey: create a post-gathering survey
Basic Information
The collapsible Basic Information section shows:
- Gathering type and visibility
- Start and end dates
- Venue details
- Description
Organiser Team
The right-hand panel lists the current organiser team with their roles:
- ORGANIZER: primary organiser(s)
- CO ORGANIZER: co-organisers helping with planning
- ADVISOR: advisors providing guidance
Click + Add to invite additional organisers.
Navigation tabs
The tab bar at the top gives you access to all gathering features: Overview, Checklists, Kanban, Registrations, Wiki, Forms, Carpooling, Pickups, and Survey.
Gathering Statuses and Lifecycle
Gatherings move through a series of statuses as they progress from initial planning to completion. Each status signals a different phase of the planning process.
Status overview
| Status | Meaning | Who can see it |
|---|---|---|
| Draft | Initial setup; the gathering is being configured | Admins and editors only |
| Planning | Active planning phase; forms and tools are being set up | Admins and editors only |
| Published | The gathering is live and accepting registrations | Everyone (public) |
| Archived | The gathering is complete or cancelled | Admins only |
Changing status
- Open the gathering's Overview tab
- Click the Change Status quick action button
- Select the new status from the dropdown
- Confirm the change
Typical lifecycle
- Create in Draft: set up the basic details, venue, and organiser team
- Move to Planning: start building out forms, checklists, kanban boards, and wiki pages
- Move to Published: the gathering appears publicly; registration opens (if a registration form is set up)
- Move to Archived: after the gathering is complete; all data is preserved for reference
Tips
- You can move backwards (e.g. Published back to Planning) if you need to make changes before going live again
- Archiving doesn't delete anything; it simply hides the gathering from public view and moves it to the archived list
- Use the Show Archived button on the Gatherings list page to view past gatherings
- The gathering list page shows status as a coloured badge: orange for Draft, blue for Planning, green for Published
Managing the Organiser Team
Each gathering has an organiser team. Team members get access to the gathering's planning tools and can be assigned tasks on kanban boards and checklists.
Roles
| Role | Description |
|---|---|
| Organizer | Primary organiser with full access to all gathering features |
| Co Organizer | Helps with planning; can edit most gathering content |
| Advisor | Provides guidance; lighter-touch access to planning tools |
Adding a team member
- Open the gathering's Overview tab
- In the Organizer Team panel on the right, click + Add
- Search for the user by name
- Select their role (Organizer, Co Organizer, or Advisor)
- Click Add
The user must have an existing Junovy Account. Their account is synced from Keycloak when they first sign in.
Removing a team member
- Open the gathering's Overview tab
- In the Organizer Team panel, click the ✕ next to the person's name
- Confirm the removal
Tips
- Each gathering needs at least one Organizer
- Team members appear with their faerie names and role badges
- You can assign kanban cards and checklist items to any member of the organiser team
- The organiser team is specific to each gathering; being an organiser on one gathering doesn't automatically grant access to others
Registrations, Forms & Logistics
Handling participant sign-ups, carpooling coordination, and pickup runs.
Registration Forms
Registration forms let participants sign up for a gathering. You build the form using a flexible field editor, and responses are collected and managed from the Registrations tab.
How registration forms work
Each gathering can have one registration form. The form uses a JSONB schema, which means you can define whichever fields you need; there's no fixed template. Common fields include name, faerie name, dietary requirements, accessibility needs, arrival date, and sliding-scale payment preference.
When a participant submits the form, their response is saved as a registration with a Pending status. You can then review and approve, waitlist, or decline registrations from the admin panel.
Creating a registration form
- Open the gathering's Overview tab
- Click the Manage Registration quick action button
- This takes you to the Forms tab, where you can create a new form of type REGISTRATION
- Give the form a title and URL slug (this creates the public link participants will use)
- Build your form fields using the schema editor
- Set an Open date and Close date to control when the form accepts submissions
- Optionally set a Maximum submissions limit
- Click Save
Form settings
| Setting | Description |
|---|---|
| Title | The name shown to participants at the top of the form |
| URL slug | Creates a public URL for the form (e.g. riverland.faeries.eu/forms/beltane-2026-registration) |
| Open date | When the form starts accepting submissions |
| Close date | When the form stops accepting submissions |
| Max submissions | Optional cap on the number of responses |
Tips
- The URL slug must be unique across all forms in the system
- You can close registrations early by changing the close date
- Form responses include the submitter's IP address for audit purposes (GDPR compliance)
- If a participant has a Junovy Account and is signed in, their submission is linked to their user profile automatically
- Anonymous submissions are also supported for gatherings that allow them
Managing Registrations
Once participants submit a registration form, their responses appear in the Registrations tab. From here you can review submissions, update statuses, and track capacity.
Registration statuses
| Status | Meaning |
|---|---|
| Pending | The participant has submitted; awaiting review |
| Approved | The participant is confirmed for the gathering |
| Waitlisted | The gathering is at capacity; the participant is in the queue |
| Declined | The registration has been declined |
| Cancelled | The participant (or an organiser) has cancelled the registration |
Reviewing registrations
- Open the gathering and click the Registrations tab
- You'll see a list of all submissions with their current status
- Click a registration to view the full form response, including all fields the participant filled in
- Use the status dropdown to approve, waitlist, decline, or cancel the registration
- Optionally add internal Notes when changing a status (these are only visible to organisers)
Tracking capacity
The gathering's Overview tab shows capacity usage in the stats cards at the top. The numbers reflect how many approved registrations there are against the optimal and maximum capacity you set when creating the gathering.
If you've set a maximum capacity, keep an eye on the count when approving new registrations. Waitlisting is useful when you're close to capacity but expect some cancellations.
Exporting registrations
You can export registration data in several formats for offline use or sharing with co-organisers:
- CSV: spreadsheet-friendly format
- JSON: structured data for technical use
- Markdown: formatted table for pasting into documents or wiki pages
- Dietary summary: a breakdown of dietary requirements across all approved participants
Exports can be filtered by status, so you can pull just the approved registrations if needed.
Tips
- Review registrations regularly during the open period; participants appreciate a quick response
- Use the Notes field to record why a registration was declined or waitlisted; this helps if questions come up later
- The dietary summary export is particularly useful for kitchen planning
- Registration data is soft-deleted rather than permanently removed, in line with GDPR requirements
Carpooling Coordination
The carpooling feature helps organisers match drivers with passengers for travel to and from the gathering venue. Participants indicate their travel plans via a carpool form, and organisers can then create and manage matches.
Setting up carpooling
- Open the gathering's Overview tab
- Click the Create Carpooling quick action button
- This creates a CARPOOL type form linked to the gathering
- Participants fill in details like their departure city, travel dates, whether they're driving or need a ride, and how many seats they have (if driving)
Once submissions come in, you can view and manage them from the Carpooling tab.
Managing carpool matches
Carpool matches go through a simple workflow:
| Status | Meaning |
|---|---|
| Suggested | A potential match has been identified |
| Introduction sent | The driver and passenger have been introduced to each other |
| Confirmed | Both parties have confirmed the arrangement |
| Cancelled | The match has been cancelled |
To update a match:
- Open the gathering and click the Carpooling tab
- Review the list of matches with their current statuses
- Click a match to update its status or add notes
Carpool statistics
The carpooling stats give you an overview of:
- Total number of matches
- How many are confirmed, pending, or cancelled
- How many passengers are still unmatched
This helps you spot where extra coordination is needed; for example, if several people from the same city still need rides.
Tips
- Start matching early so participants have time to coordinate details
- The introduction step is useful; rather than sharing contact details immediately, you can send an introduction message first and let both parties confirm
- Check for unmatched passengers as the gathering approaches; you may need to arrange alternative transport or ask existing drivers if they have space
Pickup Runs
Pickup runs coordinate transport from nearby train stations, bus stops, or meeting points to the gathering venue. This is common for rural venues where public transport doesn't reach the door.
Setting up pickup coordination
- Open the gathering's Overview tab
- Click the Create Pickup quick action button
- This creates a PICKUP type form linked to the gathering
- Participants fill in their arrival details: date, time, station or meeting point, and number of people
Submissions appear in the Pickups tab, where you can organise them into runs.
How pickup runs work
A pickup run represents a single trip by a driver to collect one or more participants. Each run includes:
- Driver: who's doing the pickup
- Time: when the run departs
- Location: the pickup point (e.g. "Arnhem Centraal station")
- Passengers: who's being collected on this run
Organising runs
- Open the gathering and click the Pickups tab
- Review the incoming pickup requests from participants
- Group requests by time and location to plan efficient runs
- Assign a driver and passengers to each run
Tips
- Coordinate pickup runs with the carpool matches; sometimes a driver heading to the venue can collect someone from a nearby station along the way
- Share the pickup schedule with drivers in advance so they know when and where to be
- For gatherings with many arrivals, consider creating a shared wiki page with a pickup timetable that participants can check
- Account for luggage and supplies when planning how many passengers per run; gathering participants often bring food contributions and camping gear
Planning Tools
Kanban boards, checklists, wiki pages, and surveys for organising your gathering.
Kanban Boards
Kanban boards give your organiser team a visual way to track tasks. Cards move through columns (e.g. "To Do", "In Progress", "Done") so everyone can see what needs doing and what's already been handled.
Board types
Each gathering can have multiple kanban boards, each with a type that reflects when the tasks apply:
| Type | Purpose |
|---|---|
| Planning | Pre-event tasks (venue booking, shopping lists, form setup) |
| During | Tasks to manage during the gathering itself (kitchen rota, ritual prep) |
| Post | Post-event wrap-up (cleaning, thank-you messages, financial summary) |
Creating a board
- Open the gathering and click the Kanban tab
- Click + New Board
- Give the board a name and select a type
- The board is created with default columns; you can rename or add columns as needed
Working with columns
Columns represent the stages a task moves through. A typical setup might be:
- To Do: tasks that need doing
- In Progress: tasks someone is actively working on
- Done: completed tasks
You can add, rename, reorder, or remove columns to fit your workflow.
Working with cards
Cards represent individual tasks. Each card supports:
| Feature | Description |
|---|---|
| Title | A short description of the task |
| Priority | LOW, MEDIUM, HIGH, or URGENT |
| Due date | When the task needs to be completed by |
| Category | A label for grouping (e.g. kitchen, accessibility, ritual, logistics) |
| Assignee | A member of the organiser team responsible for the task |
| Comments | A threaded discussion on the card for collaboration |
To create a card, click + Add Card at the bottom of any column. Drag cards between columns as their status changes.
Tips
- Keep card titles short and action-oriented (e.g. "Book venue" rather than "We need to book the venue")
- Use priorities to highlight what's urgent; the URGENT level is useful for last-minute tasks during a gathering
- Assign cards to specific team members so it's clear who's responsible
- The comments feature is handy for quick updates without needing a separate chat thread
- Consider creating separate boards for different phases rather than one massive board
Checklists
Checklists provide a straightforward way to track tasks that need completing. They're simpler than kanban boards; just a list of items that can be ticked off as they're done.
Creating a checklist
- Open the gathering and click the Checklists tab
- Click + New Checklist
- Give the checklist a name (e.g. "Kitchen prep", "Venue setup", "Post-gathering cleanup")
- Add items to the checklist
Checklist items
Each item in a checklist can have:
| Feature | Description |
|---|---|
| Text | The task description |
| Due date | When it needs to be done by |
| Assignee | A member of the organiser team |
| Notes | Additional context or details |
| Completed | Whether the item has been ticked off |
When someone completes an item, the system records who completed it and when.
Planning phases
Checklists support planning phases that align with the gathering timeline. The available phases are:
- Three months before
- Two months before
- One month before
- One week before
- During the gathering
- Post gathering
If you don't specify a phase, the system auto-detects the current phase based on the gathering dates. This is useful for filtering; you can quickly see just the items that are relevant right now.
Tracking progress
The checklist progress view shows:
- Overall completion rate across all checklists
- Per-phase completion rates with progress bars
- A list of overdue items that need attention
This gives you a quick health check on how planning is going without needing to open each checklist individually.
Tips
- Use checklists for recurring tasks that are the same for every gathering (e.g. "order firewood", "set up first aid kit")
- The template support means you can create a standard checklist and reuse it across gatherings
- Combine checklists with kanban boards: use checklists for simple "done/not done" tracking and kanban for more complex tasks that need discussion and assignment
- Check the overdue items list regularly as the gathering approaches
Wiki Pages
Wiki pages let you create and share information about a gathering. Think of them as a mini knowledge base; you can write pages about the venue, house rules, kitchen guidelines, ritual plans, or anything else participants and organisers need to know.
Creating a wiki
- Open the gathering's Overview tab
- Click the Create Wiki quick action button
- This opens the Wiki tab, where you can start adding pages
Adding pages
- On the Wiki tab, click + New Page
- Give the page a title and URL slug
- Write the content using markdown
- Set the display order (lower numbers appear first in the navigation)
- Click Save
Publishing pages
Wiki pages start as drafts. To make a page visible to participants:
- Open the page
- Toggle the Published switch, or click Publish
- The page is now publicly visible to anyone viewing the gathering
You can unpublish a page at any time to hide it while you make changes.
Page features
| Feature | Description |
|---|---|
| Title | The page heading |
| Slug | URL-friendly identifier, unique within the gathering |
| Content | Markdown-formatted text |
| Order | Display order in the page list (lower = higher in the list) |
| Published | Whether the page is visible to participants |
| Version | Auto-incrementing version number for tracking changes |
Common wiki pages
Here are some pages that gathering organisers typically create:
- Welcome and arrival info: directions, what to bring, house rules
- Kitchen and food: meal schedule, kitchen rota, allergy information
- Ritual and workshops: schedule of workshops, ritual guidance
- Venue guide: maps, facilities, fire safety, quiet hours
- Practical info: WiFi details, nearest shops, emergency contacts
Tips
- Use markdown formatting to keep pages readable; headings, lists, and bold text all work
- The version tracking means you can see how many times a page has been updated, which is useful for pages that change frequently (like the workshop schedule)
- Consider creating a "What to bring" page early in the planning process; it's one of the most commonly asked questions
- Wiki pages are specific to each gathering, so you can tailor the content to each event
Surveys
Surveys let you collect feedback from participants after a gathering. They use the same form system as registration and carpool forms, but with a SURVEY type.
Creating a survey
- Open the gathering's Overview tab
- Click the Survey quick action button
- This creates a new SURVEY type form linked to the gathering
- Build your survey fields using the schema editor
- Set a URL slug so you can share the link with participants
- Set open and close dates to control when the survey is available
- Click Save
Common survey questions
Post-gathering surveys typically cover:
- Overall experience and satisfaction
- What worked well and what could be improved
- Feedback on specific aspects (food, accommodation, workshops, rituals)
- Suggestions for future gatherings
- Whether the participant would come again
Viewing responses
Survey responses appear in the Survey tab (or via the Forms tab). You can:
- View individual responses
- Export all responses as CSV, JSON, or markdown for analysis
- Filter by submission date
Tips
- Keep surveys reasonably short; participants are more likely to complete them if they don't take too long
- Send the survey link within a week of the gathering ending, while memories are fresh
- Share a summary of the feedback with the community; it shows that organisers value input and helps build trust
- Anonymous submissions are supported if you want participants to feel comfortable giving honest feedback
- You can set a maximum number of submissions if needed, though for surveys this is rarely necessary
MCP Server & Claude Desktop Integration
Using the Gathering Organiser MCP connector with Claude Desktop or Claude.ai to manage gatherings conversationally.
What Is the MCP Connector?
The Gathering Organiser MCP Server lets you manage gatherings through conversational AI. Instead of clicking through the admin panel, you can ask Claude to check registrations, update checklists, draft communications, and more; all through natural language.
How it works
MCP stands for Model Context Protocol. It's an open standard that lets AI assistants (like Claude) interact with external tools and services. The Gathering Organiser MCP Server wraps the Riverland Faeries REST API into 25 tools that Claude can call on your behalf.
The flow looks like this:
- You ask Claude something like "How many people have registered for Beltane?"
- Claude calls the
registration_statstool via the MCP server - The MCP server queries the Riverland Faeries API
- The results come back to Claude, who presents them in a readable format
What you can do with it
The MCP server covers seven areas of gathering management:
- Gathering management: create, update, and review gatherings
- Registrations: list registrations, update statuses, export data, check stats
- Budget and finance: generate budget calculations and bilingual financial reports
- Carpooling and logistics: view carpool matches, update match statuses, check pickup runs
- Communications: draft emails using bilingual templates (English/Dutch)
- Checklists: check planning progress, update checklist items, view overdue tasks
- Wiki pages: read and update gathering wiki content
Two ways to connect
The MCP server supports two transport modes:
| Mode | Best for | Authentication |
|---|---|---|
| stdio | Local development; running the server on your own machine | Static API token |
| HTTP | Production use; connecting to the hosted server at mcp-gatherings.junovy.com |
Keycloak OAuth 2.0 (signs in with your Junovy Account) |
For most organisers, the HTTP mode is the simplest option; you just point Claude at the hosted server and sign in with your Junovy Account. The stdio mode is for developers who want to run the MCP server locally.
Who can use it
You need to be a member of the organiser team for a gathering to manage it via the MCP server. The same permissions that apply in the admin panel apply when using Claude; if you can't do something in the UI, you can't do it via MCP either.
Setting Up Claude Desktop
Claude Desktop is Anthropic's desktop application for macOS and Windows. You can connect it to the Gathering Organiser MCP Server so that Claude can manage gatherings directly from your conversations.
Option 1: HTTP mode (recommended)
This connects Claude Desktop to the hosted MCP server. No local setup required.
- Open Claude Desktop
- Go to Settings (click your profile icon, then Settings)
- Click Developer in the sidebar, then Edit Config
- This opens the configuration file. Add the following to the
mcpServerssection:
{
"mcpServers": {
"gathering-organiser": {
"url": "https://mcp-gatherings.junovy.com/mcp",
"transport": "streamable-http"
}
}
}
- Save the file and restart Claude Desktop
- When you first use a gathering tool, you'll be prompted to sign in with your Junovy Account via Keycloak
Option 2: stdio mode (local development)
This runs the MCP server on your own machine. Useful for developers working on the Riverland Faeries codebase.
Prerequisites:
- Node.js 22+ (via Volta)
- pnpm 10+
- The
tenant-riverland-faeriesrepository cloned locally
Steps:
- Build the MCP server:
cd tenant-riverland-faeries/apps/mcp
pnpm install
pnpm build
- Open your Claude Desktop config file and add:
{
"mcpServers": {
"gathering-organiser": {
"command": "node",
"args": ["/path/to/tenant-riverland-faeries/apps/mcp/dist/index.js"],
"env": {
"GATHERING_API_URL": "http://localhost:3000",
"GATHERING_API_TOKEN": "your-api-token"
}
}
}
}
Replace /path/to/ with the actual path to your local repository, and your-api-token with a valid API token.
- Save and restart Claude Desktop
Config file locations
| Platform | Path |
|---|---|
| macOS | ~/Library/Application Support/Claude/claude_desktop_config.json |
| Windows | %APPDATA%\Claude\claude_desktop_config.json |
Verifying the connection
After restarting Claude Desktop, you should see a hammer icon (🔨) in the input area. Click it to see the list of available gathering tools. If the tools appear, the connection is working.
Try asking Claude: "List all gatherings" to confirm everything is set up correctly.
Troubleshooting
- Tools don't appear: check that the config JSON is valid (no trailing commas, correct brackets) and restart Claude Desktop
- Authentication errors (HTTP mode): make sure you can sign in to
riverland.faeries.euwith your Junovy Account; the MCP server uses the same Keycloak authentication - Connection refused (stdio mode): verify the path in
argspoints to the builtdist/index.jsfile, and that the API URL and token are correct - Server not responding: check that the Riverland Faeries API is running (locally for stdio, or that
mcp-gatherings.junovy.comis reachable for HTTP)
Setting Up Claude.ai (Cowork Mode)
If you use Claude through the web at claude.ai or the Claude desktop app's Cowork mode, you can add the Gathering Organiser MCP Server as a remote connector. This works with the hosted HTTP server, so no local installation is needed.
Adding the connector
- Open Claude.ai or the Claude desktop app
- Navigate to Settings > Connectors (or Integrations, depending on your version)
- Click Add Connector or Add MCP Server
- Enter the following details:
| Field | Value |
|---|---|
| Name | Gathering Organiser |
| URL | https://mcp-gatherings.junovy.com/mcp |
| Transport | Streamable HTTP |
- Click Save or Connect
- You'll be redirected to sign in with your Junovy Account via Keycloak
- After signing in, the connector is active and Claude can use the gathering tools
Using the connector
Once connected, you can ask Claude about your gatherings in any conversation. For example:
- "Show me all published gatherings"
- "How many registrations does Beltane 2026 have?"
- "What's the checklist progress for the upcoming gathering?"
Claude will use the appropriate MCP tool to fetch or update the information.
Managing the connector
- To disconnect, go back to Settings > Connectors and remove the Gathering Organiser entry
- If your session expires, Claude will prompt you to re-authenticate
- The connector uses OAuth 2.0 with PKCE, so your credentials are never stored by the MCP server; authentication is handled entirely through Keycloak
Tips
- The connector respects the same permissions as the admin panel; you can only manage gatherings you're an organiser for
- If you're using Cowork mode in the Claude desktop app, the connector works the same way as on claude.ai
- You can have the connector active alongside other MCP connectors without any conflicts
Available MCP Tools
The Gathering Organiser MCP Server exposes 25 tools across seven categories. This page lists all of them with a brief description of what each one does.
Gathering management
| Tool | Description |
|---|---|
gathering_list |
List all gatherings, optionally filtered by status or type |
gathering_get |
Get full details of a specific gathering |
gathering_create |
Create a new gathering |
gathering_update |
Update an existing gathering (title, dates, status, capacity, etc.) |
gathering_get_summary |
Get an overview including registration counts, checklist progress, and logistics status |
Registration and participants
| Tool | Description |
|---|---|
registration_list |
List registrations for a gathering, optionally filtered by status |
registration_get |
Get full details of a single registration including form responses |
registration_update_status |
Approve, waitlist, decline, or cancel a registration |
registration_stats |
Get registration statistics: totals by status, capacity usage, dietary breakdown |
registration_export |
Export registrations as CSV, JSON, markdown, or dietary summary |
Budget and finance
| Tool | Description |
|---|---|
budget_create |
Generate a budget calculation with sliding-scale pricing tiers |
budget_generate_report |
Produce a formatted bilingual (English/Dutch) budget report for sharing |
Carpooling and logistics
| Tool | Description |
|---|---|
carpool_list |
List all carpool matches for a gathering |
carpool_match |
Update a carpool match status (confirm, cancel, send introduction) |
carpool_stats |
Get carpool statistics: matches, confirmed/pending/cancelled, unmatched passengers |
pickup_list |
List all pickup runs with drivers, times, locations, and passengers |
Communication and templates
| Tool | Description |
|---|---|
comms_draft |
Draft an email using a bilingual template with gathering-specific data |
comms_list_templates |
List all available email templates |
comms_get_template |
Get details of a specific template including required parameters |
Available email templates: save-the-date, invitation, practical-update, thank-you, financial-summary.
Planning checklists
| Tool | Description |
|---|---|
checklist_get |
Get checklist items, optionally filtered by planning phase |
checklist_update_item |
Update a checklist item (complete, assign, add notes, set due date) |
checklist_progress |
Get overall and per-phase completion rates with overdue items |
Wiki pages
| Tool | Description |
|---|---|
wiki_get |
List all wiki pages or get a specific page's content |
wiki_update_section |
Update a wiki page's title, content, published status, or order |
wiki_publish |
Publish a wiki page to make it publicly visible |
Read-only vs. write tools
Most tools are read-only (they fetch data without changing anything). The tools that can make changes are: gathering_create, gathering_update, registration_update_status, carpool_match, checklist_update_item, wiki_update_section, wiki_publish, budget_create, budget_generate_report, and comms_draft.
When Claude uses a write tool, it will typically confirm the action with you first before proceeding.
Example Workflows
Here are some practical examples of how you can use the MCP connector with Claude to manage your gatherings. These show the kinds of questions you can ask and what Claude will do behind the scenes.
Checking registration status
You: "How are registrations looking for Beltane 2026?"
Claude uses registration_stats to pull the numbers, then presents a summary like:
- 28 approved, 5 pending, 3 waitlisted
- Capacity: 28 / 35 optimal, 28 / 45 maximum
- Dietary breakdown: 12 omnivore, 8 vegetarian, 5 vegan, 3 gluten-free
Reviewing and approving registrations
You: "Show me the pending registrations and approve the ones that look good."
Claude uses registration_list with a status filter, shows you each pending registration with their form responses, and then uses registration_update_status to approve the ones you confirm.
Checking planning progress
You: "What's left to do before the gathering?"
Claude uses checklist_progress to get completion rates and highlights overdue items. It might respond with something like: "Overall 72% complete. The 'one week before' phase has 3 overdue items: book firewood delivery, confirm kitchen rota, and print emergency contacts."
Coordinating carpools
You: "Are there any unmatched passengers for the gathering?"
Claude uses carpool_stats to check, then carpool_list to see the details. It can identify who still needs a ride and suggest potential matches based on location.
Drafting a save-the-date email
You: "Draft a save-the-date email for Beltane 2026."
Claude uses comms_draft with the save-the-date template. It pulls the gathering details and produces a bilingual (English/Dutch) email you can review and send.
Updating a wiki page
You: "Update the 'What to Bring' wiki page to mention that we'll have a sauna this time."
Claude uses wiki_get to fetch the current page content, then wiki_update_section to add the new information. You can review the updated content before it goes live.
Getting a gathering summary
You: "Give me a full overview of where we are with Beltane planning."
Claude uses gathering_get_summary to pull together registration counts, checklist progress, carpool status, and wiki page status into a single overview.
Generating a budget report
You: "Create a budget report for 35 participants over 5 days."
Claude uses budget_generate_report to calculate costs with sliding-scale tiers and produces a formatted bilingual report you can share with participants.
Tips for getting the best results
- Be specific about which gathering you mean if you have more than one active
- You can chain requests: "Check the registrations, then draft a practical update email with the current numbers"
- Claude will ask for confirmation before making changes (approving registrations, updating wiki pages, etc.)
- If you're not sure what tools are available, just ask Claude: "What can you help me with for gathering planning?"