Manalink MCP Server
Una implementación de servidor MCP para Manalink que permite a los asistentes de IA usar funciones como búsqueda de profesores.
Documentación
Servidor MCP de Manalink
Esta es la implementación del servidor Model Context Protocol (MCP) de Manalink. Permite que los asistentes de IA utilicen funciones como la búsqueda de profesores.
Funciones
Este servidor MCP proporciona las siguientes herramientas:
- Obtener maestro de materias: Obtiene el maestro de nombres de materias e IDs de materias
- Obtener maestro de características: Obtiene el maestro de características de cursos (obtenido dinámicamente desde la API)
- Obtener maestro de grados: Obtiene el maestro de nombres de grados e IDs
- Búsqueda de profesores (especificación detallada): Busca profesores con parámetros detallados como ID de materia, ID de grado, etc.
Requisitos previos
- Node.js 18+
- npm o yarn
Instalación
# リポジトリのクローン
git clone [リポジトリURL]
cd manalink-mcp
# 依存関係のインストール
npm install
Uso
Modo de desarrollo
npm run dev
Modo de producción
npm run build
npm start
Integración con Claude for Desktop
Para usarlo con Claude for Desktop, agregue la configuración al archivo claude_desktop_config.json.
- Abra el archivo de configuración de Claude for Desktop
code ~/Library/Application\ Support/Claude/claude_desktop_config.json
- Agregue la siguiente configuración
{
"mcpServers": {
"manalink": {
"command": "node",
"args": [
"/絶対パス/manalink-mcp/dist/index.js"
]
}
}
}
- Reinicie Claude for Desktop
Herramientas MCP
1. Obtener maestro de materias
// ツール名: get_subject_master
// パラメータ: なし
2. Obtener maestro de características
// ツール名: get_course_features
// パラメータ: なし
3. Obtener maestro de grados
// ツール名: get_grade_master
// パラメータ: なし
4. Búsqueda de profesores (especificación detallada)
// ツール名: search_teachers_advanced
// パラメータ:
// - subject_ids: 科目IDの配列(オプション)
// - grade_ids: 学年IDの配列(オプション)
// - course_feature_id: 特徴ID(オプション)
// - sort: ソート順(オプション)[pr, certification, rating, lesson_count, latest]
// - desired_teaching_period: 指導期間(オプション)[monthly, once]
Método de verificación
Puede verificar utilizando MCP Inspector.
- Ejecute la compilación y luego ejecute el inspector
npm run build
npx @modelcontextprotocol/inspector node dist/index.js
Licencia
MIT
Función de conversión de HTML a Markdown
Se implementa una función para convertir el contenido HTML obtenido de Manalink a formato Markdown.
Método de instalación
npm install node-html-markdown
Método de uso
import { convertHtmlToMarkdown } from './utils/api';
// HTMLからMarkdownへの変換
const html = `
<div>
<h1>マナリンク</h1>
<p>オンライン家庭教師プラットフォーム</p>
<ul>
<li><a href="/about">サービスについて</a></li>
<li><a href="/teachers">先生を探す</a></li>
</ul>
</div>
`;
const markdown = convertHtmlToMarkdown(html);
console.log(markdown);
Resultado de la conversión
A partir del HTML anterior se genera el siguiente Markdown:
# マナリンク
オンライン家庭教師プラットフォーム
* [サービスについて](/about)
* [先生を探す](/teachers)
Conversión a Markdown de resultados de búsqueda de profesores
En la API de búsqueda de profesores, los resultados se pueden obtener tanto en formato HTML como en formato Markdown:
import { searchTeachers } from './utils/api';
// 数学の中学生を教えられる先生を検索
const result = await searchTeachers({
subject_ids: [2], // 数学
grade_ids: [4], // 中学1年生
sort: 'rating'
});
// HTML形式の検索結果
console.log(result.bodyContent);
// Markdown形式の検索結果
console.log(result.markdown);