How to Use the MTA MCP in CrewAI
Deploy autonomous agent teams to monitor and analyze MTA transit data with CrewAI.
Works with every AI agent you already use
…and any MCP-compatible client
Connect MTA MCP to CrewAI
Create your Vinkius account to connect MTA to CrewAI and route execution through our secure gateway. The platform manages server hosting, runtime updates, and security layers. Configuration requires no manual server provisioning.
Coordinate Multi-Agent Transit Operations
The MTA MCP Server turns your CrewAI setup into a full transit command center. You assign one agent to continuously monitor `get_service_alerts` for disruptions. When a switch fails at DeKalb Avenue, that agent alerts the routing agent. The router then queries `get_bus_routes` and `get_bus_stops` to build a detour. The agents share this context in memory. A third communication agent takes the detour data and drafts an alert for the user. Instead of one script trying to do everything, specialized roles handle the real-time feeds, the static geography, and the final output.
Track Regional Trains with CrewAI
Handing `get_lirr_feed` to a dedicated agent manages massive commuter rail datasets. It filters out the noise and isolates the specific trains heading to Jamaica. Meanwhile, a Metro-North agent runs `get_metro_north_feed` to watch the Hudson line. These agents compare scheduled arrivals against real-time positions. They use `get_system_time` from the MCP server to calculate precise delays down to the second. If a train stops moving between stations, the agent updates the crew's shared state immediately.
Analyze Street-Level Bus Data
Calling `get_bus_vehicles` executes rapid street-level bus tracking. An agent grabs the coordinates of every active bus in Brooklyn. It cross-references those positions with `get_bus_predictions` to see which vehicles are falling behind schedule. You can drill down to a single intersection. The agent fires `get_bus_vehicle_at_stop` to check if a specific bus is actually approaching the curb. If the GPS data looks stale, it runs `get_bus_estimated_arrival` to get the scheduled ETA instead.
Set up MTA MCP in CrewAI
Prerequisites
- Python 3.10+ installed
-
crewaipackage (pip install crewai) - Active Vinkius subscription with a valid endpoint token
- 1
Install CrewAI
Run
pip install crewaito install the framework. MCP support is built-in via themcpsparameter. - 2
Add the MCP URL to your agent
Pass your Vinkius endpoint directly to the
mcpslist. Replace[YOUR_TOKEN_HERE]with your token from cloud.vinkius.com. CrewAI handles tool discovery and caching automatically. - 3
Kick off your crew
Create a
Crewwith your agent and tasks. Callcrew.kickoff()— the agent will automatically invoke MTA tools as needed.
from crewai import Agent, Task, Crew
agent = Agent(
role="MTA Analyst",
goal="Access and analyze MTA data via MCP.",
backstory="Expert analyst with direct MTA access.",
mcps=[
"https://edge.vinkius.com/[YOUR_TOKEN_HERE]/mcp"
],
)
task = Task(
description="List recent MTA transactions",
agent=agent,
expected_output="A summary of recent activity",
)
crew = Crew(agents=[agent], tasks=[task])
result = crew.kickoff()
print(result) Prerequisites
- Python 3.10+ installed
-
crewai+crewai-toolspackages - Active Vinkius subscription with a valid endpoint token
- 1
Install dependencies
Run
pip install crewai crewai-tools. TheMCPServerAdapterhandles lifecycle management and tool conversion. - 2
Connect with MCPServerAdapter
Use
MCPServerAdapteras a context manager withSseServerParameterspointing to your Vinkius endpoint. The adapter automatically manages connection lifecycle. - 3
Assign tools and run
Pass the returned
mcp_toolsto your agent'stoolsparameter. The adapter converts MCP tools to nativeBaseToolobjects compatible with all CrewAI agents.
from crewai import Agent, Task, Crew
from crewai_tools import MCPServerAdapter
from mcp import SseServerParameters
server_params = SseServerParameters(
url="https://edge.vinkius.com/[YOUR_TOKEN_HERE]/mcp"
)
with MCPServerAdapter(server_params) as mcp_tools:
agent = Agent(
role="MTA Analyst",
goal="Access and analyze MTA data via MCP.",
backstory="Expert analyst with direct MTA access.",
tools=mcp_tools,
)
task = Task(
description="List recent MTA transactions",
agent=agent,
expected_output="A summary of recent activity",
)
crew = Crew(agents=[agent], tasks=[task])
result = crew.kickoff()
print(result) Independent Platform Disclaimer: Vinkius is an independent platform and is not affiliated with, endorsed by, sponsored by, verified by, or otherwise authorized by MTA. 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 MTA MCP in CrewAI
Use it with your favorite AI tools
Connect this server to Cursor, Claude, VS Code, and more.
Start using the MTA MCP today
We host it, we monitor it, we maintain it. You just paste one token.