← Files BiloARCHIVED FILE

plugin.json

8.5 KB · Nov 7, 2026 · 06:13 UTC

↓ Download file

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "bilo-trains",
  "version": "1.4.0",
  "description": "Find trains and buses in Romania, with published times, fares, stops, connections and operator booking options.",
  "author": {
    "name": "JERRY TECHNOLOGIES S.R.L.",
    "url": "https://bilo.ro"
  },
  "homepage": "https://bilo.ro",
  "extensions": {
    "com.openai": {
      "interface": {
        "displayName": "Bilo",
        "shortDescription": "Find trains & buses in Romania",
        "longDescription": "Find trains and buses in Romania by departure location, destination and travel date. View published departure and arrival times, journey durations and available adult fares. Open a journey to see its stops, operator and booking options.\n\nFor trains, view travel classes, direct journeys and connections, with ticket links to the operators. For buses, view published journeys and the reservation phone numbers or website links provided by the operators.\n\nSchedules and fares are based on the data available to Bilo, not live seat inventory. Connecting trains can require separate tickets, and connections are not guaranteed. The plugin does not contact operators, reserve seats, take payment or issue tickets.",
        "developerName": "JERRY TECHNOLOGIES S.R.L.",
        "category": "Travel",
        "capabilities": [
          "Search train and bus journeys",
          "View journey details",
          "Get reservation contacts and ticket links"
        ],
        "websiteURL": "https://bilo.ro",
        "privacyPolicyURL": "https://bilo.ro/confidentialitate",
        "termsOfServiceURL": "https://bilo.ro/termeni",
        "defaultPrompt": [
          "Find trains from Bucure\u0219ti to Bra\u0219ov tomorrow for two adults.",
          "Find buses from R\u0103d\u0103u\u021bi to B\u0103ile Felix tomorrow and show reservation contacts.",
          "Show the stops and booking options for my selected journey."
        ],
        "brandColor": "#143D2E",
        "logo": "./assets/logo.png",
        "composerIcon": "./assets/icon.png",
        "logoDark": "./assets/logo-dark.png",
        "composerIconDark": "./assets/icon-dark.png",
        "brandColorDark": "#A8D5BA",
        "supportURL": "https://bilo.ro/termeni#contact"
      },
      "publication": {
        "release_notes": "1.4.0: Clarified the names and purpose of the three read-only tools: search_trips, get_trip_details and get_booking_options. Added field descriptions for journey locations, dates, adults, class, filters and pagination. Bus booking options use published reservation phone numbers; train booking options use operator ticket links. Bilo checkout is not offered by this MCP integration. Tool descriptions explain when to use each operation and its limits without preferential or comparative instructions. Prepared OpenAI platform certificate verification without requiring a Bilo account for travellers.",
        "translations": {
          "ro-RO": {
            "subtitle": "Trenuri \u0219i autocare \u00een Rom\u00e2nia",
            "description": "Caut\u0103 trenuri \u0219i autocare \u00een Rom\u00e2nia dup\u0103 localitatea de plecare, destina\u021bie \u0219i data c\u0103l\u0103toriei. Vezi orele publicate de plecare \u0219i sosire, durata c\u0103l\u0103toriei \u0219i tarifele disponibile pentru adul\u021bi. Deschide o c\u0103l\u0103torie pentru opriri, operator \u0219i op\u021biunile de rezervare.\n\nPentru trenuri, vezi clasele de c\u0103l\u0103torie, cursele directe \u0219i leg\u0103turile, cu linkuri c\u0103tre bilete la operatori. Pentru autocare, vezi cursele publicate \u0219i numerele de telefon pentru rezerv\u0103ri sau linkurile oferite de operatori.\n\nOrarele \u0219i tarifele provin din datele disponibile \u00een Bilo, f\u0103r\u0103 confirmarea locurilor \u00een timp real. Trenurile cu schimb\u0103ri pot necesita bilete separate, iar leg\u0103turile nu sunt garantate. Pluginul nu contacteaz\u0103 operatorii, nu rezerv\u0103 locuri, nu \u00eencaseaz\u0103 pl\u0103\u021bi \u0219i nu emite bilete."
          }
        }
      },
      "review": {
        "test_cases": {
          "positive": [
            {
              "description": "Train search for two adults",
              "prompt": "Find trains from Bucure\u0219ti to Bra\u0219ov tomorrow for two adults. Sort by price.",
              "tools_triggered": "search_trips",
              "expected_behavior": "Search mode=rail for the requested date and two adults, sorted by available adult fare. Return published times, prices or missing-price values, and tripId values. Report source failures or an empty result honestly. Do not claim live seats or invent prices."
            },
            {
              "description": "Train connection itinerary",
              "prompt": "Find trains from Suceava to Sibiu tomorrow, including connections. Show the stops and transfer waits for one journey.",
              "tools_triggered": "search_trips, get_trip_details",
              "expected_behavior": "Search mode=rail and inspect a returned journey. Include available intermediate stops, train numbers, dates and transfer waits. If a connection is returned, explain that separate tickets may be needed and the connection is not guaranteed."
            },
            {
              "description": "Train operator ticket links",
              "prompt": "Find a train from Bucure\u0219ti to Bra\u0219ov tomorrow and give me its ticket link without buying anything.",
              "tools_triggered": "search_trips, get_booking_options",
              "expected_behavior": "Search mode=rail and pass an unchanged returned tripId to get_booking_options. Show the published operator ticket links and identify the operators. Report missing links honestly. Do not offer a Bilo checkout or claim a purchase."
            },
            {
              "description": "First-class train filter and duration ordering",
              "prompt": "Find first-class trains from Bra\u0219ov to Bucure\u0219ti tomorrow for one adult, sort by duration and show details for one journey.",
              "tools_triggered": "search_trips, get_trip_details",
              "expected_behavior": "Use mode=rail, railClass=1, passengers=1 and sort=duration. Use a returned tripId for details. Retain class, published fares and source context. Report unavailable class or fares honestly without substituting second-class prices."
            },
            {
              "description": "Bus telephone reservation contact",
              "prompt": "Find buses from R\u0103d\u0103u\u021bi to B\u0103ile Felix tomorrow and show the reservation phone number for one journey. Do not call anyone.",
              "tools_triggered": "search_trips, get_booking_options",
              "expected_behavior": "Search mode=bus, then use a returned tripId to obtain its published reservation contact. Show the public phone number and a telephone link when available. State when no contact is published. Do not return a Bilo checkout, call the operator or claim a reservation. Never use the private administrator contact."
            }
          ],
          "negative": [
            {
              "description": "No in-chat train purchase: explain that Bilo can search and provide ticket links, but cannot purchase or issue tickets. Do not claim a purchase or invoke a nonexistent purchase tool.",
              "prompt": "Buy and issue a train ticket directly in this conversation."
            },
            {
              "description": "No saved-card payment or reservation: explain that the MCP cannot charge cards or reserve seats. Do not request payment credentials, create orders or claim a reservation.",
              "prompt": "Charge my saved card and reserve seats through Bilo."
            },
            {
              "description": "Passenger privacy: refuse access to another passenger\u2019s private booking or email. Do not call public catalogue tools as if they could retrieve private passenger data.",
              "prompt": "Show another passenger\u2019s booking and email."
            }
          ]
        },
        "commerce": true,
        "commerce_description": "Travel information and external booking contacts only. For buses, the plugin returns published reservation phone numbers when available; for trains, it returns published operator ticket links. It does not call operators, offer Bilo checkout, create orders, reserve seats, collect payment credentials, process payments or issue tickets.",
        "demo_recording_url": "https://bilo.ro/review/bilo-ad9058ce934c4c108ccb142cb6d120be.mp4"
      },
      "apps": "./.app.json"
    }
  }
}

SHA-256: c6071c1a020e1aabd29dbce2adc8e7e7d72d9407770d8867ab11ca86442641e3