
Campus Copilot MCP
io.github.xiaojiou176-openPublished by GitHub account xiaojiou176-openv0.1.1Updated Oct 24, 2026
Read-only MCP server for the local Campus Copilot BFF and imported workspace snapshots.
Overview
A local, read-only MCP server that lets an assistant query the Campus Copilot BFF and view imported campus workspace snapshots.
- What you can do
- Check the local Campus Copilot backend's health and provider status, and ask it questions through the ask tool. View imported snapshots from Canvas, Gradescope, EdStem and MyUW. Export a snapshot artifact. Everything is read-only and works against local snapshots or a thin local BFF, not live campus sites.
- When to use it
- Use it when you already run Campus Copilot locally and want a minimal single-server entry point for Codex or Claude Code-style workflows that read imported course and campus snapshots. It is not for live site control, registration automation or uploading course files.
- Requirements
- A local process launched over stdio, distributed as a GitHub release-hosted .mcpb bundle; the README's install path builds it from the repo with pnpm. It expects the local Campus Copilot BFF or imported workspace snapshots to be available. No authentication, environment variables or headers are declared.
Installation
In SourceWeft
- Open Campus Copilot MCP in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
@campus-copilot/mcp-server
Read-only MCP server for the local CampusCopilot BFF and imported workspace snapshots.
This is the generic MCP entry point used by the integration examples under examples/integrations/.
Use this package when you want the smallest single-server entry point for Codex / Claude Code-style local MCP workflows.
If you are still choosing between the generic MCP server, site sidecars, CLI, or SDK surfaces, start with ../../examples/toolbox-chooser.md first.
Install
Current install status: repo-local public surface with a bundled JS server artifact. The official MCP Registry lane now uses a GitHub release-hosted .mcpb bundle for this server; discovery-page read-back is still a separate proof step.
From the repo root:
Shared public-preview proof loop from the repo root:
First command to try:
Registry-unblock progress in this repo:
- the published bin now targets a bundled
dist/bin.mjsartifact instead of a raw TypeScript entrypoint - the registry path now ships a release-hosted
.mcpbbundle instead of relying on a public npm scope that does not exist - preregistry metadata now lives beside the package in
server.jsonand the package-levelmcpName - the bundle manifest now lives in
mcpb.manifest.json - repo-side submit-ready fields now also live in
registry-submission.packet.json - the public distribution router lives in
../../DISTRIBUTION.md - registry discovery-page read-back is still a separate upstream step; this README does not imply the listing UI has already been re-read
Registry preflight proof from the repo root:
That preflight checks the late-stage alignment work that tends to drift:
package.json#mcpNameserver.jsonrelease asset URL / SHA / transport alignmentmcpb.manifest.jsonversion and entry-point alignment- the monorepo
subfolderpath - example config plus truthful install wording
- the repo-owned submission packet that the owner can reuse later
Related public distribution doc:
Pair It With The Container Path
The current Docker surface is intentionally the thin local BFF, not this stdio server itself.
That split is on purpose:
- the stdio MCP server stays the local read-only MCP entrypoint
- the Docker path gives the repo one truthful HTTP and health-check surface
- together they keep the product local-first instead of pretending CampusCopilot is a hosted MCP service
Build the containerized BFF from the repo root:
Use the container path when you need a local HTTP surface or container-friendly healthcheck. Keep using this package when you need the local stdio MCP server. If you want the shortest rule in one sentence: pair it with the local stdio MCP server, and treat the Docker route as a local HTTP helper, not a hosted API.
You can also launch the local container directly without Compose:
Current tools
campus_healthproviders_statusask_campus-copilotcanvas_snapshot_viewgradescope_snapshot_viewedstem_snapshot_viewmyuw_snapshot_viewexport_snapshot_artifact
Boundary
- local-first
- read-only
- stdio
- snapshot-first or thin-BFF-first
- not a hosted MCP service
- not a hosted API
- not a live-browser control plane
- not a campus-site mutation surface
- not a registration-automation surface
- not a raw course-file AI upload surface
Use the same academic safety contract here as everywhere else:
See also
../../examples/toolbox-chooser.md../../examples/integrations/README.md../../examples/integrations/codex-mcp.example.json../../examples/integrations/codex-mcp-shell.example.json../../examples/integrations/claude-code-mcp.example.json../../examples/integrations/claude-code-mcp-shell.example.json../../examples/openclaw-readonly.md
Source: packages/mcp-server/README.md at commit b28442e
Tools
0Version history
1- v0.1.1LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts