Gapwise AI & MCP
Gapwise AI is the remote Model Context Protocol (MCP) integration boundary between an AI client and Gapwise. It exposes stateless public campus intelligence plus narrowly permissioned private student context without giving a client unrestricted account access.
The client supplies the model and reasoning layer. Gapwise supplies the canonical facts, permissions, and bounded actions.
Start here
Section titled “Start here”| Goal | Guide |
|---|---|
| Connect a remote MCP client | Connect an AI client |
| Understand OAuth and explicit delegation | Authentication & delegation |
| See every currently exposed tool | Tools |
| Understand what AI may write | Permissions & writes |
| Review the data boundary | Privacy & security |
| Check ChatGPT / Claude / other client status | Client compatibility |
| See realistic requests | Examples |
| Diagnose unsupported or failed flows | Support & troubleshooting |
Canonical service endpoints
Section titled “Canonical service endpoints”Remote MCP resource:
https://ai.gapwise.ca/api/mcpOAuth protected-resource metadata for private tools:
https://ai.gapwise.ca/.well-known/oauth-protected-resourceService identity:
https://ai.gapwise.caImplementation source: github.com/GapwiseHQ/ai
Current live surface
Section titled “Current live surface”The release surface registers 25 tools:
- twelve stateless public campus-intelligence reads (including multi-university discovery, buildings, and routing);
- twelve OAuth-protected private schedule/status/planning reads; and
- one bounded OAuth-protected private write.
Important boundaries:
- Public campus tools do not read a Gapwise account, private timetable, friends, or precise live location.
- Academic timetable meetings are read-only through AI.
- The sole current write updates delegated gap preferences with the corresponding granted permission; Personal Item tools are retired.
- Writes are revision-aware; stale state is not silently overwritten.
- Write success means Gapwise accepted a typed queued action. It does not mean the AI client directly rewrote canonical timetable state.
API or AI & MCP?
Section titled “API or AI & MCP?”Use the public API / SDKs when a conventional application integration needs campus buildings, places, deterministic routes, or gap assessment across supported universities without an MCP client.
Use Gapwise AI & MCP when an AI client should access the same public campus intelligence and/or explicitly delegated Gapwise student context through one tool-oriented protocol surface.
Do not use public campus tools as a way to infer private schedule state. A client can combine private availability with public routing only after private context was independently authorized and returned by a private tool.
Two different responsibilities
Section titled “Two different responsibilities”Gapwise computes facts. Schedule state, gap calculation, availability, campus places, and routing come from Gapwise’s deterministic systems.
The AI client reasons about intent. A model can choose which available tool to call and explain the result, but it must not present an invented schedule, route, leave-by time, or availability window as a Gapwise result.
Gapwise remains the source of truth for schedules and private state.
Delegation and safety model
Section titled “Delegation and safety model”- Public campus intelligence is stateless and does not require private delegation.
- Private access starts only after the student explicitly delegates authority.
- The client receives tool results, not Gapwise encryption keys or unrestricted account access.
- Delegated state excludes the raw ACORN
.icsfile, friend data, precise/live location, account credentials, and Gapwise’s primary private-state encryption keys. - Any preference write is bounded by its granted permission.
- Revocation removes the delegated authority. A later authorization is a new grant, not silent restoration of the old one.
- A legitimate integration never needs the student’s Gapwise password, a private encryption key, or a copied browser-session token.
Client support status
Section titled “Client support status”The MCP service is live and public-source, but protocol availability is not the same as verified named-client support. Broad ChatGPT, Claude, and other external-client compatibility remains gated on current production OAuth/read/write/revoke validation.
Until those matrices are complete, these docs deliberately avoid claiming a named client is fully verified. See Client compatibility for the current status and validation expectations.
Ready to try the protocol flow? Connect an AI client →