2,500+ MCP servers ready to use
Vinkius

LA Metro MCP Server for OpenAI Agents SDK 12 tools — connect in under 2 minutes

Built by Vinkius GDPR 12 Tools SDK

The OpenAI Agents SDK enables production-grade agent workflows in Python. Connect LA Metro through the Vinkius and your agents gain typed, auto-discovered tools with built-in guardrails — no manual schema definitions required.

Vinkius supports streamable HTTP and SSE.

python
import asyncio
from agents import Agent, Runner
from agents.mcp import MCPServerStreamableHttp

async def main():
    # Your Vinkius token — get it at cloud.vinkius.com
    async with MCPServerStreamableHttp(
        url="https://edge.vinkius.com/[YOUR_TOKEN_HERE]/mcp"
    ) as mcp_server:

        agent = Agent(
            name="LA Metro Assistant",
            instructions=(
                "You help users interact with LA Metro. "
                "You have access to 12 tools."
            ),
            mcp_servers=[mcp_server],
        )

        result = await Runner.run(
            agent, "List all available tools from LA Metro"
        )
        print(result.final_output)

asyncio.run(main())
LA Metro
Fully ManagedVinkius Servers
60%Token savings
High SecurityEnterprise-grade
IAMAccess control
EU AI ActCompliant
DLPData protection
V8 IsolateSandboxed
Ed25519Audit chain
<40msKill switch
Stream every event to Splunk, Datadog, or your own webhook in real-time

* Every MCP server runs on Vinkius-managed infrastructure inside AWS - a purpose-built runtime with per-request V8 isolates, Ed25519 signed audit chains, and sub-40ms cold starts optimized for native MCP execution. See our infrastructure

About LA Metro MCP Server

Connect your LA Metro API Los Angeles public transit data platform to any AI agent and take full control of real-time Metrobus and Metro Rail tracking, arrival predictions, rail-to-rail journey planning, and service disruption monitoring through natural conversation.

The OpenAI Agents SDK auto-discovers all 12 tools from LA Metro through native MCP integration. Build agents with built-in guardrails, tracing, and handoff patterns — chain multiple agents where one queries LA Metro, another analyzes results, and a third generates reports, all orchestrated through the Vinkius.

What you can do

  • Metrobus Stops — List all bus stops system-wide or filtered by route with coordinates and service messages
  • Metrobus Routes — Browse all Metrobus routes including local, rapid, and express services across LA County
  • Bus Schedules — Get complete schedule data with run patterns and stop sequences for any bus route
  • Bus Vehicle Tracking — Track real-time GPS positions of all active Metrobus vehicles
  • Stop Predictions — Get next bus arrival predictions for any specific bus stop with minutes and seconds
  • Metro Rail Stations — List all rail stations across B (Red), D (Purple), A (Blue), E (Expo), C (Green), and K lines
  • Rail Arrivals — Get next train arrival predictions at any Metro Rail station with line and destination info
  • Rail-to-Rail Planning — Plan rail-only journeys between any two Metro Rail stations with transfer guidance
  • Rail Routes — Browse all Metro Rail lines with colors, station counts, and operational metadata
  • Service Alerts — Monitor active disruptions across Metro Rail and Metrobus with severity and alternatives
  • Rail Vehicle Positions — Track real-time positions of Metro Rail trains across the network
  • Bus Locations — Get real-time bus locations system-wide or filtered by specific route

The LA Metro MCP Server exposes 12 tools through the Vinkius. Connect it to OpenAI Agents SDK in under two minutes — no API keys to rotate, no infrastructure to provision, no vendor lock-in. Your configuration, your data, your control.

How to Connect LA Metro to OpenAI Agents SDK via MCP

Follow these steps to integrate the LA Metro MCP Server with OpenAI Agents SDK.

01

Install the SDK

Run pip install openai-agents in your Python environment

02

Replace the token

Replace [YOUR_TOKEN_HERE] with your Vinkius token from cloud.vinkius.com

03

Run the script

Save the code above and run it: python agent.py

04

Explore tools

The agent will automatically discover 12 tools from LA Metro

Why Use OpenAI Agents SDK with the LA Metro MCP Server

OpenAI Agents SDK provides unique advantages when paired with LA Metro through the Model Context Protocol.

