4,500+ servers built on MCP Fusion
Vinkius
CTA logo
Vinkius
Google ADK logo

How to Use the CTA MCP in Google ADK

Connect your Google ADK agent to live CTA data for building enterprise-grade transit tools on Google Cloud.

See Vinkius in Action

Works with every AI agent you already use

…and any MCP-compatible client

CTA MCP on Cursor AI Code Editor MCP Client CTA MCP on Claude Desktop App MCP Integration CTA MCP on OpenAI Agents SDK MCP Compatible CTA MCP on Visual Studio Code MCP Extension Client CTA MCP on GitHub Copilot AI Agent MCP Integration CTA MCP on Google Gemini AI MCP Integration CTA MCP on Lovable AI Development MCP Client CTA MCP on Mistral AI Agents MCP Compatible CTA MCP on Amazon AWS Bedrock MCP Support
MCP Servers - Free for Subscribers
Google ADK

Connect CTA MCP to Google ADK

Create your Vinkius account to connect CTA to Google ADK and route execution through our secure gateway. The platform manages server hosting, runtime updates, and security layers. Configuration requires no manual server provisioning.

GDPR Free for Subscribers

Get Live Vehicle Positions Across Chicago

Your agent can now track Chicago's entire transit fleet. The `get_bus_vehicles` and `get_train_positions` tools provide real-time coordinates, route info, and speed for every bus and L train. You can query the whole system or filter down to a single line, like the Blue Line to O'Hare. This isn't just about dots on a map. With Google ADK, you can stream this location data into BigQuery for historical analysis or use it with Vertex AI to predict service bottlenecks. This MCP Server gives your agent the raw, real-time data to make it happen.

Power Your Google ADK Agent with Real ETAs

Give your agent the ability to provide precise arrival times. The `get_train_arrivals` and `get_bus_predictions` tools connect directly to the CTA's own prediction feeds. Your agent receives arrival times in minutes, destination info, and even run numbers. A Google ADK agent can use this to build powerful conversational flows. For example, it can find a station ID, check for upcoming trains with `get_train_arrivals`, and then cross-reference with `get_service_alerts` to make sure there are no surprise delays.

Map the Entire CTA Network

Before your agent can plan a trip, it needs to understand the system's structure. The `get_bus_routes`, `get_route_directions`, and `get_bus_stops` tools provide the necessary building blocks. Your agent can list all routes, find out which directions they run, and get the exact coordinates of every stop. This is the static data that gives context to the real-time feeds. A sophisticated agent can use this information to suggest routes, find nearby stops, or even analyze service coverage in different neighborhoods. This MCP provides a complete toolset for both static and dynamic data.

Setup guide

Set up CTA MCP in Google ADK

Prerequisites

  • Python 3.10+ installed
  • google-adk package (pip install google-adk)
  • Active Vinkius subscription with a valid endpoint token
  1. 1

    Install Google ADK

    Run pip install google-adk to install the Agent Development Kit. MCP support is included via the McpToolset class.

  2. 2

    Connect via SSE transport

    Use McpToolset.from_server() with SseServerParams pointing to your Vinkius endpoint. Replace [YOUR_TOKEN_HERE] with your token from cloud.vinkius.com.

  3. 3

    Create an LlmAgent

    Pass the returned mcp_tools list directly to LlmAgent(tools=mcp_tools). The ADK maps each MCP tool to a native Gemini function call — no manual schema definitions required.

  4. 4

    Run with any Gemini model

    The agent works with any Gemini model (gemini-2.0-flash, gemini-2.5-pro, etc.). Copy the full example on the right to get started with CTA tools in your ADK agent.

agent.py
from google.adk.agents import LlmAgent
from google.adk.tools.mcp_tool.mcp_toolset import McpToolset
from google.adk.tools.mcp_tool.mcp_session_manager import SseServerParams

# Connect to the MCP via SSE
mcp_tools, exit_stack = await McpToolset.from_server(
    connection_params=SseServerParams(
        url="https://edge.vinkius.com/[YOUR_TOKEN_HERE]/mcp"
    )
)

# Create your agent with auto-discovered tools
agent = LlmAgent(
    name="CTA_agent",
    model="gemini-2.0-flash",
    instruction="You have access to CTA tools via MCP.",
    tools=mcp_tools,
)

Independent Platform Disclaimer: Vinkius is an independent platform and is not affiliated with, endorsed by, sponsored by, verified by, or otherwise authorized by CTA. All third-party trademarks, logos, and brand names are the property of their respective owners. Their use on this website is strictly for informational purposes to identify service compatibility and interoperability.

Why Choose Vinkius

Vinkius connects your tools to AI with real-time monitoring and automatic cost savings — all from one dashboard.

Real-time monitoring

Live

visibility into every interaction

Connect your favorite tools to your AI and see exactly what's happening — every request, every response, in real time.

Built-in savings

60%

lower AI costs

Vinkius compresses data between your apps and your AI automatically. Lower bills every month — no configuration required.

Single dashboard

One

place for every integration

Every tool your AI connects to, managed from a single screen. One account, complete control.

Common questions about CTA MCP in Google ADK

It can't search by street name directly. The agent should first use `get_bus_routes` to find routes that serve that area, then use `get_bus_stops` with a route ID to list all stops. It can then filter those stops by name to find the ones on Michigan Ave.
Yes. You can build a Google ADK agent that calls the `get_train_positions` tool on a schedule. It can then pipe the returned train locations, run numbers, and timestamps into a Google Cloud service like BigQuery for storage and analysis.
Absolutely. Both `get_train_arrivals` and `get_train_positions` include line color data (e.g., 'Red', 'Blue', 'Brn'). This lets your agent provide more user-friendly information, like "The next Red Line train is arriving" instead of just a route code.
Have your agent call the `get_system_time` tool. It's a lightweight request that simply returns the CTA's server time. A successful response confirms connectivity and authentication without using a more complex query.
The agent accesses public transit information, including bus positions, train arrival predictions, and route maps. Your connection to the CTA MCP Server runs in an ephemeral Vinkius sandbox. This means the environment is created just for your request and torn down immediately after, leaving no data behind.

Start using the CTA MCP today

We host it, we monitor it, we maintain it. You just paste one token.

Built & Managed by Vinkius 30s setup 11 tools

We've already built the connector for CTA. Just plug in your AI agents and start using Vinkius.

No hosting. No infrastructure. No complex setup.
All 11 tools are live and waiting. You're up and running in seconds.

Claude Claude
ChatGPT ChatGPT
Cursor Cursor
Gemini Gemini
Windsurf Windsurf
VS Code VS Code
JetBrains JetBrains
Vercel Vercel
+ other MCP clients

Vinkius gives your AI agents access to the full catalog of app connectors, all fully managed, secure, and enterprise-ready. One subscription, every tool you need.

Zero hosting required Full MCP catalog included Enterprise-grade security Auto-updated by Vinkius

Built, hosted, and secured by Vinkius. You just connect and go.