Manalink MCP Server
An MCP server implementation for Manalink that allows AI assistants to use functions like teacher search.
マナリンクMCPサーバー
マナリンクのModel Context Protocol (MCP) サーバー実装です。AIアシスタントが先生検索などの機能を利用できるようにします。
機能
このMCPサーバーは以下のツールを提供します:
- 科目マスタ取得: 科目名と科目IDのマスタを取得
- 特徴マスタ取得: コース特徴のマスタを取得(APIから動的に取得)
- 学年マスタ取得: 学年名とIDのマスタを取得
- 先生検索(詳細指定): 科目ID、学年IDなどの詳細パラメータで先生を検索
前提条件
- Node.js 18+
- npm または yarn
インストール
# リポジトリのクローン
git clone [リポジトリURL]
cd manalink-mcp
# 依存関係のインストール
npm install
使い方
開発モード
npm run dev
本番モード
npm run build
npm start
Claude for Desktopとの連携
Claude for Desktopで使用するには、claude_desktop_config.json
ファイルに設定を追加します。
- Claude for Desktopの設定ファイルを開く
code ~/Library/Application\ Support/Claude/claude_desktop_config.json
- 以下の設定を追加
{
"mcpServers": {
"manalink": {
"command": "node",
"args": [
"/絶対パス/manalink-mcp/dist/index.js"
]
}
}
}
- Claude for Desktopを再起動
MCP ツール
1. 科目マスタ取得
// ツール名: get_subject_master
// パラメータ: なし
2. 特徴マスタ取得
// ツール名: get_course_features
// パラメータ: なし
3. 学年マスタ取得
// ツール名: get_grade_master
// パラメータ: なし
4. 先生検索 (詳細指定)
// ツール名: 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]
検証方法
MCP Inspectorを使用して検証することができます。
- ビルドを実行してから、インスペクタを実行します
npm run build
npx @modelcontextprotocol/inspector node dist/index.js
ライセンス
MIT
HTMLからMarkdownへの変換機能
マナリンクから取得したHTMLコンテンツをマークダウン形式に変換する機能を実装しています。
インストール方法
npm install node-html-markdown
使用方法
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);
変換結果
上記のHTMLからは以下のようなマークダウンが生成されます:
# マナリンク
オンライン家庭教師プラットフォーム
* [サービスについて](/about)
* [先生を探す](/teachers)
先生検索結果のマークダウン変換
先生検索APIでは、検索結果をHTML形式と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);
Related Servers
Reexpress
Enable Similarity-Distance-Magnitude statistical verification for your search, software, and data science workflows
Knowledge Vault Search
Search a personal knowledge vault using hybrid semantic and keyword matching.
arXiv Search
A server for searching academic papers and preprints on arXiv.org.
RagDocs
A server for RAG-based document search and management using Qdrant vector database with Ollama or OpenAI embeddings.
Google Maps MCP Server
Integrates Google Maps for route planning, traffic analysis, and cost estimation.
OrdiscanMCP v1
MCP server for interacting with the Ordiscan API to query Bitcoin ordinals and inscriptions. Requires an Ordiscan API key.
招投标大数据服务
Provides comprehensive import and export trade data query functions, including trend analysis, product statistics, and geographic distribution.
Geocoding
Provides geocoding services by integrating with the Nominatim API.
Wikipedia Simple English MCP Server
Access Wikipedia content, prioritizing Simple English with a fallback to regular English.
Campertunity
Search campgrounds around the world on campertunity, check availability, and provide booking links.