Skip to main content
Glama
jbonjour

bmlt-mcp-server

by jbonjour

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
PORTNoHTTP port (only used when TRANSPORT=http)3000
TRANSPORTNoTransport mode: stdio or httpstdio

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
bmlt_search_meetingsA

Search for Narcotics Anonymous meetings in the BMLT database.

Returns a list of meetings matching the given filters. All filters are optional — omitting them returns all meetings for the default service body.

Args:

  • root_server_url (string, optional): BMLT root server URL. Defaults to "https://bmlt.wszf.org/main_server"

  • service_body_ids (number[], optional): Filter by service body IDs. Defaults to [26] (Portland NA)

  • weekdays (string[], optional): Filter by day(s) of week. Accepts day names like "Monday", "tuesday", or numbers 1–7 (1=Sunday)

  • formats (string[], optional): Filter by format codes, e.g. ["O"] for Open, ["VM"] for Virtual, ["C"] for Closed

  • meeting_name (string, optional): Search meetings by name (partial match)

  • lat (number, optional): Latitude for geo search. Requires lng.

  • lng (number, optional): Longitude for geo search. Requires lat.

  • radius_miles (number, optional): Search radius in miles when using lat/lng. Default: 10

  • start_time_min (string, optional): Only meetings starting at or after this time, format "HH:MM" (24h)

  • start_time_max (string, optional): Only meetings starting at or before this time, format "HH:MM" (24h)

  • response_format (string, optional): "markdown" (default) or "json"

Returns: Formatted list of meetings with name, day, time, location, formats, and links.

Examples:

  • "Show all Portland NA meetings on Friday" → weekdays: ["Friday"]

  • "Find open meetings near downtown Portland" → formats: ["O"], lat: 45.5231, lng: -122.6765

  • "Virtual meetings this week" → formats: ["VM"]

  • "Morning meetings" → start_time_max: "12:00"

bmlt_get_formatsA

Retrieve all meeting format codes and their descriptions from a BMLT root server.

Formats describe the type of meeting — e.g. "O" = Open, "C" = Closed, "VM" = Virtual Meeting, "BT" = Book Study, "D" = Discussion, "SP" = Speaker, "WC" = Wheelchair Accessible.

Use this to:

  • Discover what format codes are available before filtering a meeting search

  • Explain what a format code means to a user

  • List all available meeting types on the server

Args:

  • root_server_url (string, optional): BMLT root server URL. Defaults to "https://bmlt.wszf.org/main_server"

  • response_format (string, optional): "markdown" (default) or "json"

Returns: List of format codes, names, and descriptions.

bmlt_get_service_bodiesA

Retrieve all service bodies (NA regions, areas, districts) from a BMLT root server.

Service bodies are the organizational units that manage meeting data in BMLT. Knowing the ID of a service body lets you filter meeting searches to a specific area.

Use this to:

  • Discover service body IDs for use in bmlt_search_meetings

  • See the hierarchy of areas served by a root server

  • Find a specific area's helpline or website

Args:

  • root_server_url (string, optional): BMLT root server URL. Defaults to "https://bmlt.wszf.org/main_server"

  • response_format (string, optional): "markdown" (default) or "json"

Returns: List of service bodies with IDs, names, types, URLs, and helplines.

Example: Portland NA has service body ID 26 on the WSZF root server.

bmlt_get_server_infoA

Retrieve metadata about a BMLT root server, including version and geographic center.

Use this to verify a server is reachable, check its version, or get its default center coordinates.

Args:

  • root_server_url (string, optional): BMLT root server URL. Defaults to "https://bmlt.wszf.org/main_server"

Returns: Server version, center lat/lng, default zoom level, and region bias.

bmlt_get_meeting_detailsA

Retrieve full details for a specific NA meeting by its BMLT meeting ID.

Use this after bmlt_search_meetings to get the complete record for a specific meeting.

Args:

  • meeting_id (number): The BMLT meeting ID (the "id_bigint" field from search results)

  • root_server_url (string, optional): BMLT root server URL. Defaults to "https://bmlt.wszf.org/main_server"

  • service_body_ids (number[], optional): Service body IDs to scope the search. Defaults to [26]

  • response_format (string, optional): "markdown" (default) or "json"

Returns: Full meeting record including name, day, time, location, formats, virtual links, and all metadata fields.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/jbonjour/bmlt-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server