Skip to content

Latest commit

 

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PAUL Cursor Plugin

Installable bundle for colleagues using Cursor Desktop or the Agents window. Includes the production MCP server config and the nine PAUL workflow skills for employer and instructor authoring.

Do you need this plugin?

No — but it saves you steps. The PAUL MCP servers already expose their guided workflows as MCP prompts (instructor_onboarding, instructor_curriculum_workflow, and friends live on paul-concept), so connecting the servers from Settings → MCP Access is enough to do the whole job in Cursor.

What the plugin adds:

MCP config only With this plugin
PAUL tools
Guided workflows (MCP prompts)
Step-scoped authoring skills with reference docs
Setup effort Per-server config One install

What's included

MCP servers (production)

ID Purpose
paul-canvas Canvas LMS — courses, modules, external pages
paul-concept Concept lessons and sprint tutorials
paul-skills Employer competency profiles
paul-learner Learner adaptive paths and evidence

All four use mcp-remote against PAUL production endpoints (mcp-*.conceptlearning.app) with OAuth 2.1 via paul.conceptlearning.app. No shared API tokens — each user authorizes their own account, and role-gating follows the active role they pick on the consent screen.

Why the mcp-remote bridge? Cursor can also reach these servers natively with url + auth and no npx process. The bundle ships the bridge because it also works for background/cloud agents and for non-Cursor clients. To go native, see the Cursor tab on MCP Access.

Agent skills

Employer workflow

Skill Use when
employer-profile-author Create or refine a draft competency profile from a role title or JD
employer-concept-gap-resolver Fill missing PAUL concepts that block profile authoring
employer-profile-publisher Review readiness and publish an approved profile

Instructor workflow

Skill Use when
instructor-onboarding Start here as a new instructor — job description all the way to a published course
instructor-curriculum-workflow Start here with a profile already published — orchestrates the four steps below in order
instructor-curriculum-scoper Narrow a broad profile into one time-bounded course (e.g. 16 weeks / 7 sprints)
instructor-curriculum-author Draft the sprint-by-sprint tutorial pathway
instructor-content-gap-resolver Generate missing tutorials or concept lessons
instructor-curriculum-publisher Review readiness and publish curriculum artifacts

Invoke skills in Agent chat with /skill-name, or just describe the goal and let the agent pick — each skill's description is written for exactly that.

Prerequisites

  1. PAUL account — invitation-only beta. Request access at paul.conceptlearning.app or email tanderson@edtechforlearning.org. Without an account this plugin does nothing: every tool call is OAuth-gated.
  2. Node.js 18+mcp-remote runs via npx.
  3. Cursor — recent build with MCP and skills support.

Install

Option 1 — Marketplace (recommended)

Open Customize in the Cursor sidebar, search for PAUL Learning Platform, and install. Cursor picks up both the MCP servers and the skills.

For Cursor Teams/Enterprise, add this repository as a team marketplace source in the team dashboard instead — that also lets you set the plugin to Default On or Required so new instructors get it without asking.

Option 2 — Local plugin (from a clone)

Clone this repository, then symlink it into Cursor's local plugins directory:

git clone https://github.com/EdTechForLearning/paul-cursor-plugin.git
mkdir -p ~/.cursor/plugins/local
ln -sf "$(pwd)/paul-cursor-plugin" ~/.cursor/plugins/local/paul-cursor-plugin

Then restart Cursor (or Developer: Reload Window), confirm PAUL Learning Platform under Settings → Plugins, and enable the four paul-* servers under Settings → Tools & MCP.

Option 3 — Manual, no plugin

MCP config — copy the personalized snippet from Settings → MCP Access (Cursor tab) into ~/.cursor/mcp.json, or use the one-click + paul-… buttons there. The live snippet is better than this repo's mcp.json because it lists only the servers your roles actually unlock.

Skills (optional) — copy the skill folders into ~/.cursor/skills/:

cp -R skills/* ~/.cursor/skills/

Restart Cursor after either step.

First-time authorization

The first time an agent calls a PAUL MCP tool:

  1. Your browser opens to PAUL.
  2. Log in if needed.
  3. On the consent screen, choose your active role (Learner, Instructor, or Employer).
  4. Click Approve and connect.

Pick the role that matches what you're doing: Instructor for concept/canvas, Employer for skills, Learner for learner. A 403 insufficient_role later means you authorized as the wrong role — revoke and reconnect. Admins can reach all four servers with a single approval as Admin.

Revoke sessions anytime at Settings → MCP Access.

Smoke tests

MCP connectivity

Use the PAUL Learner MCP server to list job profiles I can target.

Employer skill

/employer-profile-author

Create a job profile for an AI Product Engineer.

Instructor skill

/instructor-onboarding

I have a job description and want to build a course from it.

Where to go next

A note on precedence

If you have a project-local .cursor/mcp.json that defines the same paul-* server names as this plugin, the project config wins. To confirm which one Cursor is actually using, check Output → MCP Logs for the hostname, or temporarily rename the project file and reload.

Maintenance

This bundle is generated from the PAUL workspace, where the agent skills have their canonical home. The copies in skills/ are real files rather than symlinks so the plugin stays self-contained once installed, and a sync check enforces that they stay byte-identical to their sources on every change.

Please don't send skill edits here — they'd be overwritten on the next sync. Open an issue instead, or email tanderson@edtechforlearning.org.

License

Apache License 2.0 — see LICENSE and NOTICE.

The license covers this plugin bundle only: the manifest, mcp.json, and the agent skills. The PAUL MCP services it connects to (mcp-*.conceptlearning.app) are a separate, closed work — mcp.json contains network addresses, not code, and nothing here grants rights to the server implementations. Apache 2.0 is permissive and carries no copyleft obligation, so publishing this bundle imposes no disclosure requirement on any other part of the PAUL workspace.

The plugin is inert without a PAUL account: every tool call is OAuth-gated and role-checked server-side. The client_id in mcp.json is a public OAuth client with an empty secret by design — PKCE, not secrecy, is what protects the flow.

Troubleshooting

Symptom Fix
MCP servers missing after install Restart Cursor; check Settings → Tools & MCP
Browser doesn't open on first call Ensure npx mcp-remote works in a terminal; check MCP Logs in the Output panel
401 / unauthorized Re-authorize via a new agent prompt, or revoke and reconnect at MCP Access
403 insufficient_role You approved as the wrong active role — revoke that session and reconnect
EADDRINUSE on a callback port A stale mcp-remote process; or switch Cursor to the native url + auth config, which doesn't use per-server callback ports
Skills not found Confirm folders are under ~/.cursor/skills/ or the plugin skills/ directory; try /employer-profile-author explicitly
Unsure if MCP comes from plugin or project Check Output → MCP Logs for the hostname, or temporarily rename .cursor/mcp.json and reload
Plugin missing in Settings Verify the symlink target: readlink ~/.cursor/plugins/local/paul-cursor-plugin
Canvas tools fail Connect your Canvas token at Settings → Canvas

Layout

paul-cursor-plugin/
├── .cursor-plugin/
│   └── plugin.json       # Cursor plugin manifest
├── assets/
│   └── logo.svg          # marketplace icon
├── mcp.json              # Production MCP server config (4 servers)
├── skills/               # Nine PAUL workflow skills (+ references)
├── LICENSE               # Apache License 2.0
├── NOTICE                # Attribution + scope of the license
└── README.md             # This file

About

Cursor plugin for the PAUL learning platform — MCP servers and employer/instructor agent skills.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors