How to Use the MTA MCP in Vercel AI SDK
Stream live NYC transit data directly into React frontends using the Vercel AI SDK.
Works with every AI agent you already use
…and any MCP-compatible client
Connect MTA MCP to Vercel AI SDK
Create your Vinkius account to connect MTA to Vercel AI SDK and route execution through our secure gateway. The platform manages server hosting, runtime updates, and security layers. Configuration requires no manual server provisioning.
Stream Live Bus and Subway Feeds
The MTA MCP Server connects your Vercel AI SDK frontend directly to the GTFS-RT feeds for buses and subways. You call `get_subway_feed` with a line identifier, and your UI instantly starts rendering train positions. No waiting for a massive JSON payload to resolve. The data streams right into your Next.js components as the agent parses it. Bus tracking requires high-frequency updates. Your agent pulls `get_bus_vehicles` for system-wide coordinates or `get_bus_vehicle_at_stop` for a specific intersection. The user watches the marker move on the map. You bypass static polling entirely.
Build Vercel AI SDK Transit Dashboards
Relying on `get_service_alerts` alongside `get_lirr_feed` gives commuter apps accurate disruption data. Your agent grabs the delay details and the actual train positions simultaneously. You pipe that raw data into a custom React component that displays alternative routes instantly. The same logic applies to Metro-North. Executing `get_metro_north_feed` gives you scheduled versus actual arrival times at Grand Central. Your agent compares those timestamps against `get_system_time` to calculate precise delays, sending the exact wait time to the user's screen.
Map Stations and Stops on the Fly
Firing `get_stations` returns the exact coordinates needed to draw route lines. The MCP server returns the latitude, longitude, and entrance locations for every NYC subway stop. Your agent feeds this into your mapping library before the user even finishes typing their query. Street-level transit is just as precise. Calling `get_bus_routes` followed by `get_bus_stops` maps out the entire M15 or B46 path. When the user clicks a stop, the agent runs `get_bus_estimated_arrival` to show the wait time. It feels instant because the SDK streams the results the millisecond the MTA responds.
Set up MTA MCP in Vercel AI SDK
Prerequisites
- Node.js 18+ and a TypeScript project
-
ai+@modelcontextprotocol/sdkpackages - Active Vinkius subscription with a valid endpoint token
- 1
Install dependencies
Run
npm install ai @modelcontextprotocol/sdkplus your preferred model provider (e.g.@ai-sdk/openai). - 2
Create the Streamable HTTP transport
Use
StreamableHTTPClientTransportwith your Vinkius endpoint URL. Replace[YOUR_TOKEN_HERE]with your token from cloud.vinkius.com. - 3
Discover and use tools
Call
mcpClient.tools()to auto-discover all MTA tools. Pass them directly togenerateText()orstreamText()— no manual schema definitions needed. - 4
Works with any model provider
Swap
openai("gpt-4o")for any AI SDK provider — Anthropic, Google, Mistral. The MCP tools work identically across all supported models.
import { experimental_createMCPClient as createMCPClient } from "ai";
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp";
import { generateText } from "ai";
import { openai } from "@ai-sdk/openai";
const transport = new StreamableHTTPClientTransport(
new URL("https://edge.vinkius.com/[YOUR_TOKEN_HERE]/mcp")
);
const mcpClient = await createMCPClient({ transport });
const tools = await mcpClient.tools();
const { text } = await generateText({
model: openai("gpt-4o"),
tools,
prompt: "List recent MTA transactions",
});
console.log(text);
await mcpClient.close(); 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 Vercel AI SDK
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.