Manalink MCP Server
Uma implementação de servidor MCP para o Manalink que permite que assistentes de IA usem funções como busca de professores.
Documentação
Servidor MCP da Manalink
Esta é a implementação do servidor Model Context Protocol (MCP) da Manalink. Ele permite que assistentes de IA utilizem funcionalidades como busca de professores.
Funcionalidades
Este servidor MCP oferece as seguintes ferramentas:
- Obter mestre de disciplinas: Obtém o mestre de nomes de disciplinas e IDs de disciplinas
- Obter mestre de características: Obtém o mestre de características de cursos (obtido dinamicamente da API)
- Obter mestre de séries: Obtém o mestre de nomes de séries e IDs
- Busca de professores (especificação detalhada): Busca professores com parâmetros detalhados como ID da disciplina, ID da série, etc.
Pré-requisitos
- Node.js 18+
- npm ou yarn
Instalação
# リポジトリのクローン
git clone [リポジトリURL]
cd manalink-mcp
# 依存関係のインストール
npm install
Como usar
Modo de desenvolvimento
npm run dev
Modo de produção
npm run build
npm start
Integração com Claude for Desktop
Para usar com o Claude for Desktop, adicione a configuração ao arquivo claude_desktop_config.json.
- Abra o arquivo de configuração do Claude for Desktop
code ~/Library/Application\ Support/Claude/claude_desktop_config.json
- Adicione a seguinte configuração
{
"mcpServers": {
"manalink": {
"command": "node",
"args": [
"/絶対パス/manalink-mcp/dist/index.js"
]
}
}
}
- Reinicie o Claude for Desktop
Ferramentas MCP
1. Obter mestre de disciplinas
// ツール名: get_subject_master
// パラメータ: なし
2. Obter mestre de características
// ツール名: get_course_features
// パラメータ: なし
3. Obter mestre de séries
// ツール名: get_grade_master
// パラメータ: なし
4. Busca de professores (especificação detalhada)
// ツール名: 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 validação
Você pode validar usando o MCP Inspector.
- Execute o build e depois execute o inspector
npm run build
npx @modelcontextprotocol/inspector node dist/index.js
Licença
MIT
Funcionalidade de conversão de HTML para Markdown
Implementamos uma funcionalidade que converte conteúdo HTML obtido da Manalink para o formato Markdown.
Método de instalação
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 da conversão
A partir do HTML acima, o seguinte Markdown é gerado:
# マナリンク
オンライン家庭教師プラットフォーム
* [サービスについて](/about)
* [先生を探す](/teachers)
Conversão para Markdown dos resultados de busca de professores
Na API de busca de professores, os resultados da busca podem ser obtidos tanto em formato HTML quanto em 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);