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);
Server Terkait
Open Brewery DB
Search and retrieve brewery data worldwide using the Open Brewery DB API.
Java Conferences MCP Server
Provides information about Java conferences worldwide by parsing data from the javaconferences.github.io repository.
WHOIS MCP Server
A WHOIS server for checking domain availability using the Chinaz API.
SEC Filings and Earnings Call
The MCP server provides end-to-end workflows for SEC filings and earnings call transcripts—including ticker resolution, document retrieval, OCR, embedding, on-disk resource discovery, and semantic search—exposed via MCP and powered by the same olmOCR and embedding backends as the vLLM backends.
Shodan
Query Shodan's database of internet-connected devices and vulnerabilities using the Shodan API.
Fabric Marketplace
An agent-native marketplace API where any participant ("Node") can publish allocatable resources, search for what they need, negotiate structured offers, and exchange contact details after mutual acceptance.
Meilisearch
Interact & query with Meilisearch (Full-text & semantic search API)
Secondhand MCP
Connects AI to Facebook Marketplace, Ebay, Poshmark, and Depop to find you the best deals
DuckDuckGo Search
Perform web searches using the DuckDuckGo Search API.
Erick Wendel Contributions
Query Erick Wendel's contributions, including talks, blog posts, and videos, using natural language.