---
name: iblai-connect-seesaw
description: "Read Seesaw data through the integration path Seesaw Learning supports and expose it to an ibl.ai agent as an MCP tool. Use when the user asks an agent to work with Seesaw data, or to set up a Seesaw MCP connection on ibl.ai."
metadata:
  kind: guide
---

# Seesaw connector for AI agents

> A starting point maintained on ibl.ai at https://ibl.ai/developer/connectors/seesaw — not part of the iblai/vibe repository. Checked against Seesaw Learning's documentation on October 20, 2026; test it against your own Seesaw setup before you rely on it.

Seesaw is an elementary learning platform where students post work (photos, video, drawings, notes) to a journal, teachers assign activities, and families see their child's work. It holds classes, rosters and student work.

## Auth & conventions

- **API:** No public API documented; integration via Clever, ClassLink, CSV, SSO and LTI (Mixed). No public developer API was found. Rosters reach Seesaw from Clever or ClassLink (district product) or CSV import; sign-in uses Google, Microsoft or Okta SSO; Seesaw embeds in Canvas, Schoology and D2L through LTI.
- **Access:** No public API. Seesaw says it does not integrate directly with any SIS; districts automate rostering through Clever or ClassLink. To move data in, roster through those platforms or import CSV files.
- **Auth:** SSO (Google, Microsoft, Okta); Rostering connection via Clever or ClassLink. No API credentials are issued to third parties. Users sign in via Google, Microsoft or Okta SSO; rostering runs through the district's Clever or ClassLink connection.
- Keep Seesaw credentials in environment variables or the ibl.ai credential store. Never print a token in chat and never commit one to a file.
- Destructive or outward-facing calls are marked **Confirm with the user first** — do.

## Reads

- **Class rosters (via Clever/ClassLink)** — Classes, teachers and students come from the district's Clever or ClassLink sync; read them at the source, not from Seesaw.
- **CSV roster imports** — Schools without Clever or ClassLink create classes by CSV roster import.
- **LMS launches (LTI)** — Seesaw content opens inside Canvas, Schoology and D2L via LTI admin setups.

## Writes

- None. This skill only reads Seesaw data.

## Expose it to an ibl.ai agent (MCP)

Seesaw Learning did not publish an MCP server of its own when this skill was checked. Host a small MCP server that wraps the calls above, then register it below.

First install the ibl.ai platform skills and connect your organization (writes `IBLAI_ORG`, `IBLAI_USERNAME` and `IBLAI_API_KEY` to `.env`):

```bash
npx skills add iblai/vibe --all
# then, in your coding agent:
/iblai-api-login
```

Every call below sends `Authorization: Api-Token $IBLAI_API_KEY`.

1. **Register the server** — `POST https://api.iblai.app/dm/api/ai-mentor/orgs/$IBLAI_ORG/users/$IBLAI_USERNAME/mcp-servers/` with `name`, `url`, `transport` (`sse` | `websocket` | `streamable_http`) and `auth_type` (`none` | `token` | `oauth2`). Capture the returned `id`.
   - For an API key or service credential use `auth_type=token` with `auth_scope=platform` for one key across the organization, or scope it to a single agent for one key per agent.
2. **Create the connection** — `POST https://api.iblai.app/dm/api/ai-mentor/orgs/$IBLAI_ORG/users/$IBLAI_USERNAME/mcp-server-connections/` with `server`, `scope` (`platform` | `mentor` | `user`), `auth_type`, and either `credentials` + `authorization_scheme` or a `connected_service` id for OAuth. Credentials are masked on read; never send a masked value back.
3. **Enable it on the agent** — `GET https://api.iblai.app/dm/api/ai-mentor/orgs/$IBLAI_ORG/users/$IBLAI_USERNAME/mentors/{agent_id}/settings/`, add `mcp-tool` to `tool_slugs` and the server id to `mcp_servers`, then `PATCH` the full lists back. They are replaced, not merged.

Full reference: https://ibl.ai/developer/platform/mcp/mcp-connections and the `/iblai-api-agent-mcp` skill.

## Example prompts

- "Check whether the Seesaw classes for 1st grade match our Clever sections this week"
- "List the students in Clever who are missing from our Seesaw class rosters"
- "Build a Seesaw CSV roster import file from this class list"
- "Explain how to set up Seesaw inside our Schoology courses"

## Guardrails

- Student education records protected by FERPA, from young children (COPPA applies to under-13 users): student work samples, photos, voice and video recordings, and family contacts.
- Request the narrowest Seesaw scopes or role the task needs, and prefer a read-only credential for agents that only answer questions.
- Return the fields the user asked for, not whole records; do not paste personal data into chat that the user did not request.
- Before any write, show the user exactly what will change and wait for a yes.
- Page through large result sets and back off on rate-limit responses instead of retrying in a loop.

## References

- Seesaw technology integration: https://seesaw.com/features/technology-integration/
- Seesaw integrations: https://seesaw.com/resources/integrations/
- Does Seesaw integrate with my SIS?: https://help.seesaw.me/hc/en-us/articles/24403355868173-Does-Seesaw-integrate-with-my-SIS
- This connector on ibl.ai: https://ibl.ai/developer/connectors/seesaw
- ibl.ai MCP server connections: https://ibl.ai/developer/platform/mcp/mcp-connections
