Skip to main content
Glama

mediaarts-db-mcp

メディア芸術データベースで漫画雑誌の号を探し、掲載作品・話タイトル・開始ページを確認できます。マンガ・アニメ・ゲームの作品やシリーズをタイトルで探すこともできます。

利用前に

uv と Git が必要です。Python 3.12以上に対応しています。APIキーは不要です。

Related MCP server: Anime MCP Server

MCPクライアントに登録する

公開GitHubリポジトリから uvx で起動します。初回は依存関係の準備に時間がかかることがあります。

Codex

codex mcp add mediaarts-db-mcp -- uvx --python 3.12 --from git+https://github.com/koizumikento/mediaarts-db-mcp.git@main mediaarts-db-mcp
codex mcp list

新しいセッションで /mcp を開くと、接続を確認できます。デスクトップ版では設定の「MCP servers」で、下のJSON例と同じコマンド・引数を指定できます。Codexの公式設定ガイド

Claude Desktop / Cursor

  • Claude Desktop(Windows) %APPDATA%/Claude/claude_desktop_config.json

  • Claude Desktop(macOS) ~/Library/Application Support/Claude/claude_desktop_config.json

  • Cursor .cursor/mcp.json(プロジェクト内)

設定ファイルの mcpServers に項目を追加して、クライアントを再起動してください。uvx が見つからない場合は、実行ファイルの絶対パスを指定します。

{
  "mcpServers": {
    "mediaarts-db-mcp": {
      "command": "uvx",
      "args": ["--python", "3.12", "--from", "git+https://github.com/koizumikento/mediaarts-db-mcp.git@main", "mediaarts-db-mcp"]
    }
  }
}

登録後の質問例

『週刊少年マガジン』2011年の24号を探して、その号の目次を開始ページ順に10件出して。

ゲーム作品名に「スーパーマリオブラザーズ」を含むものを5件、データベースの詳細ページ付きで出して。

MCPツール

各ツールで limit は1〜50件、start は1から始まる取得位置です。次のページがある場合は、返された next_start を次回の start に指定します。start の上限は10001です。

search_manga_issues

query に雑誌名の一部を指定します。必要に応じて year(西暦)、volume_number(巻)、issue_number(号)で絞り込みます。巻と号は文字列で完全一致します。号は誌面表記を優先し、誌面表記が未収録の場合はデータベースの号番号を使います。返された issue_id を get_manga_issue_contents に渡せます。

get_manga_issue_contents

issue_id に M から始まる雑誌号IDを指定します。start_page はデータベースの表記のまま返します。目次が未収録の号では結果が空になることがあります。

search_works

query にタイトルの一部、medium に manga、anime、game のいずれかを指定します。結果には作品・シリーズのID、タイトル、データベース上の分類、詳細ページが含まれます。

medium

検索対象

manga

マンガ単行本シリーズ、マンガ雑誌の刊行物

anime

TVレギュラー、TVスペシャル、劇場アニメのシリーズ

game

ゲーム作品

検索はデータベースのタイトル表記に対する部分一致です。巻、話、ゲームの機種別パッケージなどの個別資料は、詳細ページから確認してください。

CLIで使う

結果は標準出力にUTF-8のJSONで返ります。

uvx --python 3.12 --from git+https://github.com/koizumikento/mediaarts-db-mcp.git@main mediaarts-db-mcp search-manga-issues --query '週刊少年マガジン' --year 2011 --issue-number 24
uvx --python 3.12 --from git+https://github.com/koizumikento/mediaarts-db-mcp.git@main mediaarts-db-mcp get-manga-issue-contents --issue-id M535428 --limit 5
uvx --python 3.12 --from git+https://github.com/koizumikento/mediaarts-db-mcp.git@main mediaarts-db-mcp search-works --medium game --query 'スーパーマリオブラザーズ' --limit 5

Pythonから呼び出す

git clone https://github.com/koizumikento/mediaarts-db-mcp.git
cd mediaarts-db-mcp
uv sync --locked
import asyncio

from mediaarts_db_mcp import get_manga_issue_contents, search_manga_issues, search_works


async def main() -> None:
    issues = await search_manga_issues("週刊少年マガジン", issue_number="24", year=2011)
    for issue in issues["items"]:
        print(await get_manga_issue_contents(issue["issue_id"], limit=5))
        break

    print(await search_works("スーパーマリオブラザーズ", medium="game", limit=5))


asyncio.run(main())

すでにイベントループがある場合は、関数を直接 await してください。

出典と利用条件

コードはMIT Licenseです。メディア芸術データベースの公開SPARQLサービスを使用します。取得した情報の利用条件は配布元に従ってください。公式SPARQL仕様 · データセットとライセンス · MADB Lab 利用規約

開発

uv sync --locked
uv run ruff check .
uv run ty check
uv run pytest
uv build

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    Related MCP Connectors

    Related MCP Servers