01

Native MCP integration via `MCPServerSse` — pass the URL and the SDK auto-discovers all tools with full type safety

02

Built-in guardrails, tracing, and handoff patterns let you build production-grade agents without reinventing safety infrastructure

03

Lightweight and composable: chain multiple agents and MCP servers in a single pipeline with minimal boilerplate

04

First-party OpenAI support ensures optimal compatibility with GPT models for tool calling and structured output

LA Metro + OpenAI Agents SDK Use Cases

Practical scenarios where OpenAI Agents SDK combined with the LA Metro MCP Server delivers measurable value.

01

Automated workflows: build agents that query LA Metro, process the data, and trigger follow-up actions autonomously

02

Multi-agent orchestration: create specialist agents — one queries LA Metro, another analyzes results, a third generates reports

03

Data enrichment pipelines: stream data through LA Metro tools and transform it with OpenAI models in a single async loop

04

Customer support bots: agents query LA Metro to resolve tickets, look up records, and update statuses without human intervention

LA Metro MCP Tools for OpenAI Agents SDK (12)

These 12 tools become available when you connect LA Metro to OpenAI Agents SDK via MCP:

01

get_bus_locations

Returns vehicle IDs, route IDs, latitude/longitude coordinates, heading direction, seconds since last report, predictability indicators, and trip/run identifiers. Can query all buses system-wide or filter by specific route ID for targeted route-level tracking. Essential for real-time bus fleet monitoring, passenger arrival estimation, route-level service awareness, and transit operations management. AI agents should reference this when users ask "show me all buses on route 720", "where are the active buses right now", or need real-time bus position data for fleet visualization or arrival prediction. Get real-time bus locations system-wide or for a specific route

02

get_bus_routes

Returns route IDs, route names, types (local, rapid, express, Metro Rail link), direction listings, and route metadata. Covers hundreds of routes serving the entire LA Metro service area including downtown LA, Hollywood, Santa Monica, San Fernando Valley, South Bay, East LA, and beyond. Essential for route discovery, service area analysis, transit network understanding, and identifying route IDs for use in stop and schedule queries. AI agents should reference this when users ask "list all Metrobus routes", "what routes serve downtown LA", or need to identify route IDs for subsequent Metrobus queries. List all Metrobus routes in the LA Metro system

03

get_bus_schedule

Returns run IDs, direction information (inbound/outbound, eastbound/westbound), stop sequences, and scheduled timing data. Essential for schedule analysis, journey planning at specific times, understanding route direction patterns, and passenger trip preparation. AI agents should use this when users ask "show me the schedule for route 720", "what are the run patterns for the 4 line", or need detailed schedule data for a specific bus route to plan trips at specific times. Get the schedule for a specific Metrobus route

04

get_bus_stops

Returns stop IDs, names, geographic coordinates (latitude, longitude), route affiliations, and any service messages or alerts associated with each stop. Essential for stop discovery, journey planning, accessibility mapping, and understanding bus network geography across Los Angeles County. AI agents should use this when users ask "list all stops on the 720 Rapid", "find bus stops near Union Station", or need to identify stop IDs for use in prediction queries. If no route_id is provided, returns all stops system-wide. List all Metrobus stops or stops on a specific bus route

05

get_bus_vehicles

Returns vehicle IDs, route affiliations, latitude/longitude coordinates, heading direction, seconds since last report, predictability indicators (whether the vehicle is running on predicted schedule or actual GPS), and run/trip identifiers. Essential for real-time bus tracking, passenger wait time estimation, bus arrival prediction, and fleet monitoring. AI agents should use this when users ask "where are the buses right now", "track vehicle 1234", or need to locate specific Metrobus vehicles for real-time arrival awareness. Get real-time locations of active Metrobus vehicles

06

get_rail_arrivals

Returns predicted arrival times, train destination names, line colors (Red, Purple, Blue, Expo, Green, Gold, K), direction indicators, and train run identifiers. Essential for real-time rail arrival awareness, passenger waiting time estimation, connection planning, and station-level trip timing. AI agents should reference this when users ask "when is the next Red Line train at Union Station", "show upcoming trains at 7th Street/Metro Center", or need station-specific Metro Rail arrival predictions. Station IDs can be found using get_rail_stations. Get next train arrival predictions at a specific Metro Rail station

