nabchan-mcp-server
Description
# nabchan-mcp-server > [!WARNING] > これは実験的なプロジェクトであり、改善の余地が大いにあります。 ## 概要 [Nablarchの解説書](https://nablarch.github.io/docs/LATEST/doc/)をもとにしてNablarchの情報を返すMCPサーバーです。 ## Getting started Dockerを使って簡単に試せます。 ```mermaid graph LR a[VSCode] b[nabchan-mcp-server<br>(Dockerコンテナ)] a…
About
# nabchan-mcp-server > [!WARNING] > これは実験的なプロジェクトであり、改善の余地が大いにあります。 ## 概要 [Nablarchの解説書](https://nablarch.github.io/docs/LATEST/doc/)をもとにしてNablarchの情報を返すMCPサーバーです。 ## Getting started Dockerを使って簡単に試せます。 ```mermaid graph LR a[VSCode] b[nabchan-mcp-server<br>(Dockerコンテナ)] a -->|標準入出力で通信| b ``` VSCodeへ次の設定を追加してください。…
Details
- Author
- backpaper0
- GitHub stars
- 2
- Downloads
- 80
- Categories
- Other
Jump to
- read_document – Converts a Nablarch documentation URL to markdown.
- search_document – Searches the documentation and returns title, URL, and summary.
- Index built from Nablarch HTML docs using morphological analysis.
- Runs locally with Python and DuckDB.
- Supports stdio and SSE transport types.
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
nabchan-mcp-serverCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
You can run it using Docker (with stdio transport) or via ToolHive. The README provides VSCode configuration examples for both stdio and SSE transports. For development, set up Python 3.11, uv, Git, and Docker.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"nabchan-mcp-server": {
"nabchan-mcp-server": {
"command": "uv",
"args": [
"run",
"-m",
"tools.build_index"
]
}
}
}
}
McpServers
{
"nabchan-mcp-server": {
"command": "uv",
"args": [
"run",
"-m",
"tools.build_index"
]
}
}
nabchan-mcp-server
> [!WARNING]
> これは実験的なプロジェクトであり、改善の余地が大いにあります。
概要
Nablarchの解説書をもとにしてNablarchの情報を返すMCPサーバーです。
Getting started
Dockerを使って簡単に試せます。
graph LR
a[VSCode]
b[nabchan-mcp-server<br>(Dockerコンテナ)]
a -->|標準入出力で通信| b
VSCodeへ次の設定を追加してください。
{
"mcp": {
"inputs": [],
"servers": {
"nablarch-document": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"--network",
"none",
"-e",
"TRANSPORT=stdio",
"ghcr.io/backpaper0/nabchan-mcp-server",
]
}
}
}
}
GitHub Copilot ChatをAgentモードにしてNablarchに関する質問をしてみてください。
ToolHive経由で実行する
ToolHive経由で実行する場合は次のコマンドを実行してください。
thv run --name nabchan-mcp-server ghcr.io/backpaper0/nabchan-mcp-server -- --transport=stdio
アーキテクチャ
ローカルのPythonだけで動作するような構成を取っています。
DuckDBの全文検索拡張(Full-Text Search Extension)とLinderaという形態素解析ライブラリを使ってインデックスを構築しています。
解説書のHTMLから抽出したテキストを形態素解析したものが全文検索の対象フィールドとなります。
それ以外にもタイトル、概要、内容をmarkdown形式に変換したもの、をもっており、それらはMCPサーバーが提供するAPIで利用されます。
graph TD
h[Nablarchの解説書<br>(HTMLファイル)]
c(テキスト)
d(概要)
t(タイトル)
m(markdown)
i[DuckDB]
h -->|BeautifulSoupで<br>テキスト抽出| c
c -->|Linderaで形態素解析| i
c -->|LLMで要約| d
d --> i
h -->|BeautifulSoupで<br>タイトル抽出|t
t --> i
h -->|html2textで<br>markdown化| m
m --> i
MCPサーバーが提供しているAPIは次の通りです。
- read_document
- URLが示すNablarchのドキュメントをmarkdown形式へ変換したものを返します。
- search_document
- Nablarchのドキュメントを検索します。返される情報は次の通り
- タイトル
- URL
- 概要
nabchan-mcp-server開発者向けの情報
開発に必要な環境
- Python 3.11
- uv
- Git
- Docker
インデックスの構築
uv run -m tools.build_index
> [!NOTE]
> サブモジュールの中身を取得していない場合、git submodule initとgit submodule updateを実行してください。
検索を試す
uv run -m tools.search_document -q "Nablarch"
開発時のVSCode設定例
/path/to/nabchan-mcp-serverは実際のパスに置き換えてください。
{
"mcp": {
"inputs": [],
"servers": {
"nablarch-document": {
"command": "uv",
"args": [
"--directory",
"/path/to/nabchan-mcp-server",
"run",
"-m",
"nabchan_mcp_server.main",
]
}
}
}
}
トランスポートタイプにSSEを使う場合はこちら。
{
"mcp": {
"inputs": [],
"servers": {
"nablarch-document": {
"type": "sse",
"url": "http://localhost:8000/sse"
}
}
}
}
SSEを使う場合は次のコマンドであらかじめサーバーを起動しておく必要があります。
uv run -m nabchan_mcp_server.main --transport sse --host localhost
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



