MCP serverio.github.dynamitecircle/dc
Read and act on your own Dynamite Circle membership data via the public DC Member API.
Overview
Score?
UNRATED 0.762
of what a free look can see, on 32 looks
Looks
35
last 15 hr ago
Tools
85
More info
URL
api.dynamitecircle.com/mcp
streamable-http
Says it is
dc-member-api 2.4.3
protocol 2025-06-18
In the record since
32 days ago
Among servers18,413 with a card
0median 0.606 · this server 0.762 · highest on record 0.8561
Toolsfrom sha256:67bbac62fd…b33bd1
| Tool | Schema |
|---|---|
| alerts GET /alerts — List your alerts
Returns the user's alerts, ordered by creation date (newest first). Maximum 50 results. |
input · no output |
| alerts_by_id_delete DELETE /alerts/:alertID — Deactivate an alert
Soft-delete an alert by setting `active: false`. The alert's history is preserved for past digests. Use `PATCH /alerts/:alertID` with |
input · no output |
| alerts_by_id_update PATCH /alerts/:alertID — Update an alert
Update one or more fields on an existing alert. Only provide the fields you want to change.
⚠️ WRITE operation: this mutates your DC acco |
input · no output |
| alerts_create POST /alerts — Create an alert
Create a new alert. The system will search for matching content and deliver digests on the configured frequency. Maximum 10 active alerts per user.
|
input · no output |
| announcements GET /announcements — List recent announcements
Returns the most recent announcements from DC's broadcast channels — official updates from the DC team and chapter staff (DC, DCBKK, |
input · no output |
| announcements_latest GET /announcements/latest — Latest announcement per channel (quick overview)
Returns the **single most recent announcement from each visible channel** — a one-shot overview rather |
input · no output |
| calendar GET /calendar — Get your iCalendar feed URL + settings
Returns your iCalendar feed URLs and the toggles that control which event categories the feed includes.
**Three URLs are re |
input · no output |
| calendar_update PATCH /calendar — Update calendar feed settings
Update any subset of your calendar feed toggles. Send only the toggles you want to change — omitted fields are left untouched. Retu |
input · no output |
| chapter GET /chapters/:cityID — Get a single chapter
Get full details for a single chapter, including up to 100 home-chapter members and the list of DCers currently visiting via active tr |
input · no output |
| chapters GET /chapters — List chapters
List all DC chapters (city-based community hubs), sorted by member count. Each chapter has a Google Place ID — pass it to `POST /trips` to create a t |
input · no output |
| event GET /events/:eventID — Get event details
Returns full details for a specific event, including your ticket status. |
input · no output |
| event_agenda GET /events/:eventID/agenda — Get your personal agenda for an event
Returns the sessions and meetups **YOU** have on your personal agenda for an event:
- Sessions you bookmarked |
input · no output |
| event_agenda_get GET /events/:eventID/agenda/:userID — Get another attendee's agenda for an event
Returns another attendee's personal agenda for an event — the sessions they bookmarked + meetups t |
input · no output |
| event_agendas GET /events/:eventID/agendas — Get multiple attendees' agendas in one call
Returns the agendas (bookmarked sessions + meetup RSVPs) for **multiple** attendees in a single call. Us |
input · no output |
| event_attendees GET /events/:eventID/attendees — List event attendees
List the confirmed attendees of an event — DCers holding a `valid` paid ticket OR a `valid`/`maybe` RSVP status. Refunded/can |
input · no output |
| event_free_slots_create POST /events/:eventID/free-slots — Find shared free time slots across attendees
Computes shared **free slots** across a set of event attendees — the time windows where they're NOT |
input · no output |
| event_meetup_attendees GET /events/:eventID/meetups/:meetupID/attendees — List meetup attendees
Returns the list of attendees who have RSVPd to a specific meetup. Same profile shape as `/events/:eventID |
input · no output |
| event_meetup_rsvp POST /events/:eventID/meetups/:meetupID/rsvp — RSVP to / leave a meetup
Join or leave a meetup. Requires a valid ticket for the event. The meetup's `rsvpCount` is updated atomical |
input · no output |
| event_meetups GET /events/:eventID/meetups — List event meetups
Returns the approved member-organized meetups for an event, sorted chronologically. Only approved meetups are returned.
**Access |
input · no output |
| event_rsvp POST /events/:eventID/rsvp — RSVP to a free event
RSVP to an event that uses free RSVP (not ticketed). Only works for events with rsvpEnabled: true.
⚠️ WRITE operation: this muta |
input · no output |
| event_schedule GET /events/:eventID/schedule — Get event schedule
Returns the full schedule (sessions) for an event, sorted chronologically.
**Access:** any active DCer who can see the event ca |
input · no output |
| event_schedule_attendees GET /events/:eventID/schedule/:sessionID/attendees — List session attendees (people who bookmarked it)
Returns the list of attendees who have **bookmarked** a specific session int |
input · no output |
| event_schedule_bookmark POST /events/:eventID/schedule/:sessionID/bookmark — Bookmark / unbookmark a session
Add or remove a session from your personal agenda — this is the API equivalent of the bookmark |
input · no output |
| event_sponsors GET /events/:eventID/sponsors — List event sponsors
Returns the sponsors for an event, ordered by tier (primary → supporting) then display order. Deleted sponsors are filtered out |
input · no output |
| events GET /events — List upcoming events
Returns upcoming DC events, sorted by date. Add `?past=true` to include past events.
**See also:** For events by name or topic (`q='productivit |
input · no output |
| follows_chapter_create POST /follows/chapters/:cityID — Follow a chapter
Follow a DC chapter (city hub). Idempotent. Target must exist in the chapters list (discover via `GET /chapters`). Cap 50 — hitti |
input · no output |
| follows_chapter_delete DELETE /follows/chapters/:cityID — Unfollow a chapter
Unfollow a DC chapter. Idempotent — unfollowing a chapter you weren't following is a no-op.
⚠️ WRITE operation: this mutates |
input · no output |
| follows_chapters GET /follows/chapters — List followed chapters
List the DC chapters (city hubs) you are currently following. Each entry is a mini-chapter with the chapter's Google Place ID — usef |
input · no output |
| follows_profiles GET /follows/profiles — List followed DCers
List the DCers you are currently following. Returns the same mini-profile shape used by every other list endpoint, so each entry roundt |
input · no output |
| follows_profiles_by_id_create POST /follows/profiles/:userID — Follow a DCer
Follow a DCer. Idempotent — calling it twice with the same userID is safe (no-op the second time). Target must exist and be publicly |
input · no output |
| follows_profiles_by_id_delete DELETE /follows/profiles/:userID — Unfollow a DCer
Unfollow a DCer. Idempotent — unfollowing someone you weren't following is a no-op (still returns 200 with the updated `count`). |
input · no output |
| inbox_unread GET /inbox/unread — Get unread counts
Returns your total unread message count and per-room breakdown. Only includes rooms you are subscribed to or are a member of. |
input · no output |
| interests GET /interests — Get your interests config
Returns the user's interests configuration — the set of tags they have subscribed or unsubscribed from. Returns an empty `{ tags: {}, cr |
input · no output |
| interests_create POST /interests — Subscribe or unsubscribe from interests
Subscribe or unsubscribe from interest tags in a single call. Pass a `updates` map of `{ slug: { subscribed: boolean } }` |
input · no output |
| invites GET /invites — List your invites
List the referral invites credited to you. Two source types appear:
- **`manual`** — invites you sent via `POST /invites` (the explicit email-an-i |
input · no output |
| invites_create POST /invites — Send an invite
Send a referral invite to someone. The server queues a templated email (delivered via a background task) that points the invitee at the apply flow w |
input · no output |
| invites_permacode GET /invites/permacode — Get your permacode
Returns your permanent referral code. Share this link to let people apply with your referral. |
input · no output |
| limits GET /limits — Get your effective rate limits + current usage
Returns the effective per-minute and per-day rate limits for your API key, **plus current usage** (how many calls you |
input · no output |
| locator_digest GET /locator/digest — Get locator digest
Returns your weekly locator digest — the same data that powers the Friday locator email.
Use this to surface trip/event activity around th |
input · no output |
| locator_settings GET /locator/settings — Get your Friday locator email settings
Returns the four toggles that control the Friday locator email digest. The digest is a weekly outbound email surfaci |
input · no output |
| locator_settings_update PATCH /locator/settings — Update your Friday locator email settings
Update any subset of the Friday locator email toggles. Send only the fields you want to change.
⚠️ WRITE opera |
input · no output |
| membership GET /membership — Get your membership state
Returns your full membership state: role, lifecycle dates, trial status, billing/subscription details, and a link to the Stripe Custome |
input · no output |
| membership_invoices GET /membership/invoices — List your Stripe invoices
Returns your Stripe invoices, newest first. Each entry includes a hosted-invoice URL and a PDF link, both safe to share — perf |
input · no output |
| notifications GET /notifications — Get your notification preferences
Returns your push + email preferences per notification category. Defaults are applied for any preference you have never expl |
input · no output |
| notifications_update PATCH /notifications — Update your notification preferences
Update any subset of your notification preferences. Send only the categories/channels you want to change — the rest sta |
input · no output |
| place GET /places/:placeID — Get place details
Fetch full details for one Google Place ID. Useful for verifying a placeID before sending it to `POST /trips` (which only accepts `type: " |
input · no output |
| places_search GET /places/search — Search Google Places
Search for places by name. Use this to look up a Google Place ID before creating a trip or referencing a venue.
Results include a `type` |
input · no output |
| profile GET /profile — Get your own profile
Returns your own full profile — every field the in-app profile editor surfaces to you, plus tier-derived state. Same shape regardless of tier ( |
input · no output |
| profile_match_create POST /profile-match — Match DCers from a description (or recommend if omitted)
**AI-powered profile matchmaker.** Match DCers against a natural-language description, or — when `qu |
input · no output |
| profile_update PATCH /profile — Update profile fields
Update allowed profile fields. Only the fields you include will be changed. Location, photo, and gender cannot be updated via API.
⚠️ WRITE |
input · no output |
| report_issue_create POST /report-issue — Report an issue or feedback
Submit a bug report, feedback, or question to the DC team. Optionally include a base64-encoded screenshot (PNG, JPEG, or WebP, up |
input · no output |
| rooms GET /rooms — List your subscribed rooms
Returns every room you are subscribed to (DMs, group DMs, channels you follow, discussions, activities, event rooms), sorted by `lastActivi |
input · no output |
| rooms_archive_create POST /rooms/:roomID/archive — Archive a room
Archive a room — hides it from the inbox sidebar without unsubscribing. Use `unarchive` to bring it back. **Access:** the caller must |
input · no output |
| rooms_browse GET /rooms/browse/:type — Browse public channels by type
Browse publicly-joinable rooms of a given type that you are NOT yet subscribed to. The same surface the in-app Browse Chan |
input · no output |
| rooms_by_id GET /rooms/:roomID — Get a single room
Get a single room's metadata + its latest daily AND weekly AI summaries (when they exist). **Access:** members and subscribers of the room, |
input · no output |
| rooms_inbox GET /rooms/inbox/:type — List your rooms by type
Returns your subscribed rooms filtered to a single type. Same shape as `GET /rooms` but scoped — e.g. `/rooms/inbox/dm` returns DM |
input · no output |
| rooms_messages GET /rooms/:roomID/messages — List messages in a room
List messages in a room you are a member of. **Read-only — no write side effects, no unread-state mutation, no reactions/post |
input · no output |
| rooms_mute_create POST /rooms/:roomID/mute — Mute a room
Mute notifications for a room. Sets `mutedUntilAt` to a far-future timestamp (no expiry) — the room stays muted until explicitly unmuted. Th |
input · no output |
| rooms_pin_create POST /rooms/:roomID/pin — Pin a room
Pin a room to the top of the inbox. For subscription-type rooms the caller is auto-subscribed if not already (mirrors the in-app behavior — yo |
input · no output |
| rooms_subscribe_create POST /rooms/:roomID/subscribe — Subscribe to a room
Subscribe to a public channel, discussion, quick-question room, or event room. The caller is added to the room's `seen` subcoll |
input · no output |
| rooms_summaries GET /rooms/:roomID/summaries/:type — List past daily or weekly summaries
List past summaries of a given type for a room, newest first. Cursor-paginated — pass `cursor` from the pr |
input · no output |
| rooms_summary GET /rooms/:roomID/summary/:type — Get the latest daily or weekly summary
Get the latest single summary of a given type for a room.
**Type is required** — daily and weekly summar |
input · no output |
| rooms_unarchive_create POST /rooms/:roomID/unarchive — Unarchive a room
Unarchive a previously-archived room. Restores it to the inbox sidebar. **Access:** the caller must be a member/subscriber. Idempo |
input · no output |
| rooms_unmute_create POST /rooms/:roomID/unmute — Unmute a room
Unmute a previously-muted room. Clears `mutedUntilAt`. **Access:** the caller must be a member/subscriber of the room. Idempotent.
⚠️ W |
input · no output |
| rooms_unpin_create POST /rooms/:roomID/unpin — Unpin a room
Unpin a previously-pinned room. Returns it to its normal place in the inbox sort order. **Access:** the caller must be a member/subscriber |
input · no output |
| rooms_unsubscribe_create POST /rooms/:roomID/unsubscribe — Unsubscribe from a room
Unsubscribe from a public channel, discussion, quick-question, or event room. The caller's `seen` doc is updated to `flag |
input · no output |
| search GET /search — Cross-resource omni-search
Cross-resource search across profiles, rooms, messages (incl. private DMs + group DMs you're in), events, and chapters in one round trip. |
input · no output |
| search_chapters GET /search/chapters — Search chapters
Search DC chapters by city or country name.
**Query syntax (`q=`):** plain words match with prefix + typo tolerance. Wrap a phrase in doubl |
input · no output |
| search_events GET /search/events — Search events
Search enabled DC events by name, description, host, and venue. No default time filter — pass `?since=` or `?until=` (ISO 8601 dates) to constra |
input · no output |
| search_messages GET /search/messages — Search messages (incl. your private DMs)
Search message bodies across every room you can access. **This is the key surface for "catch me up on what was said |
input · no output |
| search_profiles GET /search/profiles — Search profiles
Full-text search across DCer profiles — headlines, bios, business descriptions, expertise, hobbies, etc. Returns matching profile records wi |
input · no output |
| search_rooms GET /search/rooms — Search rooms
Search rooms by name, description, and topic. Returns rooms that match the query AND that you have access to (subscribed-or-browsable; private roo |
input · no output |
| tickets GET /tickets — List your tickets
Returns your tickets across events, newest first. Defaults to the tickets you're holding (`valid` plus `maybe`) — "what am I attending". Pass `?st |
input · no output |
| trip GET /trips/:tripID — Get a single trip
Single-trip read with the full payload. **This is the canonical endpoint for "who should I meet on this trip?"** — the response embeds a com |
input · no output |
| trip_delete DELETE /trips/:tripID — Delete a trip
Permanently delete one of your trips. Removes the trip doc and its linked chat room (`trip.roomID`). The destination chapter's upcoming-trip |
input · no output |
| trip_discovery GET /trips/:tripID/discovery — Get the discovery block for a trip
Discovery-only read for a trip. Returns the same `discovery` block as `GET /trips/:tripID` (people, fullPool, why |
input · no output |
| trip_refresh_create POST /trips/:tripID/refresh — Trigger a trip refresh
Owner-only sync trigger. Enqueues a deduped background job that recomputes the trip's discovery (overlapping people, events, A |
input · no output |
| trip_update PATCH /trips/:tripID — Update a trip
Update one or more fields on an existing trip. Only include the fields you want to change. To change destination, provide either `placeID` or |
input · no output |
| trips GET /trips — List your trips
Returns your upcoming trips by default. Add `?past=true` to include past trips.
**For "who should I meet on this trip?"** fetch `GET /trips/:tripID` |
input · no output |
| trips_create POST /trips — Create a trip
Create a new trip. Provide exactly one of `placeID` or `eventID` — the server resolves the location (city, country, country code) automatically. Use `G |
input · no output |
| trips_overlaps GET /trips/overlaps — Find overlapping trips
Find other members whose trips overlap with yours by city + date range. **This is a narrow date-window match, NOT the AI-ranked discov |
input · no output |
| virtual_event GET /virtual-events/:sessionID — Get Live Call details
Returns the same payload shape as one entry from `GET /virtual-events` for a single online Live Call — `sessionID`, `name`, |
input · no output |
| virtual_event_attendees GET /virtual-events/:sessionID/attendees — List Live Call attendees
List the attendees of a Live Call — the DCers who RSVPd `yes` or `maybe` (the same set behind `attendeeCount`, |
input · no output |
| virtual_event_rsvp POST /virtual-events/:sessionID/rsvp — RSVP to Live Call
RSVP to a Live Call. The user is added to the matching attendance list on the session doc (`participantIDs` for `yes`, `ma |
input · no output |
| virtual_events GET /virtual-events — List Live Calls
Returns upcoming Live Calls (online sessions like Connect Calls, Happy Hour, Welcome Call, plus DC BLACK-only calls). Add `?past=true` to inc |
input · no output |
Verify it yourself
npx teppi-check https://api.dynamitecircle.com/mcpcurl -s https://api.teppi.xyz/v1/trust/mcp/mcs_01M1FZ2F498ED98FCTG4582ETM