MCP server

Connect an AI assistant to Hob’s MCP server and run club admin work with the same rights as in the dashboard.

Hob’s MCP server (Model Context Protocol) lets an AI assistant perform the same club admin work you do in the dashboard. The assistant signs in as you and only sees the clubs and actions your account already allows.

MCP is not a separate module and is not enabled in the club’s module picker. There is one endpoint for all of Hob; the club is chosen after you sign in.

This page describes day-to-day use, not the technical API.

Who is it for?

  • Admins who want an assistant to create seasons, classes, conventions, or members
  • Clubs that do some admin work by talking to an assistant, not only by filling forms
  • Cases where the assistant needs to read club data (members, programme, feedback) before making a change

MCP does not replace Hob’s user interface. Member enrolment, payments, and other member-facing actions still happen in Hob.

Connecting

The server uses streamable HTTP. Production URL:

https://hob.fi/mcp/

Use the URL with a trailing slash. The path is not under a club (not /ex_club/mcp/).

  1. In your MCP client (for example Claude Desktop, Cursor, or MCP Inspector), add a streamable HTTP server whose URL is https://hob.fi/mcp/.
  2. Leave the client id and secret empty if the client can register itself (dynamic client registration). Hob advertises registration on its OAuth server.
  3. On the first tool call the client opens a browser. Sign in with your Hob account.
  4. After that the assistant calls tools with a Bearer token. An unsigned-in user cannot reach the server.

Choosing a club

One connection covers every club your account belongs to. The assistant should list your clubs first, then run club-specific actions.

Each club entry includes the name, technical id, timezone, and enabled modules. A date or time without a zone is treated as that club’s local time (or the convention’s own zone when one is set). Responses return datetimes as ISO 8601 with an offset.

Once a club is selected, the assistant can ask which admin tools and query collections are available there and with which permissions. A tool you cannot call stays on the list as inaccessible — the assistant can say which permission is missing instead of hiding the capability.

Membership tools are included even when membership is not the club’s only module. Do not ask the assistant to call tools for a module the club does not use: the call may be blocked.

Changes, permissions, and audit

Read tools fetch data. Write tools change club data (create, update, publish, delete).

Every write call needs a short reason (why the change is made) and a mark for which assistant made it. The change is stored in Hob’s version history under your user account.

Permissions match the dashboard. If you cannot create members or conventions in the UI, you cannot do it through MCP. Ask a club admin to grant the matching role if needed.

Privacy

In tool responses, person fields (email, phone, last name) are shortened by default. Create and search may still use a full email or name as a filter.

Full person fields in responses require a club server setting. That setting cannot be turned on with an MCP call.

What you can do per module

MCP does not publish every Hob feature. Below is what the assistant can do today. If a module is not listed, it has no MCP tools.

Shared tools

For every signed-in user:

  • check that the connection works
  • list clubs the account can access
  • list tools and query collections for the club’s modules
  • query the club’s collections (members, classes, conventions, and so on) when permissions allow

Member registry

See also member registry.

The assistant can:

  • query members (people), membership seasons, and membership classes
  • create a new member (a person, not a membership enrolment)
  • create, update, and copy a membership season (a copy brings the form and classes)
  • create and update a membership class (price, description, rules)

Approving or rejecting a membership is not in MCP yet. A member is a person; a membership is a season- and class-specific enrolment.

Weekly classes

See also weekly class module. The technical identifier is danceclub.

The assistant can:

  • query seasons, classes (activities), events, and season tickets
  • create and update a season
  • create and update a class (drop-in, course, or both)
  • create and update a season ticket and attach it to classes
  • create individual events or generate recurring events on a weekly interval (for example every Tuesday through the end of the season, with selected dates skipped)
  • update or delete an event (delete fails if the event has enrolments)

Typical order: season → classes → events (or generate) → tickets → update the class if needed so the preferred ticket is linked. Enrolments and queues are not managed through MCP.

Conventions

See also convention module.

The assistant can:

  • query conventions, programme items and suggestions, and programme participants
  • create a convention (creating it does not publish it)
  • update convention settings, times, rooms, and forms
  • release the convention (a separate action)
  • create and update a programme item
  • approve a programme suggestion into a programme item, or reject a suggestion with a message

Convention registration, queues, room booking, and confirming participants are not done through MCP. A programme row does not include participants — query participants separately.

Feedback queries

See also feedback module.

The assistant can:

  • query feedback forms and submitted answers
  • create and update a query (slug, intro, form, end moment)
  • publish the query so it accepts answers

Submitting an answer as a member is not an MCP tool. An unpublished query is not open to respondents.

Reservations

See also reservations module. The technical identifier is lending.

The assistant can:

  • create a lendable resource (space or item)
  • add a booking rule to a resource
  • attach an iCalendar URL to a schedule (optional filter for calendar events)
  • attach a named schedule to a booking rule
  • create, update, and delete a booking as admin (resource by slug, borrower by email)

An admin booking through MCP does not follow booking-rule limits (capacity, conditions). Use this with care. Borrower and resource cannot be changed on update — create a new booking instead.

Messaging

In the dashboard this section is Messaging. The technical identifier is messaging.

The assistant can:

  • query newsletters (drafts and published)
  • create a draft newsletter tied to a source (for example a convention or a season)
  • update or delete an unpublished draft

Sending or publishing a newsletter is not in MCP. A published newsletter cannot be edited or deleted this way.

Practical tips

  • Tell the assistant the club first (name or technical id) and what you want done, for example “set up autumn weekly classes”.
  • Ask the assistant to list the club’s tools if an action fails — it may be a missing permission or a module that is not enabled.
  • Give write actions a clear reason (“opening the 2026 season”).
  • Do not assume the assistant can approve memberships, enrol members in classes, or send newsletters — those are not in MCP.
  • Check the dashboard when a change is public (releasing a convention, publishing a feedback query).