Alphaportal MCP logo

Alphaportal MCP

Access AlphaPortal student, stop, bus-location, notification, and account data through Claude, with confirmation-gated settings changes.

Install Alphaportal MCP

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "alphaportal-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "alphaportal-mcp"
      ],
      "env": {
        "ALPHAPORTAL_REFRESH_TOKEN": "YOUR_VALUE_HERE",
        "ALPHAPORTAL_DISABLE_FETCHPROXY": "YOUR_VALUE_HERE",
        "ALPHAPORTAL_SESSION_FILE": "YOUR_VALUE_HERE",
        "MCP_CONFIRM_MODE": "YOUR_VALUE_HERE",
        "MCP_CONFIRM_ELICITATION": "YOUR_VALUE_HERE",
        "MCP_CONFIRM_TTL_SECONDS": "YOUR_VALUE_HERE",
        "MCP_CONFIRM_SECRET": "YOUR_VALUE_HERE"
      }
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Values are written into the snippet above so you can paste it as is. They never leave your browser.

Automated check passed— started and listed 16 tools correctly (Today).

Overview

alphaportal-mcp connects Claude and other MCP clients to the AlphaPortal school-bus transportation portal through the AlphaRoute API. It retrieves students, assigned stops, live AM or PM bus GPS, notifications, transportation requests, reports, profiles, and district reference data. The server can also change walk-zone radius and notification preferences, but requires confirmation before writes proceed. Use it when a parent or guardian needs conversational access to their own AlphaPortal transportation account.

Use cases

  • Check a child’s assigned morning or afternoon bus stop
  • Track a school bus using its live GPS location
  • Review recent arrival and departure notifications
  • Inspect transportation requests and tracking numbers
  • Update notification preferences after confirming the change

Key features

  • Student, school, and transportation data lookup
  • Live AM and PM bus location
  • Stop times and location retrieval
  • Arrival and departure notification access
  • Confirmation-gated preference and walk-radius changes
  • Session and API health diagnostics

Tools16

What Alphaportal MCP lets your agent do. Expand a tool for its parameters.

Verified live~2.2k tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 2d ago

Recent health check succeeded.

5/5 checks healthy over the last 32d

What it can do

From the 16 tools this server returned when we ran it; 16 declare their own safety hints.

Can delete or modify data · 2Handles credentials · 5Makes network requests · 16Read-only tools · 14
Network at startup3 connections
Files written at startupNone
Install scriptsNone
npm provenanceSigned build
Package age69 days
Maintainers1

Observed 2026-11-02 in an isolated sandbox. A description of reach, not a security audit.

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 14d ago via OSV.dev · alphaportal-mcp (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

npm downloads1.7kPackage downloads in the last 30 days.
Last commit6d agoMost recent push to the default branch.
Availability100%Our rolling endpoint + install checks that succeeded.
Install checkPassedOur sandbox started it and listed its tools.
Tools exposed16Callable tools this server registers over MCP.

How Alphaportal MCP works

What alphaportal-mcp does

alphaportal-mcp exposes AlphaPortal transportation data as MCP tools for parent or guardian accounts. It is intended for portals used by school districts, including Charlotte-Mecklenburg Schools. Read operations cover children and their school and transportation details, morning and afternoon stop assignments, stop times and locations, live bus position, arrival or departure notifications, submitted transportation requests, report links, account information, profile data, settings, and district lists of schools and grades.

The server also provides session and connectivity diagnostics. Session status reports whether a usable session is configured without returning secrets. The health check distinguishes between token resolution problems, AlphaPortal authentication rejection, CDN or WAF blocking, and an unavailable API.

How it works

The server talks to api.alpharoute.app using a refresh token associated with the signed-in AlphaPortal account. It exchanges that credential for short-lived access tokens on the server side. A refresh token can be supplied directly through the environment, or the server can obtain it once from a signed-in AlphaPortal browser tab through the ContextMint Bridge extension. The browser path requires Chrome and a signed-in *.alphaportal.app tab; it is disabled when ALPHAPORTAL_DISABLE_FETCHPROXY=1 is set.

Rotated refresh tokens are stored locally so the session can continue within the token’s approximately eight-day validity window when the server is used. The default session file is ~/.alphaportal-mcp/session.json. Writes are protected by confirmation behavior. Depending on client support and configuration, the client displays a prompt, or the first call returns a preview and temporary confirmation token that must be used for a subsequent call.

Setup and configuration

Build and run the project with:

Terminal
npm install
npm run build
node dist/index.js

For headless or hosted use, set ALPHAPORTAL_REFRESH_TOKEN. The token can be captured from a signed-in browser tab using:

js
JSON.parse(localStorage.user).User.RefreshToken

ALPHAPORTAL_SESSION_FILE changes where the persisted session is stored. Confirmation behavior can be adjusted with MCP_CONFIRM_MODE, MCP_CONFIRM_ELICITATION, MCP_CONFIRM_TTL_SECONDS, and MCP_CONFIRM_SECRET. Hosted deployments without a browser bridge must provide the refresh token as a secret. Deployments using the isolated mcp-host tier must allow outbound access to api.alpharoute.app.

Treat the session file as a password: it contains the refresh token in plaintext JSON and can provide continued access to account data, home stop locations, and live bus GPS. Keep it out of synced folders and unencrypted backups.

Tools and capabilities

Read tools include:

  • Listing students and retrieving an individual student’s school and stops
  • Listing assigned stops with times and locations
  • Checking live bus location for morning or afternoon routes
  • Reading arrival and departure notifications
  • Listing transportation requests and tracking numbers
  • Getting a PDF report link
  • Listing schools and grades
  • Reading profile, account, and settings data
  • Checking session configuration and API health

Write tools set a student’s walk-zone radius or notification preferences. Both are confirmation-gated. The server intentionally does not expose transportation-request submission.

Limitations and notes

The server operates only against the AlphaPortal account represented by the captured refresh token. A token copy can remain usable until expiry, and deleting the local session file does not invalidate copies elsewhere. The transportation-request submission endpoints are not available, so existing requests can be read but new requests cannot be sent through these tools.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Alphaportal MCP

alphaportal-mcp is an MCP server that connects Claude and other MCP clients to the AlphaPortal school-bus transportation portal through the AlphaRoute API. Its main tools retrieve students, stops, live AM or PM bus locations, notifications, requests, reports, account data, and settings, with confirmation-gated tools for changing preferences.

Install dependencies, build the project, and run `node dist/index.js`. Use `npm install`, `npm run build`, then configure the resulting process in your MCP host. Headless or hosted deployments should also provide `ALPHAPORTAL_REFRESH_TOKEN` as an environment secret.

Set `ALPHAPORTAL_REFRESH_TOKEN` directly in the server environment. Capture the value from a signed-in AlphaPortal tab with `JSON.parse(localStorage.user).User.RefreshToken`. This is the required authentication path for hosted deployments that cannot use the ContextMint Bridge browser extension.

Yes, it can change per-student notification preferences and walk-zone radius, but both operations require confirmation. Depending on the MCP client and confirmation settings, the server either presents a prompt or returns a preview and temporary token before applying the change.

Yes, it supports Claude Desktop through its MCP configuration. On clients that cannot display confirmation prompts, writes follow `MCP_CONFIRM_MODE`; the default requires a preview and user approval before a second call can apply the change.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewAlphaportal MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/alphaportal-mcp?style=directory)](https://allmcps.com/mcp/alphaportal-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/alphaportal-mcp"><img src="https://allmcps.com/api/badge/alphaportal-mcp?style=directory" alt="Alphaportal MCP on AllMCPs" /></a>