Map Traveler
Un entorno de viaje virtual para un avatar en Google Maps, que utiliza varias APIs de Google Maps y opcionales de generación de imágenes por IA.
Documentación
Entorno de bot de viajes virtuales para MCP
Actualmente estamos desarrollando un sistema de bot de viajes de próxima generación. Tomará algún tiempo completarlo, pero mientras tanto, disfruta usando este servidor MCP, que opera en modo MCP v1.
Inglés / Japonés
Este es un servidor MCP que crea un entorno para que un avatar viaje virtualmente en Google Maps.
Desde un cliente MCP como Claude Desktop, puedes dar instrucciones al avatar e informar sobre el progreso de su viaje con fotos.
Preparando soporte para el Registro MCP https://blog.modelcontextprotocol.io/posts/2025-09-08-mcp-registry-preview/
Se agregó gemini-2.5-flash-image-preview (nano-banana) a la generación de imágenes de viaje
Se ha agregado soporte para nano-banana. La máscara semántica de nano-banana te permite generar imágenes de viaje compuestas en poco tiempo sin configurar remBg.
Aunque la síntesis de imágenes convencional sigue siendo posible, recomendamos usar Gemini nano-banana.
Compatible tanto con Streamable-HTTP como con stdio (cumple con la interfaz de configuración de Smithery.ai)
Se puede usar como MCP tipo stdio como antes, o como Streamable-HTTP.
Aunque admite múltiples usuarios, la API de base de datos debe especificarse por sesión usando la interfaz de configuración de Smithery.ai.
Dado que es compatible tanto con Streamable-HTTP como con stdio, se espera que funcione tal cual con el cliente MCP anterior, pero si usas la versión stdio anterior, usa v0.0.x (v0.0.81).
npx -y @mfukushim/map-traveler-mcp@0.0.81
Now supports librechat https://www.librechat.ai/.
Now supports Smithery https://smithery.ai/server/@mfukushim/map-traveler-mcp (images are excluded because they are heavy to run).
Now verified MseeP https://mseep.ai/app/mfukushim-map-traveler-mcp
Functions
MCP server tools function
The following functions can be used as an MCP server. The available functions vary depending on the settings and execution state.
You can specify the function name directly, but Claude LLM will automatically recognize it, so you can specify the operation in general terms.
Example: "Where are you now?" "Let's leave for Tokyo Station."
- get_traveler_view_info(includePhoto:boolean,includeNearbyFacilities:boolean)
Gets information about the current travel avatar's location.- includePhoto: Gets nearby Google Street View photos. If you have set up an image generation AI, it will synthesize the avatar.
- includeNearbyFacilities: Gets information about nearby facilities.
- get_traveler_location()
Gets information about the current travel avatar's address and nearby facilities. - reach_a_percentage_of_destination() Reach a specified percentage of the destination (moveMode=skip only) timeElapsedPercentage: Percent progress towards destination(0~100)
- set_traveler_location(address: string)
Sets the current travel avatar's location.- address: Address information (exact address, or general name that Google Maps or Claude can recognize, etc.)
- get_traveler_destination_address
Get the destination of the travel avatar you set - set_traveler_destination_address(address: string)
Set the destination of the travel avatar- address: Address information (exact address, or general name that Google Maps or Claude can recognize, etc.)
- start_traveler_journey
Start the journey at the destination.(moveMode=realtime only) - stop_traveler_journey
Stop the journey.(moveMode=realtime only) - set_traveler_info(settings:string)
Set the traveler's attributes. Set the traveler's personality that you want to change dynamically, such as name and personality. However, if you use a role script, the script is more stable.- settings: Setting information such as name and personality.
- get_traveler_info
Get the traveler's attributes. Get the traveler's personality. - set_avatar_prompt(prompt:string)
Set the prompt when generating the travel avatar image. The default is an anime-style woman. The anime style is enforced to prevent fake images.- prompt
- reset_avatar_prompt
Reset avatar generation prompts to default. - get_sns_feeds
Gets Bluesky SNS articles for the specified custom feed (feeds containing a specific tag). - get_sns_mentions
Gets recent mentions (likes, replies) to Bluesky SNS posts that you made yourself. - post_sns_writer(message:string)
Posts an article to Bluesky SNS with the specified custom feed. Set a specific tag so that it can be determined that the post was generated by the travel bot.- message: article
- reply_sns_writer(message:string,id:string)
Reply to the article with the specified id. Set a specific tag so that it can be determined that the post was generated by the travel bot.- message: reply
- id: The ID of the post to reply to
- add_like(id:string)
Add a like to the specified post.- id: The ID of the post to like
- tips
Guides you on how to set up features that have not yet been set. - get_setting
Get environment and image settings.
MCP resources
Has five custom prompt samples. When you import a prompt with Claude Desktop, Claude will act as a traveler. The SNS-compatible version controls SNS input and output while having a travel conversation.
-
role.txt
Claude will act as a traveler. -
roleWithSns.txt
Claude will act as a traveler. It also controls reading and posting to SNS. -
carBattle.txt
This is a small novel game about a story of transporting secret documents from Yokohama to Tokyo. Scenes are automatically generated. Set moveMode=skip to play. -
japanMapChallenge.txt,japanMapChallenge2.txt
Two AIs communicate with each other via SNS and play a challenge game using landscape images.
To play, you need two Bluesky accounts and two Claude Desktops. Also set moveMode=skip. (However, the operation is somewhat unstable.)
japanMapChallenge2 has a challenge reflection rule.
Setting
You will need to obtain and set access keys for multiple APIs, such as for accessing multiple Google maps and generating images. Use of the API may incur charges.
Settings for using with Claude Desktop
- claude_desktop_config.json (stdio type)
{
"mcpServers": {
"traveler": {
"command": "npx",
"args": ["-y", "@mfukushim/map-traveler-mcp"],
"env":{
"MT_GOOGLE_MAP_KEY":"(Google Map API key)",
"MT_GEMINI_IMAGE_KEY": "(Gemini Image Api key)",
"MT_MAX_RETRY_GEMINI": "(Number of retries when generating Gemini images Default: 0)",
"MT_AVATAR_IMAGE_URI": "(Character reference image uri (file:// or https://) when generating Gemini image. Multiple settings can be made by separating them with the '|'. When multiple settings are made, they will be selected randomly.)",
"MT_MAP_API_URL": "(Optional: Map API custom endpoint. Example: direction=https://xxxx,places=https://yyyy )",
"MT_TIME_SCALE": "(Optional:Scale of travel time on real roads duration. default 4)",
"MT_SQLITE_PATH":"(db save path: e.g. %USERPROFILE%/Desktop/traveler.sqlite ,$HOME/traveler.sqlite )",
"MT_TURSO_URL":"(Turso sqlite API URL)",
"MT_TURSO_TOKEN":"(Turso sqlite API access token)",
"MT_REMBG_PATH": "(absolute path of the installed rembg cli)",
"MT_REMBG_URL": "(rembg API URL)",
"MT_REMBG_WO_KEY": "(withoutbg.com rembg API key)",
"MT_PIXAI_KEY":"(pixAi API key)",
"MT_SD_KEY":"(or Stability.ai image generation API key",
"MT_PIXAI_MODEL_ID": "(Optional: pixAi ModelId, if not set use default model 1648918127446573124 ",
"MT_COMFY_URL": "(Option: Generate image using ComfyUI API at specified URL. Example: http://192.168.1.100:8188)",
"MT_COMFY_WORKFLOW_T2I": "(Optional: Path to API workflow file when using text to image with ComfyUI. If not specified: assets/comfy/t2i_sample.json)",
"MT_COMFY_WORKFLOW_I2I": "(Optional: Path of API workflow file when image to image in ComfyUI. If not specified: assets/comfy/i2i_sample.json)",
"MT_COMFY_PARAMS": "(Optional: Variable values to send to the workflow via comfyUI API)",
"MT_FIXED_MODEL_PROMPT": "(Optional: Fixed avatar generation prompt. You will no longer be able to change your avatar during conversations.)",
"MT_BODY_AREA_RATIO": "(Optional: Acceptable avatar image area ratio. default 0.042)",
"MT_BODY_HW_RATIO": "(Optional: Acceptable avatar image aspect ratios. default 1.5~2.3)",
"MT_BODY_WINDOW_RATIO_W": "(Optional: Avatar composite window horizontal ratio. default 0.5)",
"MT_BODY_WINDOW_RATIO_H": "(Optional: Avatar composite window aspect ratio. default 0.75)",
"MT_BS_ID":"(Bluesky sns registration address)",
"MT_BS_PASS":"(bluesky sns password)",
"MT_BS_HANDLE":"(bluesky sns handle name: e.g. xxxxxxxx.bsky.social )",
"MT_FILTER_TOOLS": "(Optional: Directly filter the tools to be used. All are available if not specified. e.g. tips,set_traveler_location)",
"MT_MOVE_MODE": "(Option: Specify whether the movement mode is realtime or skip. default realtime)",
"MT_IMAGE_WIDTH": "(Option: Output image width (pixels) Default is 512)",
"MT_NO_IMAGE": "(Options: true = do not output image, not specified = output image if possible, default is not specified)",
"MT_NO_AVATAR": "(Option: true = Output StreetView image as is without avatar superimposition. Not specified = Superimpose avatar image. Default is not specified.)",
"MT_FEED_TAG": "(Optional: Specify the feed tag when posting to SNS (#required, 15 characters or more) Default is #geo_less_traveler)",
"MT_MAX_SESSIONS": "(Maximum number of sessions when using Streamable-http)",
"MT_SESSION_TTL_MS": "(Session TTL when using Streamable-http)",
"MT_SERVICE_TTL_MS": "(Service TTL when using Streamable-http)"
}
}
}
}
- claude_desktop_config.json (tipo streamable-http)
Las variables de entorno MT_ anteriores deben configurarse como variables de entorno para el servidor que ejecuta el servicio web map-traveler-mcp.
{
"mcpServers": {
"traveler": {
"type": "streamable-http",
"url": "https://(mcp server address)/mcp?config=(base64 config json)"
}
}
}
base64 config json (Expansión de Smithery.ai)
Al concatenar el json en el siguiente formato en una sola línea de cadena, convertirlo a base64 y configurarlo como (base64 setting json), puedes sobrescribir diferentes API y configuraciones para cada sesión de usuario.
Si la base de datos no está configurada con base64 config json, se compartirá en todo el servicio (la ubicación del viajero se compartirá en la base de datos y se contará como una persona).
Planeamos reconsiderar la operación de asignar un UserId individual para cada sesión una vez que el mecanismo de autenticación de MCP esté un poco más claro.
{
"MT_GOOGLE_MAP_KEY": "xxxyyyzzz",
"MT_GEMINI_IMAGE_KEY": "xxyyzz",
"MT_MAX_RETRY_GEMINI": "1",
"MT_AVATAR_IMAGE_URI": "file:///C:/Users/xxxx/Desktop/avatar.png",
"MT_TURSO_URL": "libsql://xxxyyyzzz",
"MT_TURSO_TOKEN": "abcdabcd",
"MT_BS_ID": "xyxyxyxyx",
"MT_BS_PASS": "1234xyz",
"MT_BS_HANDLE": "aabbccdd",
"MT_FILTER_TOOLS": "tips,set_traveler_location",
"MT_MOVE_MODE": "direct",
"MT_FEED_TAG": "#abcdefgabcdefgabcdefg"
}
(Todos los valores json se pueden omitir)
↓ (concatenación de texto json)
{"MT_GOOGLE_MAP_KEY": "xxxyyyzzz", "MT_GEMINI_IMAGE_KEY": "xxyyzz", "MT_MAX_RETRY_GEMINI": "1", "MT_TURSO_URL": "libsql://xxxyyyzzz", "MT_TURSO_TOKEN": "abcdabcd", "MT_BS_ID": "xyxyxyxyx", "MT_BS_PASS": "1234xyz", "MT_BS_HANDLE": "aabbccdd", "MT_FILTER_TOOLS": "tips,set_traveler_location", "MT_MOVE_MODE": "direct", "MT_FEED_TAG": "#abcdefgabcdefgabcdefg"}
↓ (Configura la versión base64 en config=)
eyJNVF9HT09HTEVfTUFQX0tFWSI6ICJ4eHh5eXl6enoiLCAiTVRfR0VNSU5JX0lNQUdFX0tFWSI6ICJ4eHl5enoiLCAiTVRfTUFYX1JFVFJZX0dFTUlOSSI6ICIxIiwgIk1UX1RVUlNPX1VSTCI6ICJsaWJzcWw6Ly94eHh5eXl6enoiLCAiTVRfVFVSU09fVE9LRU4iOiAiYWJjZGFiY2QiLCAiTVRfQlNfSUQiOiAieHl4eXh5eHl4IiwgIk1UX0JTX1BBU1MiOiAiMTIzNHh5eiIsICJNVF9CU19IQU5ETEUiOiAiYWFiYmNjZGQiLCAiTVRfRklMVEVSX1RPT0xTIjogInRpcHMsc2V0X3RyYXZlbGVyX2xvY2F0aW9uIiwgIk1UX01PVkVfTU9ERSI6ICJkaXJlY3QiLCAiTVRfRkVFRF9UQUciOiAiI2FiY2RlZmdhYmNkZWZnYWJjZGVmZyJ9
NOTA: Las variables de entorno se han renombrado a snake case estándar. El prefijo MT_ se agrega porque pueden usarse junto con otras variables de entorno, como en librechat. Los nombres antiguos aún se pueden usar por compatibilidad con versiones anteriores.
Configura las siguientes tres credenciales para la API de Google Map.
- Street View Static API
- Places API (New)
- Time Zone API
- Directions API
https://developers.google.com/maps/documentation/streetview/get-api-key
Si deseas usar la IA de generación de imágenes, configura pixAi_key o sd_key. También necesitas tener python3.7~3.11 instalado en tu PC y rembg cli instalado (se recomienda un entorno virtual).
https://platform.pixai.art/docs
https://platform.stability.ai/docs/api-reference#tag/SDXL-1.0-and-SD1.6/operation/textToImage
La dirección/contraseña de SNS de bluesky son opcionales. Se recomienda crear una cuenta dedicada, ya que publicará automáticamente.
También puedes ejecutarlo en modo de práctica, que no requiere una clave de API para verificación.
Configuración del modo de práctica
claude_desktop_config.json
{
"mcpServers": {
"traveler": {
"command": "npx",
"args": ["-y", "@mfukushim/map-traveler-mcp"]
}
}
}
Cómo usar
Usar el modo de práctica
-
Instala nodejs 22.
-
Configura Claude Desktop para su uso.
-
Refleja una de las configuraciones anteriores en claude_desktop_config.json.
-
Reinicia Claude Desktop. Puede tomar algún tiempo configurarse (si ocurre un error, intenta reiniciar Claude Desktop nuevamente. Si no funciona, consulta las notas a continuación). Asegúrate de que aparezca la siguiente marca en la parte inferior derecha de la pantalla.
- Pregunta "¿Dónde estás ahora?" y "Haz un viaje". Comenzará una conversación. Cuando uses la API, aparecerá una pantalla de confirmación, así que selecciona Permitir.
- Selecciona Adjuntar desde MCP y selecciona role.txt.
- Se ha incorporado un prompt de viaje, así que siéntete libre de conversar con él.
Usar la función completa
- Obtén una clave de acceso a la API de Google Map y configura los permisos para Street View Static API, Places API (New), Time Zone API y Directions API. Configúrala en el env de claude_desktop_config.json y reinicia. En este punto, el registro de viaje se basará en el mapa real. Las imágenes de viaje también se generarán si no se superponen.
- Decide una ruta que no interfiera con el disco y configúrala en sqlite_path del env de claude_desktop_config.json. (Ejemplo: %USERPROFILE%/Desktop/traveler.sqlite $HOME/Documents/traveler.sqlite, etc.) En este punto, tu registro de viaje se guardará y podrás continuar tu viaje incluso si cierras Claude Desktop.
- Instala python 3.7 a 3.11 e instala rembg con cli. Recomendamos usar un entorno virtual como venv.
python3 -m venv venv
. venv/bin/activate or .\venv\Scripts\activate
pip install "rembg[cpu,cli]"
Verifica si rembg cli funciona correctamente usando un archivo de imagen de muestra. Ingresa una imagen con una persona y, si la persona se recorta en el archivo de salida, está bien.
rembg i source_image_file dest_image_file
- rembg cli se instalará en la ubicación del ejecutable de python, así que obtén la ruta. La ubicación del archivo varía según el sistema operativo y el estado de instalación de python, pero en el caso de venv, es (nombre del entorno virtual)\Scripts\rembg.exe o (nombre del entorno virtual)/bin/rembg en el directorio que configuraste. Si no lo encuentras, busca la ruta con un software de búsqueda de archivos. Configura esa ruta en rembg_path del env en claude_desktop_config.json. (Ejemplo: "rembg_path": "C:\Users\xxxx\Documents\rembg_venv\venv\Scripts\rembg.exe")
- Obtén una clave de API de generación de imágenes del sitio de pixAI o Stability.ai. Configura la clave en pixAi_key o sd_key en el env de claude_desktop_config.json. El avatar ahora se superpondrá en la imagen de viaje.
- Obtén la dirección/contraseña de SNS de bluesky y el nombre de manejo. Configúralos en bs_id, bs_pass y bs_handle en el env de claude_desktop_config.json, respectivamente. Importa el prompt de conocimiento de viaje roleWithSns.txt para informar las acciones de viaje a SNS (publicará automáticamente como bot, por lo que recomendamos asignar una cuenta dedicada)
En lugar de preparar rembg con el cli, hemos agregado una configuración que te permite manejar rembg como una API de servicio.
Si configuras el siguiente servicio rembg, puedes usar rembg configurando la URL en remBgUrl.
https://github.com/danielgatis/rembg?tab=readme-ov-file#rembg-s
La configuración es simple si usas la versión Docker para lanzar un contenedor y acceder a él.
https://github.com/danielgatis/rembg?tab=readme-ov-file#usage-as-a-docker
Usar la API Turso libsql para la base de datos de configuración
Si deseas usar la API en la nube Turso libsql (https://turso.tech/libsql) sin tener un archivo sqlite local, regístrate en Turso y asigna una base de datos sqlite (de pago, con nivel gratuito disponible).
Este complemento configurará (migrará) la base de datos automáticamente.
MT_TURSO_URL = URL de la base de datos turso
MT_TURSO_TOKEN = token de acceso a la base de datos turso
Usar API en la nube para rembg
La configuración local de rembg es complicada sin importar el método que uses, pero hemos agregado configuraciones para el rembg en la nube de pago (https://withoutbg.com/).
Nota: Hay una pequeña prueba gratuita disponible, pero ten en cuenta que esta es una API comercial y es bastante costosa (alrededor de 0.1 euros por imagen).
MT_REMBG_WO_KEY = token de acceso withoutbg
Al usar ComfyUI externo (para usuarios más avanzados)
También puedes usar un ComfyUI local como servidor de generación de imágenes. Puedes configurar las características de generación de imágenes tú mismo en detalle para reducir los costos de API.
Sin embargo, la configuración será bastante complicada y la generación de imágenes puede tardar más.
- Configura ComfyUI para que se ejecute en modo API.
- Configura la URL del servidor en comfy_url en env.
- Configura valores de configuración detallados como el modelo a usar en env en forma de cadena json. ejemplo.
{
"env": {
"comfy_url": "http://192.168.1.100:8188",
"comfy_workflow_t2i": "C:\\Documents\\t2itest.json",
"comfy_workflow_i2i":"C:\\Documents\\i2itest.json",
"comfy_params":"ckpt_name='animagineXL40_v40.safetensors',denoise=0.65"
}
}
- El flujo de trabajo predeterminado puede usar assets/comfy/t2i_sample.json y assets/comfy/i2i_sample.json en el paquete. Puedes especificar variables usando % y especificar las variables en comfy_params.
Usando libreChat
Se ha adaptado para funcionar con libreChat. Esto facilita su uso, pero se requieren algunas configuraciones adicionales.
Además, parece que no será estable a menos que la PC que uses tenga un nivel decente de rendimiento, como una que pueda ejecutar Docker de manera estable.
Instalar libreChat
Asegúrate de que funcione como se describe en el sitio web oficial.
En este caso, recomendamos usar la configuración de Docker debido a las configuraciones adicionales.
https://www.librechat.ai/docs/local/docker
Configura librechat.yaml usando el procedimiento oficial.
Creo que necesitarás agregar un servicio LLM local o API.
https://www.librechat.ai/docs/configuration/librechat_yaml
Agrega un usuario para iniciar sesión.
https://www.librechat.ai/docs/configuration/authentication#create-user-script
Configúralo para que puedas tener conversaciones generales de chat.
Agregar un contenedor rembg con configuraciones adicionales
Para usar rembg con Docker, agrega la extracción y ejecución del contenedor Docker de rembg.
docker-compose.override.yml
services:
api:
volumes:
- type: bind
source: ./librechat.yaml
target: /app/librechat.yaml
rembg:
image: danielgatis/rembg:latest
restart: always
command: "s --host 0.0.0.0 --port 7000 --log_level info"
Agregar map-traveler-mcp al servicio MCP
Agrega librechat.yaml
mcpServers:
traveler:
type: stdio
command: npx
args:
- -y
- "@mfukushim/map-traveler-mcp"
Agrega .env (Igual que env en claude_desktop_config.json)
# map-traveler-mcp
GoogleMapApi_key=(Google Map API key)
sqlite_path=/home/run_test.sqlite (e.g. librechat in an unobtrusive location inside the container, or in an external directory that you don't want to mount.)
remBgUrl=http://rembg:7000 (rembg Service API URL, container URL)
(Other settings such as image generation AI settings, PixAI key, stability.ai API key, ComfyUI settings, etc.)
Después de configurar, reinicia el contenedor.
En PCs lentos, la inicialización de mcp puede fallar. Múltiples reinicios pueden funcionar, pero esto puede ser difícil de ejecutar...
Configuración de libreChat
Para usar la función MCP en libreChat, usa la función Agents.
- En la pantalla de conversación, selecciona Agents.

- Selecciona Agent Builder en el panel del lado derecho de la pantalla y configura tu agente.

- Selecciona Add Tools para usar map-traveler.

- Aparecerá la pantalla de herramientas del agente, así que selecciona y agrega todas las herramientas de map-traveler-mcp (si las herramientas de map-traveler-mcp no aparecen en la lista, la inicialización de MCP ha fallado, así que reinicia el contenedor o revisa la configuración verificando los registros, etc.)


- Ingresa el script adicional en el área de instrucciones.
Dado que libreChat no tiene la función de recursos MCP, ingresa el texto de contenido de la siguiente URL en el área de instrucciones en su lugar.
https://github.com/mfukushim/map-traveler-mcp/blob/main/assets/scenario/role.txt

- Haz clic en el botón Create para guardar el agente.

- Inicia un nuevo chat.
Smithery
Consulta https://smithery.ai/server/@mfukushim/map-traveler-mcp.
Se admite MCP remoto (modo Streamable-http). La generación de imágenes solo está disponible en nano-banana.
La configuración de la base de datos ahora se puede registrar con Turso sqlite, así que si configuras Turso, tu progreso de viaje también se guardará.

Guía de instalación (en japonés, pero con muchas fotos)
- Introducción y modo de práctica
https://note.com/marble_walkers/n/n7a8f79e4fb30 - DB, API de Google Map, API de generación de imágenes
https://note.com/marble_walkers/n/n765257c27f3b - Prompt del avatar
https://note.com/marble_walkers/n/nc7273724faea - Integración con SNS
https://note.com/marble_walkers/n/na7c956befe7b - Aplicación 1
https://note.com/marble_walkers/n/n3c86edd8e817 - API de ComfyUI
https://note.com/marble_walkers/n/ncefc7c05d102 - Aplicación 2
https://note.com/marble_walkers/n/ne7584ed231c8 - Configuración de LibreChat
https://note.com/marble_walkers/n/n339bf7905324 - Desafío de batalla de agentes de IA en SNS Map
https://note.com/marble_walkers/n/n6db937573eaa - Soporte para Smithery, Turso libSQL y API de rembg
https://note.com/marble_walkers/n/ne3b3c0f99707 - Soporte para Streamable-HTTP
https://note.com/marble_walkers/n/n030063f22dc0 - Soporte para Nano-Banana
https://note.com/marble_walkers/n/n5d49514dddec
Adicional sobre el código fuente
Uso Effect.ts para simplificar la gestión de errores y para mi propio aprendizaje.
También usamos Effect Service, pero debido a la forma en que funcionan las llamadas MCP, creemos que consolidarlo usando el Service no fue óptimo.
Creo que sería más simple manejar las llamadas MCP directamente en el Effect.
Adenda: Soy consciente de que podré reconsiderar cómo usar Effect Service y reescribirlo de manera ordenada, pero aún estoy considerando si reescribirlo.
Notas sobre las últimas actualizaciones
- Se agregó
image_widthal entorno. El valor predeterminado es 512. Configurarlo más pequeño puede reducir el costo de la API de LLM. - Se agregó una configuración de entorno que no genera imágenes para clientes MCP que no tienen entrada/salida de imágenes.
"MT_NO_IMAGE": "true" no generará ni mostrará ninguna imagen. Otras configuraciones relacionadas con imágenes pueden omitirse.
{
"env": {
"MT_NO_IMAGE": "true"
}
}
or
{
"env": {
"GoogleMapApi_key": "xxxx",
"MT_NO_IMAGE": "true"
}
}
-
Ahora puedes especificar el nombre de la etiqueta que se agregará al publicar en SNS (Bluesky). #Es obligatorio y debe tener al menos 15 caracteres. Si no se especifica, se convertirá en "#geo_less_traveler".
-
La información obtenida de SNS ha cambiado ligeramente. La información publicada en SNS ha cambiado ligeramente.
-
Se ha agregado un script que permite que múltiples bots de viaje conversen y jueguen a través de SNS.
-
Admite uso remoto desde Smithery.
Si no deseas configurar ajustes detallados, inicia la aplicación en modo de práctica. También puedes ejecutar la aplicación a toda velocidad configurando cada API en la nube, pero ten en cuenta los cargos, ya que utiliza muchas APIs de pago como la API de rembg. Si no deseas sintetizar avatares, puedes ejecutar la aplicación con la configuración mínima de la API de Google Map y la API de Turso sqlite. -
Se agregó la opción MT_NO_AVATAR.
Si se configura, no se compondrá una imagen de avatar sobre la imagen del paisaje. Como no habrá procesamiento de reintento para la composición del avatar, el tiempo que se tarda en obtener una respuesta será significativamente más corto.
Configura esta opción si la composición de imágenes es lenta o falla inevitablemente. -
Se aplicó parcialmente la versión MCP 2025-06-18.
Agreguétitleal esquema. Planeo aplicaroutputSchemay respuesta estructurada en el futuro, pero no los he implementado esta vez. Dado que la salida de Travel Bot es texto simple, no creo que la estructuración sea necesaria todavía.
https://modelcontextprotocol.io/specification/2025-06-18/server/tools -
Se corrigió un problema donde algunas funciones, como las funciones de SNS, no podían llamarse independientemente de la configuración del entorno debido a un error de inicialización.
-
Se agregó soporte para Streamable-http. Esto se hizo con prisa, así que si experimentas algún problema, considera usar la versión 0.0.81 o similar.
-
Se agregó soporte para la generación de imágenes con nano-banana (gemini-2.5-flash-image-preview). Al usar nano-banana, no se requieren configuraciones de rembg. Las características del prompt del avatar han cambiado, por lo que la generación de imágenes puede fallar con el prompt de avatar anterior. En este caso, deberás ajustar el prompt de apariencia del avatar a uno que sea aceptable para nano-banana.
-
Al generar imágenes para nano-banana, ahora puedes hacer referencia a la imagen del personaje original con MT_AVATAR_IMAGE_URI. Úsalo de una manera que no infrinja los derechos de autor.
