Puter MCP
Puter MCP enables AI tools to interact with Puter: manage files, websites, workers, and more
Descripción del creador (original en inglés)
Search Narcotics Anonymous meetings worldwide via the BMLT directory.
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
Elige la app de IA que usas y copia la configuración.
Necesitas
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Funciona en Claude para web, escritorio y móvil:
https://mcp.bmlt.app/mcpEjecuta esto en tu terminal
claude mcp add --transport http bmlt https://mcp.bmlt.app/mcpPégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"bmlt": {
"url": "https://mcp.bmlt.app/mcp"
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"bmlt": {
"type": "http",
"url": "https://mcp.bmlt.app/mcp"
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
ChatGPT solo se conecta a servidores en internet:
https://mcp.bmlt.app/mcpLos nombres de los menús pueden variar un poco según el plan y con el tiempo.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
Esta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Según cómo se conecta este servidor y la documentación de cada app, comprobado el 10 nov 2026.
Se conectan por internet en
ClaudeChatGPTGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatOpen WebUIRaycast
Nombres y descripciones de las herramientas tal como los informó el servidor el 10 nov 2026. Los escribió el creador, no nosotros; los mostramos como texto sin formato.
search_meetingsSearch Narcotics Anonymous meetings on a BMLT root server. Filter by location (address or lat/lng + radius), weekday, time of day, format, venue type (in-person / virtual / hybrid), and service body. Returns a trimmed summary by default; pass data_format='full' for the raw BMLT r
get_meetingFetch the full record for a single meeting by its BMLT id_bigint.
list_formatsList available meeting formats (Open, Closed, Speaker, Beginners, language tags, etc.) so the caller can map human-friendly format names to BMLT format IDs.
list_service_bodiesList BMLT service bodies (zones, regions, areas, groups). Useful for translating "Northern California Region" to a service body ID for use with search_meetings.
get_server_infoReturn capabilities, version, languages, and default coordinates for a BMLT root server.
list_root_serversList public BMLT root servers known to the BMLT aggregator. Use the returned root_server_url values with other tools to query a specific server.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 11 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub bmlt-enabled, dueña del repo
Último cambio de código: anteayer
Todavía no hemos leído este repo en GitHub
Respondió en 137 ms (HTTP 200)
No hace falta iniciar sesión
Leímos 6 descripciones de herramientas y no encontramos instrucciones ocultas para la IA
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Superó 4 de 4 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
El registro no indica ninguna clave obligatoria, aunque algunos servidores te piden iniciar sesión la primera vez que los usas.
Se ejecuta en la nube del creador. Te conectas por internet sin instalar nada, pero lo que envías pasa por los servidores del creador.
El repo de GitHub cambió por última vez anteayer, y la última versión (0.3.0) llegó al registro hace 6 meses.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. Se conecta por URL, así que también funcionan las apps que aceptan servidores MCP remotos, como ChatGPT en modo desarrollador.
En la misma categoría: Puter MCP, Agent-Native Slides, Agent-Native Forms
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:↓ Descargas por semanai★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
Puter MCP enables AI tools to interact with Puter: manage files, websites, workers, and more
Agent-Native Google Slides - generate and edit React presentations
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
A streamable HTTP Model Context Protocol server that exposes BMLT (Basic Meeting List Toolbox — the Narcotics Anonymous meeting directory) as a set of read-only tools that AI assistants can call directly.
BMLT hosts approximately 85% of Narcotics Anonymous meetings worldwide; the default backend is the BMLT aggregator, which federates every public BMLT root server (server list) into a single search surface — effectively the authoritative AI-accessible source for finding NA meetings.
MCP is an open protocol, so any compatible client works: Claude (Code, Desktop, web), ChatGPT (Connectors and the Responses API), Google Gemini, Cursor, Windsurf, Zed, Cline, Continue, and others.
Unlike the npm bmlt-mcp-server (stdio-only, runs as a local subprocess), this server speaks MCP over HTTP and is meant to be hosted once and consumed remotely.
Built on Laravel + PHP 8.2+ using the official laravel/mcp package.
A live deployment runs at https://mcp.bmlt.app/ (landing page) with a tools reference at https://mcp.bmlt.app/reference.
All tools are read-only and idempotent. All tools accept an optional root_server_url argument; if omitted, the configured BMLT_ROOT_SERVER_URL is used.
| Tool | What it does |
|---|---|
search_meetings | Search meetings by address (geocoded server-side) or lat/lng + radius, filtered by weekday, time, format, venue type (in-person / virtual / hybrid), service body, and free text. Returns a curated summary by default (data_format=full for the raw BMLT response). |
get_meeting | Fetch a single meeting by its BMLT id_bigint. |
list_formats | List meeting format codes (Open, Closed, Speaker, Beginners, language tags, …) so callers can map names → IDs for search_meetings. |
list_service_bodies | List zones / regions / areas / groups so callers can map names → IDs for search_meetings. |
get_server_info | Capabilities, version, languages, and default coordinates for the configured root server. |
list_root_servers | Public BMLT root servers known to the aggregator. Useful when the caller wants to switch roots. |
cp .env.example .env
docker compose up --build
The MCP endpoint is then live at http://localhost:8080/mcp over the Streamable HTTP transport.
composer install
cp .env.example .env php artisan key:generate php artisan serve # http://localhost:8000/mcp
php artisan mcp:inspector
Then connect to http://localhost:8000/mcp (or :8080 for Docker) and list tools.
All configuration lives in .env (see .env.example). The interesting bits:
| Variable | Purpose |
|---|---|
BMLT_ROOT_SERVER_URL | Required. Default BMLT root server, including /main_server path. |
BMLT_ALLOWED_ROOTS | Comma-separated allowlist for the optional root_server_url tool argument. The default root is always implicitly allowed. |
BMLT_ALLOW_ANY_ROOT | true allows any URL via root_server_url — not recommended in production (enables SSRF-style queries). Off by default. |
BMLT_AGGREGATOR_URL | Aggregator queried by list_root_servers. Defaults to the public aggregator. |
GEOCODER | nominatim (default), google, or null. null rejects address inputs and requires lat/lng. |
NOMINATIM_USER_AGENT | Identifies your deployment to OSM — required by Nominatim's ToS. Always set this in production. |
GOOGLE_GEOCODER_API_KEY | Required when GEOCODER=google. |
The optional root_server_url tool argument lets a single deployment serve any BMLT root, but accepting arbitrary URLs would let callers turn the server into an SSRF probe against your network. The default is a strict allowlist (the configured default root, plus anything you add to BMLT_ALLOWED_ROOTS). Set BMLT_ALLOW_ANY_ROOT=true only when the server is isolated from anything sensitive.
The endpoint of a deployed instance is https://your-host.example.com/mcp. Replace it below with your own host (or use https://mcp.bmlt.app/mcp to try the public instance).
claude mcp add --transport http bmlt https://your-host.example.com/mcp
Settings → Connectors → Add custom connector → paste the URL.
{
"mcpServers": { "bmlt": { "command": "npx", "args": ["-y", "mcp-remote", "https://your-host.example.com/mcp"] } } }
{
"tools": [ { "type": "mcp", "server_label": "bmlt", "server_url": "https://your-host.example.com/mcp" } ] }
In ChatGPT itself (Pro/Business/Enterprise): Settings → Connectors → Add, using the same URL.
All of these read an mcpServers block. For Cursor, edit ~/.cursor/mcp.json (or the project-local .cursor/mcp.json); other clients use a similar config file.
{
"mcpServers": { "bmlt": { "url": "https://your-host.example.com/mcp" } } }
For per-tool parameter documentation and BMLT-API mappings, see the live reference page. For day-to-day commands on a deployed instance (log tailing, usage summaries, cache clears, upgrades), see docs/operations.md.
The default config has no auth — anyone who can reach /mcp can call the tools. To gate it:
// routes/ai.php
use Laravel\Mcp\Facades\Mcp;
Mcp::oauthRoutes(); // OAuth 2.1 (Laravel Passport) Mcp::web('/mcp', BmltServer::class) ->middleware('auth:api');
Or add a simple bearer-token check via custom middleware. See the Laravel MCP docs for the full options.
app/
├── Mcp/ │ ├── Servers/BmltServer.php # Registers the 6 tools │ └── Tools/ │ ├── SearchMeetingsTool.php │ ├── GetMeetingTool.php │ ├── ListFormatsTool.php │ ├── ListServiceBodiesTool.php │ ├── GetServerInfoTool.php │ ├── ListRootServersTool.php │ └── Concerns/ResolvesBmltClient.php ├── Services/ │ ├── Bmlt/ │ │ ├── BmltClient.php # Wraps client_interface/json │ │ ├── BmltClientFactory.php # Allowlist enforcement │ │ └── BmltException.php │ └── Geocoding/ │ ├── Geocoder.php # Interface │ ├── GeocoderManager.php # Driver resolver │ ├── NominatimGeocoder.php # OSM (rate-limited, cached) │ ├── GoogleGeocoder.php # Google Geocoding API │ ├── NullGeocoder.php # Disabled │ ├── GeocodingResult.php │ └── GeocodingException.php └── Providers/BmltServiceProvider.php
config/bmlt.php # All knobs routes/ai.php # Mcp::web('/mcp', BmltServer::class)
The HTTP API wrapped by BmltClient is formally specified by the BMLT Semantic OpenAPI document (OpenAPI 3.1) — refer to it for every parameter, response shape, and field definition that BMLT itself supports, even if this MCP server doesn't yet expose it as a tool argument.
MIT