get_course_features
Retrieve course feature details from the Manalink MCP Server to map labels and IDs for tutoring search criteria.
Instructions
コース特徴マスタを取得します。このマスタの取得を通じて、特徴のラベルとIDの対応を取得します。
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Input Schema (JSON Schema)
{
"properties": {},
"type": "object"
}
Implementation Reference
- src/server.ts:33-56 (handler)Full tool handler implementation including registration: calls fetchCourseFeatures and returns JSON response or error.server.tool( "get_course_features", "コース特徴マスタを取得します。このマスタの取得を通じて、特徴のラベルとIDの対応を取得します。", async () => { try { const features = await fetchCourseFeatures(); return { content: [{ type: "text" as const, text: JSON.stringify(features, null, 2) }] }; } catch (error) { console.error('特徴マスタの取得に失敗しました:', error); return { content: [{ type: "text" as const, text: `エラーが発生しました: ${error instanceof Error ? error.message : '不明なエラー'}` }], isError: true }; } } );
- src/utils/api.ts:67-71 (schema)TypeScript interface defining the structure of course features returned by the tool.export interface CourseFeature { id: number; name: string; description?: string; }
- src/utils/api.ts:100-102 (helper)Async helper function that provides the course features data from hardcoded constant.export async function fetchCourseFeatures(): Promise<CourseFeature[]> { return COURSE_FEATURES; }
- src/utils/api.ts:77-95 (helper)Hardcoded array of course features master data used by fetchCourseFeatures.const COURSE_FEATURES: CourseFeature[] = [ { id: 1, name: "中学受験" }, { id: 2, name: "高校受験" }, { id: 3, name: "TOEIC" }, { id: 5, name: "大学受験" }, { id: 6, name: "発達障害" }, { id: 8, name: "英検" }, { id: 9, name: "定期テスト" }, { id: 12, name: "共通テスト" }, { id: 21, name: "中高一貫" }, { id: 25, name: "看護" }, { id: 27, name: "帰国子女" }, { id: 32, name: "海外子女" }, { id: 52, name: "医学部" }, { id: 66, name: "不登校" }, { id: 67, name: "平均点以下" }, { id: 71, name: "公務員試験" }, { id: 78, name: "小論文" } ];