MCP Connector Documentation
Secure, role-filtered access to authorized student, staff, faculty, and administrator Platform tools.
Server endpoint
This is a remote Streamable HTTP MCP server. It uses OAuth authorization code with PKCE, dynamic or metadata-document client registration, and per-user consent. Do not append passwords, API keys, tokens, or other credentials to the URL.
Access model
The connector exposes at most six tools. Use platform.operations.search to find an authorized operation, platform.operations.describe to read its contract, then platform.operations.read or platform.operations.write to execute it. The session tools identify or disconnect your current connection. Available operations include:
- Students: own dashboard, enrollments, routine, sessions, notices, report cards, and feedback.
- Staff and faculty: permitted directory, academic catalog, enrollment, routine, lecture, exam, attendance, result, notice, and feedback tools.
- Administrators and managers: the same staff surface plus only those staff-attendance and leave tools granted by current Platform permissions.
Reads default to a compact view. Check omissions and request view=full for the same page before exhaustive analysis or write approval; follow business pagination separately. Previews and mutation responses remain complete. Refresh connector discovery after a server update.
Tool visibility is not authority by itself. Every call independently checks the access token, mcp.read or mcp.write, current account status, role, permissions, ownership, enrollment, roster, and domain state.
Connect a Claude custom connector
- Open Claude and go to Customize → Connectors. Team or Enterprise owners may instead add it from organization connector settings.
- Choose Add custom connector or Custom → Web.
- Enter
https://api.samimstutorial.com/mcp. Leave client credentials empty so Claude can use the server's supported OAuth registration. - Select Connect, sign in to Samim's Tutorial, review the requested scopes, and approve consent.
- Enable the connector for a conversation and begin with “Who am I in Samim's Tutorial?”
Connect ChatGPT manually
- Enable ChatGPT developer mode or the workspace setting that permits a custom MCP server.
- Add a new manual MCP connection and enter
https://api.samimstutorial.com/mcp. - Choose OAuth when prompted. ChatGPT discovers the protected resource and authorization server from the endpoint.
- Sign in, review
mcp.readandmcp.write, and approve only the access you intend to use. - Start with a read request before testing a confirmed mutation.
Write-tool safeguards
Tools that change Platform state require mcp.write. A mutation also requires:
confirm=trueafter the user reviews the proposed action;- a unique
idempotencyKeyfor safe retry behavior; - all role, permission, version, roster, enrollment, range, and state checks required by that operation.
Preview and dry-run tools do not mutate. Destructive tools such as update, cancellation, synchronization, attendance correction, lifecycle transition, and result publication should never be approved blindly.
Disconnect and revoke access
Disconnect the connector from Claude or ChatGPT to stop that client using the grant. You can also sign out of Platform and revoke active connector authorization. Disconnecting does not delete academic or administrative records already created through an authorized tool.
Troubleshooting
An unauthenticated GET /mcp or POST returning 401 Bearer is expected: the client must start OAuth. A redirect to an HTML login page is not expected.
- Tool missing: confirm the signed-in account has the required current role, permission, and OAuth scope.
- Tool unavailable: the requested record may be outside the user's ownership, enrollment, roster, or permitted state.
- Write rejected: verify
mcp.write, confirmation, idempotency key, preview hash where required, and current record version. - Connection stale: disconnect, revoke the old grant, reconnect, and approve the current scopes.
Support and policies
Review the Privacy Policy and connector terms before connecting. For help, use the contact page and include the tool name and approximate time—never a password, token, OTP, or full sensitive record.