# com.mukoko/nhimbe-events (remote · events.mukoko.com)

Discover and manage community events across Africa on Nhimbe (Mukoko Events).

- Trust score: 36/100 (low)
- Change this week: −25
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- remote · `events.mukoko.com`: 36/100 (this document), [markdown](https://verifymcp.io/servers/com-mukoko-nhimbe-events/events.md), [page](https://verifymcp.io/servers/com-mukoko-nhimbe-events/events)

## Channel facts

- Endpoint: `https://events.mukoko.com/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `2.0.0-beta.1`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-03.

- **Endpoint Security**: 89/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - The endpoint enforces authorisation, advertised via RFC 9728 protected-resource metadata.
  - HTTPS is enforced; there's no plaintext access path.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
  - The authorisation server offers only Dynamic Client Registration (RFC 7591), which MCP 2026-07-28 deprecated in favour of Client ID Metadata Documents.
- **Transport & Reachability**: 0/100
  - Transport blocked by authentication: the endpoint requires auth we don't have to verify streamable-http.
- **Schema Quality & AI Usability**: 0/100
  - Schema blocked by authentication: the endpoint requires auth we don't have to read it.
- **Stability & Change Management**: 0/100
  - Stability not yet verified: not enough scan history yet (needs a 30-day window).
- **Tool Coverage**: 0/100
  - Tool coverage blocked by authentication: the endpoint requires auth we don't have to read its tools.
- **Capabilities**: 0/100
  - Capabilities blocked by authentication: the endpoint requires auth we don't have to read them.

**Unverified: 5 categories.** Categories scored 0 because we could not verify them: authentication we do not have, an unreachable endpoint, or not enough scan history. We only credit what we can confirm.

## Install

### Claude

```bash
claude mcp add --transport http com-mukoko-nhimbe-events https://events.mukoko.com/mcp
```

### Codex

```toml
[mcp_servers.com-mukoko-nhimbe-events]
url = "https://events.mukoko.com/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-mukoko-nhimbe-events": {
      "type": "remote",
      "url": "https://events.mukoko.com/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add com-mukoko-nhimbe-events --url https://events.mukoko.com/mcp --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  com-mukoko-nhimbe-events:
    url: "https://events.mukoko.com/mcp"
```

### Other

```json
{
  "mcpServers": {
    "com-mukoko-nhimbe-events": {
      "type": "http",
      "url": "https://events.mukoko.com/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-02 (score 36, 0)

- [security regression] Endpoint reachability: reachable → behind authorisation

### 2026-08-01 (score 36, +14)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-31 (score 22, −41)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-29 (score 63, +1)

- [security] The server rewrote its instructions, which are the text every model session reads
- [security] The server changed its declared name: nhimbe → Mukoko Events
- [security] Tool “create_event” rewrote its description, which is the text the model reads
- [security] Tool “events_matching_interests” rewrote its description, which is the text the model reads
- [security] Tool “events_near_me” rewrote its description, which is the text the model reads
- [security] Tool “get_event” rewrote its description, which is the text the model reads
- [security] Tool “search_events” rewrote its description, which is the text the model reads
- [functional] MCP protocol: Implements a current MCP spec version (2025-11-25).
- [functional] MCP protocol version: 2025-06-18 → 2025-11-25

### 2026-07-28 (score 62, +1)

- [security] The server rewrote its instructions, which are the text every model session reads
- [security] New tool “manage_registration”, which the server declares destructive
- [functional regression] Schema quality: 597 → 1088
- [functional improvement] Tool coverage: 81% → 88%
- [functional improvement] Stability: unverified → 0.03
- [functional] New tool “event_analytics”
- [functional] New tool “list_event_registrations”
- [functional] New tool “search_events”
- [functional] New tool “send_event_blast”

### 2026-07-27 (score 61)

First indexed and scored.

## MCP tools (10)

### `events_near_me` (~70 tokens)

Find events near me

Find upcoming Mukoko Events (Nhimbe) near a place. Pass a city (recommended). Returns a carousel of event cards.

Input parameters:

- `city` (string): City to search in, e.g. "Harare".
- `limit` (integer): Max events to return (default 12).

Output parameters:

- `count` (integer)
- `events` (array)

### `events_matching_interests` (~83 tokens)

Find events matching interests

Find Mukoko Events matching one or more interests/categories (e.g. "Music", "Tech"). Optionally scope to a city. Returns a carousel.

Input parameters:

- `city` (string): Optional city to scope the search to.
- `interests` (array, required): Interest or category names to match.
- `limit` (integer): Max events to return (default 12).

Output parameters:

- `count` (integer)
- `events` (array)

### `get_event` (~45 tokens)

Get an event

Look up a single Mukoko event by id, slug, or short code. Returns one event card.

Input parameters:

- `eventId` (string, required): Event id, slug, or short code.

Output parameters:

- `event` (object)

### `search_events` (~115 tokens)

Search events

Search Mukoko Events by free-text query, optionally narrowed by category and/or city. Use this for open-ended discovery ("jazz nights in Harare", "startup meetups"). Returns a carousel.

Input parameters:

- `category` (string): Optional category filter, e.g. "Music".
- `city` (string): Optional city filter, e.g. "Harare".
- `limit` (integer): Max events to return (default 12).
- `query` (string): Free-text search, e.g. "open-mic poetry".

Output parameters:

- `count` (integer)
- `events` (array)

### `create_event` (~242 tokens)

Create an event

Create a new Mukoko event as the signed-in host. Requires the caller to be authenticated with WorkOS. Returns the created event card.

Input parameters:

- `addressCountry` (string)
- `addressLocality` (string): City.
- `category` (string): Primary category, e.g. "Music".
- `description` (string): Event description.
- `endDate` (string): ISO-8601 end instant (optional; defaults to start + 1h).
- `isFree` (boolean): True if the event is free (default true).
- `isOnline` (boolean): True for an online event.
- `maximumAttendeeCapacity` (integer)
- `meetingUrl` (string): Join URL (online events).
- `name` (string, required): Event title.
- `startDate` (string, required): ISO-8601 start instant, e.g. 2026-08-01T18:00:00Z.
- `streetAddress` (string)
- `ticketUrl` (string): External ticketing URL (paid events).
- `venue` (string): Venue name (in-person events).
- `visibility` (string): Defaults to public.

Output parameters:

- `event` (object)

### `update_event` (~117 tokens)

Update or manage an event

Update or manage an event you host — edit details or change its status (e.g. cancel). Requires WorkOS authentication. Returns the updated event card.

Input parameters:

- `description` (string)
- `endDate` (string): ISO-8601 end instant.
- `eventId` (string, required): Id of the event to update.
- `name` (string)
- `startDate` (string): ISO-8601 start instant.
- `status` (string): New lifecycle status (e.g. "cancelled" to cancel the event).

Output parameters:

- `event` (object)

### `list_event_registrations` (~62 tokens)

List event registrations

List the attendees (RSVPs) for an event you host — names, contact, and check-in status. Requires WorkOS authentication and hosting the event. Returns an attendee card.

Input parameters:

- `eventId` (string, required): Id of the event you host.

Output parameters:

- `count` (integer)
- `registrations` (array)

### `manage_registration` (~97 tokens)

Manage a registration

Manage one attendee registration on an event you host: approve or reject a pending RSVP, cancel a registration, or check the attendee in at the door. Requires WorkOS authentication.

Input parameters:

- `action` (string, required): approve/reject a pending RSVP, cancel a registration, or check the attendee in.
- `eventId` (string, required): Id of the event you host.
- `registrationId` (string, required): Registration id (from list_event_registrations).

Output parameters:

- `action` (string)
- `message` (string)
- `registrationId` (string)
- `status` (string)

### `event_analytics` (~58 tokens)

Event analytics

Get attendance analytics for an event you host — views, RSVPs, check-ins and check-in rate. Requires WorkOS authentication and hosting the event. Returns a stats card.

Input parameters:

- `eventId` (string, required): Id of the event you host.

Output parameters:

- `analytics` (object)

### `send_event_blast` (~111 tokens)

Send an attendee blast

Post an announcement to an event you host and (optionally) notify all attendees (in-app Campfire message + email). Requires WorkOS authentication. Returns a confirmation.

Input parameters:

- `eventId` (string, required): Id of the event you host.
- `notifyAttendees` (boolean): When true, fan the announcement out to attendees (Campfire + email). Default false.
- `text` (string, required): The announcement text to send.
- `updateType` (string): Kind of update (defaults to announcement).

Output parameters:

- `message` (string)
- `notified` (boolean)
- `updateId` (string)

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/com-mukoko-nhimbe-events/events#diagnostics

## Score history

- 2026-08-03: 36
- 2026-08-02: 36
- 2026-08-01: 36
- 2026-07-31: 22
- 2026-07-30: 63
- 2026-07-29: 63
- 2026-07-28: 62
- 2026-07-27: 61

## Links

- Remote endpoint: https://events.mukoko.com/mcp
- Repository: https://github.com/nyuchi/mukoko-events-mcp
- Website: https://events.mukoko.com/
- Changelog RSS feed: https://verifymcp.io/servers/com-mukoko-nhimbe-events/events/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/com-mukoko-nhimbe-events/events/changelog.json
- HTML version of this page: https://verifymcp.io/servers/com-mukoko-nhimbe-events/events
