THE CONTINENTAL SYLLABUS (2025–2026)

(schema-constrained reading lists)
Doc. ref: HK-SYLLABUS-2025
Category
Tools & Infrastructure
Medium
React, Vite, Gemini structured output, OpenAlex via MCP
Venue
syllabus.hnsk.site
State
live
Tags
pedagogy, citation, mcp

A free-text field takes any philosophical prompt — a term, a phrase, a full question — and returns a sequenced reading list through twentieth-century continental philosophy. Citations point to specific chapters, sections, page ranges, or aphorisms, and each reading is tagged Introductory, Intermediate, or Advanced.

Generation and follow-up are separate functions: the reading list comes from one schema-constrained call, and follow-ups query OpenAlex through an MCP tool.
Generation and follow-up are separate functions: the reading list comes from one schema-constrained call, and follow-ups query OpenAlex through an MCP tool.

The constraint is enforced at two levels. A Gemini responseSchema requires the output to be JSON matching a fixed shape: a topic, a short overview, and an ordered list of modules, each containing readings with author, work, specificLocation, rationale, and a difficulty field restricted to a three-value enum. The API enforces the schema at generation time; citation granularity is carried by the prompt and the specificLocation field.

Each reading offers two follow-ups, a deep dive and a paper search, that run through a small MCP layer exposing one live tool, query_academic_repository. It queries the OpenAlex scholarly index over HTTP and returns up to three works with title, author, year, DOI, and citation count, and the model builds its answer from those results. Every tool call and response is logged and rendered in an on-screen protocol viewer.

In production both AI paths proxy through Netlify Functions, rate-limited at the edge: 10 requests per 60 seconds for generation and 5 for MCP analysis, where each request fans out into several model calls. Every request is stateless.

Last updated: 2026.09.26 10:11:38 UTChnshokrian@gmail.com