"use strict";
/*
 * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
 */
Object.defineProperty(exports, "__esModule", { value: true });
exports.createMCPServer = createMCPServer;
const mcp_js_1 = require("@modelcontextprotocol/sdk/server/mcp.js");
const core_js_1 = require("../core.js");
const prompts_js_1 = require("./prompts.js");
const resources_js_1 = require("./resources.js");
const tools_js_1 = require("./tools.js");
const lessonPlansGetStudentCourseProgress_js_1 = require("./tools/lessonPlansGetStudentCourseProgress.js");
const lessonPlansGetSyllabus_js_1 = require("./tools/lessonPlansGetSyllabus.js");
const lessonPlansUpdateStudentResponse_js_1 = require("./tools/lessonPlansUpdateStudentResponse.js");
const lessonsCreateAttempt_js_1 = require("./tools/lessonsCreateAttempt.js");
const lessonsFinalizeResponse_js_1 = require("./tools/lessonsFinalizeResponse.js");
const lessonsGetAttempts_js_1 = require("./tools/lessonsGetAttempts.js");
const lessonsGetNextQuestion_js_1 = require("./tools/lessonsGetNextQuestion.js");
const lessonsGetProgress_js_1 = require("./tools/lessonsGetProgress.js");
const lessonsResetAttempt_js_1 = require("./tools/lessonsResetAttempt.js");
const lessonsUpdateStudentResponse_js_1 = require("./tools/lessonsUpdateStudentResponse.js");
const powerPathCourseMasteryCreateExternalPlacementTest_js_1 = require("./tools/powerPathCourseMasteryCreateExternalPlacementTest.js");
const powerPathCourseMasteryCreateExternalTestOut_js_1 = require("./tools/powerPathCourseMasteryCreateExternalTestOut.js");
const powerPathCourseMasteryImportExternalTestAssignmentResults_js_1 = require("./tools/powerPathCourseMasteryImportExternalTestAssignmentResults.js");
const powerPathCourseMasteryMakeExternalTestAssignment_js_1 = require("./tools/powerPathCourseMasteryMakeExternalTestAssignment.js");
const powerPathCourseMasteryTestOut_js_1 = require("./tools/powerPathCourseMasteryTestOut.js");
const powerPathLessonPlansAttachComponent_js_1 = require("./tools/powerPathLessonPlansAttachComponent.js");
const powerPathLessonPlansAttachResource_js_1 = require("./tools/powerPathLessonPlansAttachResource.js");
const powerPathLessonPlansCreateLessonPlan_js_1 = require("./tools/powerPathLessonPlansCreateLessonPlan.js");
const powerPathLessonPlansDeleteLessonPlan_js_1 = require("./tools/powerPathLessonPlansDeleteLessonPlan.js");
const powerPathLessonPlansDeleteLessonPlanItem_js_1 = require("./tools/powerPathLessonPlansDeleteLessonPlanItem.js");
const powerPathLessonPlansGetTree_js_1 = require("./tools/powerPathLessonPlansGetTree.js");
const powerPathLessonPlansUpdateLessonPlanItem_js_1 = require("./tools/powerPathLessonPlansUpdateLessonPlanItem.js");
const powerPathPlacementGetAllPlacementTests_js_1 = require("./tools/powerPathPlacementGetAllPlacementTests.js");
const powerPathPlacementGetCurrentLevel_js_1 = require("./tools/powerPathPlacementGetCurrentLevel.js");
const powerPathPlacementGetNextPlacementTest_js_1 = require("./tools/powerPathPlacementGetNextPlacementTest.js");
const powerPathPlacementGetSubjectProgress_js_1 = require("./tools/powerPathPlacementGetSubjectProgress.js");
function createMCPServer(deps) {
    const server = new mcp_js_1.McpServer({
        name: "PowerPath",
        version: "0.3.1",
    });
    const client = new core_js_1.PowerPathCore({
        security: deps.security,
        serverURL: deps.serverURL,
        serverIdx: deps.serverIdx,
    });
    const scopes = new Set(deps.scopes);
    const allowedTools = deps.allowedTools && new Set(deps.allowedTools);
    const tool = (0, tools_js_1.createRegisterTool)(deps.logger, server, client, scopes, allowedTools);
    const resource = (0, resources_js_1.createRegisterResource)(deps.logger, server, client, scopes);
    const resourceTemplate = (0, resources_js_1.createRegisterResourceTemplate)(deps.logger, server, client, scopes);
    const prompt = (0, prompts_js_1.createRegisterPrompt)(deps.logger, server, client, scopes);
    const register = { tool, resource, resourceTemplate, prompt };
    void register; // suppress unused warnings
    tool(powerPathPlacementGetAllPlacementTests_js_1.tool$powerPathPlacementGetAllPlacementTests);
    tool(powerPathPlacementGetCurrentLevel_js_1.tool$powerPathPlacementGetCurrentLevel);
    tool(powerPathPlacementGetNextPlacementTest_js_1.tool$powerPathPlacementGetNextPlacementTest);
    tool(powerPathPlacementGetSubjectProgress_js_1.tool$powerPathPlacementGetSubjectProgress);
    tool(powerPathCourseMasteryCreateExternalPlacementTest_js_1.tool$powerPathCourseMasteryCreateExternalPlacementTest);
    tool(powerPathCourseMasteryCreateExternalTestOut_js_1.tool$powerPathCourseMasteryCreateExternalTestOut);
    tool(powerPathCourseMasteryImportExternalTestAssignmentResults_js_1.tool$powerPathCourseMasteryImportExternalTestAssignmentResults);
    tool(powerPathCourseMasteryMakeExternalTestAssignment_js_1.tool$powerPathCourseMasteryMakeExternalTestAssignment);
    tool(powerPathCourseMasteryTestOut_js_1.tool$powerPathCourseMasteryTestOut);
    tool(powerPathLessonPlansCreateLessonPlan_js_1.tool$powerPathLessonPlansCreateLessonPlan);
    tool(powerPathLessonPlansGetTree_js_1.tool$powerPathLessonPlansGetTree);
    tool(powerPathLessonPlansDeleteLessonPlan_js_1.tool$powerPathLessonPlansDeleteLessonPlan);
    tool(powerPathLessonPlansAttachComponent_js_1.tool$powerPathLessonPlansAttachComponent);
    tool(powerPathLessonPlansAttachResource_js_1.tool$powerPathLessonPlansAttachResource);
    tool(powerPathLessonPlansUpdateLessonPlanItem_js_1.tool$powerPathLessonPlansUpdateLessonPlanItem);
    tool(powerPathLessonPlansDeleteLessonPlanItem_js_1.tool$powerPathLessonPlansDeleteLessonPlanItem);
    tool(lessonPlansGetStudentCourseProgress_js_1.tool$lessonPlansGetStudentCourseProgress);
    tool(lessonPlansUpdateStudentResponse_js_1.tool$lessonPlansUpdateStudentResponse);
    tool(lessonPlansGetSyllabus_js_1.tool$lessonPlansGetSyllabus);
    tool(lessonsCreateAttempt_js_1.tool$lessonsCreateAttempt);
    tool(lessonsFinalizeResponse_js_1.tool$lessonsFinalizeResponse);
    tool(lessonsGetProgress_js_1.tool$lessonsGetProgress);
    tool(lessonsGetAttempts_js_1.tool$lessonsGetAttempts);
    tool(lessonsGetNextQuestion_js_1.tool$lessonsGetNextQuestion);
    tool(lessonsResetAttempt_js_1.tool$lessonsResetAttempt);
    tool(lessonsUpdateStudentResponse_js_1.tool$lessonsUpdateStudentResponse);
    return server;
}
//# sourceMappingURL=server.js.map