← back to home

Tools Reference

Every tool exposed by this MCP server, with parameters, types, defaults, and how each maps to the underlying BMLT Semantic Search API — formally specified by the BMLT Semantic OpenAPI document (OpenAPI 3.1).

Endpoint

https://mcp.bmlt.app/mcp   Protocol: MCP over HTTP (Streamable HTTP transport, JSON-RPC 2.0).

Default backend

https://aggregator.bmltenabled.org/main_server   The BMLT aggregator federates every public BMLT root server (server list), so searches cover NA meetings worldwide — approximately 85% of all NA meetings publish to one of these servers.

Tools

search_meetings

Search NA meetings on the configured BMLT root server. Filter by location (address or lat/lng + radius), weekday, time, format, venue type, and service body. Returns a trimmed summary by default; pass data_format=full for the raw BMLT response.

Read-only, idempotent.

ParameterTypeDefaultDescription
addressstringFree-form address; geocoded server-side. Ignored if lat/lng are provided.
latitudenumberDecimal degrees. Pair with longitude.
longitudenumberDecimal degrees. Pair with latitude.
radius_milesnumber10Search radius in miles. Ignored if radius_km is set or no coordinates are provided.
radius_kmnumberSearch radius in kilometers. Takes precedence over radius_miles.
weekdaysint[]1=Sun, 2=Mon, …, 7=Sat. e.g. [2,4,6].
starts_after"HH:MM"Earliest start time, 24-hour.
starts_before"HH:MM"Latest start time, 24-hour.
format_idsint[]BMLT format IDs to require. Discover with list_formats.
venue_typesint[]1=in-person, 2=virtual, 3=hybrid.
service_body_idsint[]Restrict to regions/areas. Discover with list_service_bodies.
recursive_servicesbooleantrueInclude child service bodies when filtering.
search_textstringFree-text search across name, location, notes.
languagestringFormat-name language: en, es, de, fr, …
page_sizeintegerPage size; omit to return all results.
pageinteger11-indexed page number.
data_format"summary" | "full"summaryField set returned.
root_server_urlstringOverride the configured BMLT root server (allowlisted).

BMLT API mapping

Calls GET {root}/client_interface/json/?switcher=GetSearchResults with the parameters mapped as follows:

This toolBMLT parameter
latitudelat_val
longitudelong_val
radius_milesgeo_width
radius_kmgeo_width_km
weekdaysweekdays[]
format_idsformats[]
venue_typesvenue_types[]
service_body_idsservices[]
recursive_servicesrecursive (1/0)
search_textSearchString
languagelang_enum
starts_afterStartsAfterH, StartsAfterM
starts_beforeStartsBeforeH, StartsBeforeM
page_size, pagepage_size, page_num

Summary response fields

With data_format=summary each meeting is trimmed to:

id_bigint, meeting_name, weekday_tinyint, start_time, duration_time, time_zone,
location_text, location_street, location_municipality, location_province,
location_postal_code_1, latitude, longitude, formats, venue_type,
distance_in_miles, distance_in_km, virtual_meeting_link, phone_meeting_number,
comments, service_body_bigint

get_meeting

Fetch the full record for a single meeting by its BMLT id_bigint.

ParameterTypeDefaultDescription
idinteger (required)BMLT id_bigint.
root_server_urlstringOverride the configured root server.

Maps to GetSearchResults&meeting_ids[]={id}.

list_formats

List meeting format codes (Open, Closed, Speaker, Beginners, language tags, …).

ParameterTypeDefaultDescription
languagestringserver defaultFormat-name language.
include_unusedbooleanfalseInclude formats not assigned to any meeting.
format_idsint[]Restrict to specific format IDs.
key_stringsstring[]Restrict to short codes, e.g. ["O", "C", "SP"].
root_server_urlstringOverride the configured root server.

Maps to GetFormats.

list_service_bodies

List zones, regions, areas, and groups, so callers can map names to IDs.

ParameterTypeDefaultDescription
service_body_idsint[]Restrict to specific IDs.
include_childrenbooleanfalseInclude descendants of requested IDs.
include_parentsbooleanfalseInclude ancestors of requested IDs.
root_server_urlstringOverride the configured root server.

Maps to GetServiceBodies.

get_server_info

Capabilities, version, languages, and default coordinates for a BMLT root server.

ParameterTypeDefaultDescription
root_server_urlstringOverride the configured root server.

Maps to GetServerInfo.

list_root_servers

Public BMLT root servers known to the BMLT aggregator — the full list of regional BMLT installations worldwide.

ParameterTypeDefaultDescription
name_containsstringCase-insensitive substring filter on server name.

Source: serverList.json.

Useful references