4,500+ servers built on MCP Fusion
Vinkius
EMT Madrid (Open Data) logo
Vinkius
OpenAI Agents SDK logo

How to Use the EMT Madrid (Open Data) MCP in OpenAI Agents SDK

Connect the EMT Madrid (Open Data) MCP Server to your OpenAI Agents SDK workflow for real-time transit routing and BiciMAD tracking.

See Vinkius in Action

Works with every AI agent you already use

…and any MCP-compatible client

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

Connect EMT Madrid (Open Data) MCP to OpenAI Agents SDK

Create your Vinkius account to connect EMT Madrid (Open Data) to OpenAI Agents SDK 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

OpenAI Agents SDK Guardrails for Transit

Your agent uses the `login` tool to pull temporary access tokens from EMT MobilityLabs before executing any transit queries. The OpenAI Agents SDK validates this authentication step through built-in guardrails. If the token request fails, the framework stops the execution path immediately instead of sending unauthorized requests to the public data endpoints. Once authenticated, the agent calls `get_bus_arrivals` to pull real-time stop data. You can trace every single API call in the OpenAI dashboard. This visibility matters when you debug latency issues during peak Madrid rush hour.

Multi-Agent Route Planning

The `plan_bus_route` tool calculates exact paths between two coordinates using the Madrid bus network. You hand this operation to a specialized routing agent within your system. That agent processes the raw geometry and stop nodes, then passes the structured itinerary to a separate user-facing agent. Handoffs happen natively in the framework. The routing agent focuses entirely on parsing the EMT network graph. The response agent formats that data for the commuter without getting bogged down in coordinate math.

High-Frequency BiciMAD Polling

The `list_bicimad_stations` tool returns the exact dock status and bike availability across the entire Madrid grid. You configure the MCP server connection with `cacheToolsList=True` in your agent constructor. That prevents the framework from re-discovering the tool schema on every single check. Your agent polls the endpoint to track rapid dock depletion. The Python SDK handles the async context manager automatically. You just define the polling interval and let the agent monitor the station capacity.

Setup guide

Set up EMT Madrid (Open Data) MCP in OpenAI Agents SDK

Prerequisites

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

    Install the SDK

    Run pip install openai-agents to install the OpenAI Agents SDK. The MCP integration is built-in — no extra dependencies needed.

  2. 2

    Connect via SSE transport

    Use MCPServerSse with your Vinkius endpoint URL. Replace [YOUR_TOKEN_HERE] with your token from cloud.vinkius.com. The SDK auto-discovers all EMT Madrid (Open Data) tools at runtime.

  3. 3

    Create your Agent

    Pass the MCP to Agent(mcp_servers=[server]). The agent receives EMT Madrid (Open Data) tools as native definitions — JSON schemas resolve automatically.

  4. 4

    Run the agent

    Call Runner.run(agent, prompt) to execute. The agent invokes the appropriate EMT Madrid (Open Data) tools and returns structured results. Copy the full example on the right to get started.

agent.py
import asyncio
from agents import Agent, Runner
from agents.mcp import MCPServerSse

async def main():
    async with MCPServerSse(
        url="https://edge.vinkius.com/[YOUR_TOKEN_HERE]/mcp"
    ) as server:
        agent = Agent(
            name="EMT Madrid (Open Data) Agent",
            instructions="You have access to EMT Madrid (Open Data) tools.",
            mcp_servers=[server],
        )
        result = await Runner.run(agent, "List recent transactions")
        print(result.final_output)

asyncio.run(main())

Independent Platform Disclaimer: Vinkius is an independent platform and is not affiliated with, endorsed by, sponsored by, verified by, or otherwise authorized by EMT Madrid. 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 EMT Madrid (Open Data) MCP in OpenAI Agents SDK

Install the package with `pip install openai-agents`. Create an `MCPServerStreamableHttp` instance with your endpoint URL. Pass that directly into your `mcp_servers` list when initializing the agent.
Yes. The agent automatically discovers the `login` tool at runtime. It executes the authentication flow to grab the accessToken required for subsequent transit queries.
Every tool execution logs directly to your dashboard. You see the exact payload the MCP Server returns. That includes the specific bus wait times and stop IDs.
The framework lets you enforce strict execution limits. You configure your agent to pause after a set number of `list_bicimad_stations` calls. That keeps your EMT developer account active.
This server transmits temporary authentication tokens and geographic coordinates for route planning. The Vinkius V8 Isolate Sandbox destroys the environment the millisecond the `plan_bus_route` operation completes. Zero state persists between requests.

Start using the EMT Madrid (Open Data) MCP today

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

Built & Managed by Vinkius 30s setup 4 tools

We've already built the connector for EMT Madrid (Open Data). Just plug in your AI agents and start using Vinkius.

No hosting. No infrastructure. No complex setup.
All 4 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.