MBTA Alerts API

Service disruption communications

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/mbta-alerts-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

mbta-alerts-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: MBTA V3 Alerts API
  description: The MBTA V3 API provides fast, easy access to Massachusetts Bay Transportation Authority schedules, alerts, and real-time information. Returns JSON:API formatted responses (application/vnd.api+json) for routes, stops, trips, schedules, predictions, vehicles, alerts, lines, facilities, services, shapes, and route patterns. Free API keys are available via the developer portal for higher rate limits.
  version: '3.0'
  contact:
    name: MBTA Developers
    url: https://www.mbta.com/developers
  termsOfService: https://www.mass.gov/files/documents/2017/10/27/massdot-developers-license-agreement.pdf
servers:
- url: https://api-v3.mbta.com
  description: Production
security:
- apiKeyHeader: []
- apiKeyQuery: []
tags:
- name: Alerts
  description: Service disruption communications
paths:
  /alerts:
    get:
      operationId: listAlerts
      summary: List alerts
      description: Returns service disruption alerts.
      tags:
      - Alerts
      parameters:
      - $ref: '#/components/parameters/PageOffset'
      - $ref: '#/components/parameters/PageLimit'
      - $ref: '#/components/parameters/Sort'
      - $ref: '#/components/parameters/Include'
      responses:
        '200':
          $ref: '#/components/responses/JsonApiOk'
        '400':
          $ref: '#/components/responses/BadRequest'
        '403':
          $ref: '#/components/responses/Forbidden'
        '429':
          $ref: '#/components/responses/RateLimited'
  /alerts/{id}:
    get:
      operationId: getAlert
      summary: Get alert
      description: Returns a single alert by ID.
      tags:
      - Alerts
      parameters:
      - $ref: '#/components/parameters/IdPath'
      - $ref: '#/components/parameters/Include'
      responses:
        '200':
          $ref: '#/components/responses/JsonApiOk'
        '404':
          $ref: '#/components/responses/NotFound'
components:
  responses:
    RateLimited:
      description: Too many requests.
    BadRequest:
      description: Bad request - invalid parameters.
    NotFound:
      description: Resource not found.
    Forbidden:
      description: Forbidden - invalid API key or rate limit exceeded.
    JsonApiOk:
      description: Successful JSON:API response.
      content:
        application/vnd.api+json:
          schema:
            type: object
            properties:
              data: {}
              included:
                type: array
                items: {}
              links:
                type: object
              meta:
                type: object
  parameters:
    Sort:
      name: sort
      in: query
      description: Comma-separated list of fields to sort by. Prepend '-' for descending.
      schema:
        type: string
    PageOffset:
      name: page[offset]
      in: query
      description: Offset (0-based) into the collection.
      schema:
        type: integer
        minimum: 0
    Include:
      name: include
      in: query
      description: Comma-separated list of relationships to include.
      schema:
        type: string
    IdPath:
      name: id
      in: path
      required: true
      schema:
        type: string
    PageLimit:
      name: page[limit]
      in: query
      description: Maximum number of resources to return.
      schema:
        type: integer
        minimum: 1
  securitySchemes:
    apiKeyHeader:
      type: apiKey
      in: header
      name: x-api-key
    apiKeyQuery:
      type: apiKey
      in: query
      name: api_key
externalDocs:
  description: MBTA V3 API Documentation
  url: https://www.mbta.com/developers/v3-api