{"apiVersion":"v1","directorySlug":"mpd400-mcp-31505ece38","title":"MPD-400","description":"Connect Claude, ChatGPT, Grok or Cursor to the live MPD-400 syllabus and core concepts. Northwestern University, Master of Product Design and Development Management.","pageUrl":"https://www.mcpbundles.com/skills/mpd400-mcp-31505ece38","connectPath":"importable","connectAction":"import_server","catalogListing":false,"bundleSlug":null,"listingKind":"remote_mcp","kind":"provider","transportUrl":"https://mpd400.com/api/mcp","hostedMcpUrl":null,"toolCount":14,"toolInventoryStatus":"observed","refreshedAt":"2026-11-03T13:26:00.516172+00:00","registryName":"com.mpd400/mpd400-mcp-31505ece38","registryVersion":"2026.11.3","registryEligible":true,"tools":[{"name":"get_syllabus","description":"Return the complete, current MPD-400 syllabus as Markdown. It is long; prefer get_syllabus_section for one topic and get_schedule for dates and assignments.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{}},"title":"Get syllabus","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_syllabus","displayName":"Get syllabus"},{"name":"list_concepts","description":"List the section headings of the MPD-400 Core Concepts doc (\"The Rabbit Hole\"). Call this first to see what the course covers, then get_concept for one section.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{}},"title":"List core concepts","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"list_concepts","displayName":"List core concepts"},{"name":"get_concept","description":"Return one section of the Core Concepts doc (\"The Rabbit Hole\") by heading. Matching is forgiving (case-insensitive, partial, abbreviations). Use list_concepts to see valid headings.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["name"],"properties":{"name":{"type":"string","minLength":1}}},"title":"Get a concept","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_concept","displayName":"Get a concept"},{"name":"get_syllabus_section","description":"Return one section of the MPD-400 syllabus by heading, e.g. 'Grading', 'Course Organization' (attendance and make-up work), 'Required Course Materials', 'Student Expectations', 'Academic Integrity', 'Accessibility'. Matching is forgiving (case-insensitive, partial).","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["name"],"properties":{"name":{"type":"string","minLength":1}}},"title":"Get a syllabus section","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_syllabus_section","displayName":"Get a syllabus section"},{"name":"get_schedule","description":"Return today's date and the MPD-400 class schedule: each session's date and time, topics and assignment, with the next upcoming session marked. Use for any question about dates, what is due, what is next, or what a given class covers. Pass a module number for that session's full topic descriptions.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"module":{"type":"integer","maximum":9007199254740991,"minimum":1}}},"title":"Get the class schedule","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_schedule","displayName":"Get the class schedule"},{"name":"get_module","description":"Return one class session (module): date, each topic's description, the assignment, and for every topic the exact Core Concepts heading to pass to get_concept. Topics the concepts doc has no section for are flagged. Use to prepare for a class or to find the reading behind a session. Omit the module number for the next upcoming session.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"module":{"type":"integer","maximum":9007199254740991,"minimum":1}}},"title":"Get a module with its concepts","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_module","displayName":"Get a module with its concepts"},{"name":"get_assignment","description":"Return one module's assignment prompt together with the full Core Concepts text of every framework the prompt names (e.g. JTBD, MSCW and Data Radar, Backcasting, RICE, RFM). Use for any 'what do I have to do' or 'help me with the assignment' question. Omit the module number for the assignment from the most recent class (or the first class, before the course starts).","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"module":{"type":"integer","maximum":9007199254740991,"minimum":1}}},"title":"Get an assignment with its framework","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_assignment","displayName":"Get an assignment with its framework"},{"name":"get_final_project","description":"Return everything the course materials say about the class project (40% of the grade): the required deliverables from the syllabus, the weekly assignments that serve as its milestones, and the course's guide to writing a PRD. Use for questions about the final project, pitch deck, PRD or prototype.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{}},"title":"Get the class project brief","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_final_project","displayName":"Get the class project brief"},{"name":"get_lecture_slides","description":"Return the text of one class session's lecture slide deck, one section per slide with its number and title. Use to review what was covered in class, find which slide said something, or see how the professors presented a topic. Slide decks exist for this year's class: modules 1, 2, 3, 4; the 2025 class: modules 1, 2, 3, 4, 5. A module without this year's deck is served from the most recent past class, and the result says so. Pass year (2025) to ask for a past class's deck outright. Omit the modul","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"year":{"type":"integer","maximum":9007199254740991,"minimum":-9007199254740991},"module":{"type":"integer","maximum":9007199254740991,"minimum":1},"slides":{"type":"string","pattern":"^\\s*\\d+\\s*(?:[-–]\\s*\\d+)?\\s*$"}}},"title":"Get lecture slides","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_lecture_slides","displayName":"Get lecture slides"},{"name":"get_lecture_transcript","description":"Return the transcript of one class session's lecture, divided into topics: what the professors said in class, the examples they gave, and the questions students asked. Omit topic for the module's table of contents; then pass topic as a heading from it (matching is forgiving), a number, a range like \"3-5\", or \"all\" for the whole transcript (long: roughly 17,000 to 33,000 words). This year's transcripts come with Zoom's summary of the session: pass topic \"summary\" for it. A module without this yea","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"year":{"type":"integer","maximum":9007199254740991,"minimum":-9007199254740991},"topic":{"type":"string","minLength":1},"module":{"type":"integer","maximum":9007199254740991,"minimum":1}}},"title":"Get a lecture transcript","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_lecture_transcript","displayName":"Get a lecture transcript"},{"name":"get_announcements","description":"Return the course announcements the professors have posted to the class, newest first with their posting dates relative to today, followed by every assignment's due date. Use for anything the professors have told the class outside the syllabus: team and company assignments, reminders, required reading, logistics, and what is due when. Raise limit to read earlier posts in full.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"limit":{"type":"integer","default":5,"maximum":50,"minimum":1}}},"title":"Get course announcements","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_announcements","displayName":"Get course announcements"},{"name":"search_course_materials","description":"Keyword search across the syllabus, the Core Concepts doc, the course announcements, the lecture transcripts and the lecture slides. Returns the best-matching sections with snippets; follow up with get_concept, get_syllabus_section, get_announcements, get_lecture_transcript or get_lecture_slides for full text.","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["query"],"properties":{"limit":{"type":"integer","default":8,"maximum":20,"minimum":1},"query":{"type":"string","minLength":2}}},"title":"Search course materials","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"search_course_materials","displayName":"Search course materials"},{"name":"ask_will","description":"Answer a question the way Will Hubbard, one of the two MPD-400 professors, would. Use when a student asks what Will would say, wants Will's take or advice, or addresses Will directly. Returns the passages of the lecture transcripts that bear on the question (the ones the wording shows Will speaking marked as such), a sample of Will's voice, the course's definition of the concept involved, and instructions for answering as Will honestly: as an AI impression built from the lectures, in the first p","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["question"],"properties":{"question":{"type":"string","maxLength":2000,"minLength":2}}},"title":"Ask Will","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"ask_will","displayName":"Ask Will"},{"name":"ask_marty","description":"Answer a question the way Marty Ringlein, one of the two MPD-400 professors, would. Use when a student asks what Marty would say, wants Marty's take or advice, or addresses Marty directly. Returns the passages of the lecture transcripts that bear on the question (the ones the wording shows Marty speaking marked as such), a sample of Marty's voice, the course's definition of the concept involved, and instructions for answering as Marty honestly: as an AI impression built from the lectures, in the","inputSchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["question"],"properties":{"question":{"type":"string","maxLength":2000,"minLength":2}}},"title":"Ask Marty","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"ask_marty","displayName":"Ask Marty"}],"toolSource":"directory_preview","agentAction":"both","installLinks":[{"id":"cursor","label":"Cursor","href":"cursor://anysphere.cursor-deeplink/mcp/install?name=MPD-400&config=eyJ1cmwiOiAiaHR0cHM6Ly9tcGQ0MDAuY29tL2FwaS9tY3AifQ%3D%3D"},{"id":"vscode","label":"VS Code","href":"vscode:mcp/install?%7B%22name%22%3A%22MPD-400%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fmpd400.com%2Fapi%2Fmcp%22%7D"},{"id":"vscode-insiders","label":"VS Code Insiders","href":"vscode-insiders:mcp/install?%7B%22name%22%3A%22MPD-400%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fmpd400.com%2Fapi%2Fmcp%22%7D"},{"id":"claude-web","label":"Claude.ai","href":"https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=MPD-400&connectorUrl=https%3A%2F%2Fmpd400.com%2Fapi%2Fmcp"},{"id":"codex","label":"Codex","copyText":"codex mcp add \"MPD-400\" --url \"https://mpd400.com/api/mcp\""},{"id":"chatgpt","label":"ChatGPT","href":"https://www.mcpbundles.com/docs/integrations/chatgpt"}],"catalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/mpd400-mcp-31505ece38","callUrl":"https://www.mcpbundles.com/api/directory/v1/servers/mpd400-mcp-31505ece38/tools/{tool}","mcpServerUrl":"https://mpd400.com/api/mcp","liveCatalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/mpd400-mcp-31505ece38?live=1"}