07

get_rail_routes

Essential for line identification, rail network understanding, service area analysis, and identifying line IDs for use in rail journey planning. AI agents should reference this when users ask "list all Metro Rail lines", "what lines does Metro operate", or need line metadata for rail network context. List all Metro Rail lines and routes

08

get_rail_stations

Returns station IDs, names, display names, geographic coordinates (latitude, longitude), line affiliations, station order on each line, cross streets, and accessibility information. Essential for station discovery, rail network mapping, route planning, and identifying station IDs for use in arrival and rail-to-rail queries. AI agents should use this when users ask "list all stations on the Red Line", "what is the station code for 7th Street/Metro Center", or need to understand the Metro Rail network geography. List all Metro Rail stations with details

09

get_rail_to_rail

Returns recommended routes, transfer stations, estimated travel times, number of transfers, line sequences, and step-by-step rail directions. Essential for rail trip planning, transfer identification, travel time estimation, and understanding rail connectivity across the Metro network. AI agents should use this when users ask "how do I get from North Hollywood to Santa Monica by rail", "plan a rail trip from Union Station to LAX", or need rail-only journey planning between two Metro Rail stations. Station IDs can be found using get_rail_stations. Get rail-to-rail journey planning between two Metro Rail stations

10

get_rail_vehicle_positions

Returns train identifiers, line affiliations, latitude/longitude coordinates, heading direction, run/trip IDs, and prediction status. Essential for real-time rail tracking, train location awareness, and understanding train distribution across the network. AI agents should use this when users ask "where are the Red Line trains right now", "track train positions on the Expo Line", or need to visualize train locations for operational monitoring or passenger information. Get real-time positions of Metro Rail trains

11

get_service_alerts

Returns alert descriptions, affected routes and stations, severity levels, start and end timestamps, cause types (maintenance, incident, weather, special events), and alternative service recommendations. Essential for service disruption awareness, alternative route planning, passenger communication, and understanding system reliability. AI agents should use this when users ask "are there any delays on the Red Line", "is Metro running normally today", or need to check service reliability before planning Metro journeys. Get current service alerts and disruptions across the LA Metro system

12

get_stop_predictions

Returns predicted arrival times in minutes and seconds, route IDs, run IDs, direction information, departure indicators, and prediction confidence levels. Essential for real-time bus arrival awareness, passenger waiting time estimation, trip timing, and connection coordination. AI agents should reference this when users ask "when is the next bus at stop 5678", "show predictions for this stop", or need real-time arrival data for a specific bus stop. Stop IDs can be found using get_bus_stops. Get next bus arrival predictions for a specific bus stop

Example Prompts for LA Metro in OpenAI Agents SDK

Ready-to-use prompts you can give your OpenAI Agents SDK agent to start working with LA Metro immediately.

01

"Show me all Metrobus stops on the 720 Rapid route."

02

"What are the next Red Line trains arriving at Union Station?"

03

"Plan a rail journey from North Hollywood to Santa Monica."

Troubleshooting LA Metro MCP Server with OpenAI Agents SDK

Common issues when connecting LA Metro to OpenAI Agents SDK through the Vinkius, and how to resolve them.

01

MCPServerStreamableHttp not found

Ensure you have the latest version: pip install --upgrade openai-agents
02

Agent not calling tools

Make sure your prompt explicitly references the task the tools can help with.

LA Metro + OpenAI Agents SDK FAQ

Common questions about integrating LA Metro MCP Server with OpenAI Agents SDK.

01

How does the OpenAI Agents SDK connect to MCP?

Use MCPServerSse(url=...) to create a server connection. The SDK auto-discovers all tools and makes them available to your agent with full type information.
02

Can I use multiple MCP servers in one agent?

Yes. Pass a list of MCPServerSse instances to the agent constructor. The agent can use tools from all connected servers within a single run.
03

Does the SDK support streaming responses?

Yes. The SDK supports SSE and Streamable HTTP transports, both of which work natively with the Vinkius.

Connect LA Metro to OpenAI Agents SDK

Get your token, paste the configuration, and start using 12 tools in under 2 minutes. No API key management needed.