Skip to main content
Glama

imdb-mcp-server

IMDb MCP サーバー

ライセンス: MIT Python 3.13 ドッカー ラピッドAPI 鍛冶屋のバッジ

IMDb API サービスを使用して映画やテレビ番組の情報用のモデル コンテキスト プロトコル (MCP) を実装する Python サーバー。

目次

概要

このサーバーは、IMDb APIを介してIMDbデータにアクセスするための包括的なツールセットを提供します。エージェントとIMDbデータベース間の橋渡しとして機能し、映画、テレビ番組、俳優、監督などの詳細情報を提供します。

特徴

  • 🎬 映画やテレビ番組の検索機能

  • 📋 映画やテレビ番組の詳細情報

  • 👨‍👩‍👧‍👦 キャストとクルーの情報

  • 🏆 評価の高い人気コンテンツリスト

  • 💰 興行収入データ

  • 🌍 国別の映画情報(特にインド映画に重点を置いたもの)

  • 🔜 今後のリリース

  • 🔄効率的なレスポンスキャッシュシステム

構成

このサーバーには、IMDb API サービス用の RapidAPI からの API キーが必要です。

  1. RapidAPIでアカウントを作成する

  2. RapidAPIでIMDb APIを購読する

  3. 環境変数を設定します。

    RAPID_API_KEY_IMDB=your_api_key_here

ツール

検索ツール

道具

説明

検索_imdb

さまざまなフィルタリングオプションで映画やテレビ番組を検索

search_imdb(primary_title="Inception")

IMDb IDツール

道具

説明

IMDBの詳細を取得する

映画やテレビ番組の詳細情報を取得する

get_imdb_details(imdb_id="tt1375666")

ディレクターを取得する

映画の監督を検索する

get_directors(imdb_id="tt1375666")

get_cast

映画のキャストを取得する

get_cast(imdb_id="tt1375666")

get_writers

映画の脚本家を検索する

get_writers(imdb_id="tt1375666")

設定ツール

道具

説明

get_types

利用可能なすべてのコンテンツタイプを取得する

get_types()

ジャンルを取得する

利用可能なすべてのジャンルを取得する

get_genres()

国を取得する

利用可能なすべての国を取得する

get_countries()

言語を取得する

利用可能なすべての言語を取得する

get_languages()

映画ツール

ページ区切り(1ページあたり5件の結果)

道具

説明

上位250の映画を取得する

IMDbからトップ250の映画を入手

get_top_250_movies()

ゲットトップボックスオフィスUS

米国の興行収入記録を見る

get_top_box_office_us()

最も人気のある映画

最も人気のある映画を入手

get_most_popular_movies()

テレビ番組ツール

ページ区切り(1ページあたり5件の結果)

道具

説明

トップ250のテレビ番組を取得する

IMDbからトップ250のテレビ番組を入手

get_top_250_tv_shows()

最も人気のあるテレビ番組を取得する

最も人気のあるテレビ番組を入手

get_most_popular_tv_shows()

今後のリリースツール

ページ区切り(1ページあたり5件の結果)

道具

説明

今後のリリースを取得する

国別に今後の映画やテレビ番組の公開情報を入手

get_upcoming_releases(country_code="US", type="MOVIE")

今後のリリースで利用可能な国コードを取得する

今後のリリースで利用可能な国コードを取得する

get_available_country_codes_for_upcoming_releases()

インドのスポットライトツール(ページ区切り)

ページ区切り(1ページあたり5件の結果)

道具

説明

マラヤーラム語映画でトップ評価を獲得

マラヤーラム語映画のトップ50をご覧ください

get_top_rated_malayalam_movies()

今後のインド映画

最も期待される今後のインド映画を入手

get_upcoming_indian_movies()

トレンドのタミル映画

話題のタミル映画をチェック

get_trending_tamil_movies()

トレンドのテルグ語映画

話題のテルグ語映画をチェック

get_trending_telugu_movies()

タミル映画でトップ評価を獲得

評価の高いタミル映画トップ50

get_top_rated_tamil_movies()

テルグ語映画でトップ評価を獲得

評価の高いテルグ語映画トップ50

get_top_rated_telugu_movies()

インド映画でトップ評価を獲得

インド映画のトップ250を見る

get_top_rated_indian_movies()

プロンプトと応答の例

近い将来公開されるアクション映画5本は何ですか?

これから公開されるアクション映画を探してきます。

MCPツールget_upcoming_releasesと呼ばれる

次に、今後公開されるアクション映画を探します。

MCPツールget_upcoming_releasesと呼ばれる

検索結果に基づいて、近い将来に公開される予定のアクション映画 5 本を紹介します。

  1. マインクラフト映画(2025年4月4日)

    • ジャンル: アクション、アドベンチャー、コメディ

    • 説明: 4 人のはみ出し者がポータルを通って立方体のワンダーランドに引き込まれ、熟練の職人とともに家に帰るための冒険に乗り出します。

  2. フリーキー・テイルズ(2025年4月4日)

    • ジャンル: アクション、アドベンチャー、コメディ

    • 説明: 1987 年のカリ��ォルニア州オークランドを舞台に、音楽、映画、人々、場所、思い出への愛を描いた 4 つの相互に関連した物語。

  3. 目覚めよ(2025年4月4日)

    • ジャンル: アクション、ホラー

    • 説明: 若い活動家たちが環境問題に抗議するために家具店に侵入するが、狩猟に夢中な夜警に捕らわれてしまう。

  4. 戦争(2025年4月11日)

    • ジャンル: アクション、ドラマ、戦争

    • 説明: 元海軍特殊部隊のレイ・メンドーサのイラク戦争中の実際の体験に基づいています。

  5. アマチュア(2025年4月11日)

    • ジャンル: アクション、スリラー

    • 説明: CIA の暗号解読者が、CIA を脅迫して、妻を殺したテロリストを追跡するための訓練を受けさせます。

インストール

Smithery経由でインストール

Smithery経由で Claude Desktop 用の IMDb サーバーを自動的にインストールするには:

npx -y @smithery/cli install @uzaysozen/imdb-mcp-server --client claude

オプション 1: Docker を使用する (推奨)

  1. このリポジトリをクローンする

git clone https://github.com/uzaysozen/imdb-mcp-server.git cd imdb-mcp-server
  1. 依存関係をインストールする

pip install -r requirements.txt
  1. Dockerイメージをビルドする

docker build -t imdb_server .
  1. Dockerコンテナを実行します(APIキーが環境変数として渡されていることを確認してください)

docker run -d -p 8000:8000 -e RAPID_API_KEY_IMDB=your_api_key_here --name imdb_server imdb_server
  1. これをclaude_desktop_config.jsonに追加します:

{ "mcpServers": { "imdb_server": { "command": "docker", "args": [ "exec", "-i", "imdb_server", "imdb-mcp-server" ], "env": { "RAPID_API_KEY_IMDB": "your_api_key_here" } } } }

オプション2: Pythonの直接実行

  1. このリポジトリをクローンする

git clone https://github.com/uzaysozen/imdb-mcp-server.git cd imdb-mcp-server
  1. 依存関係をインストールする

pip install -r requirements.txt
  1. APIキー環境変数を設定する

export RAPID_API_KEY_IMDB=your_api_key_here
  1. 必要に応じて Python パスを調整しながら、これをclaude_desktop_config.jsonに追加します。

{ "mcpServers": { "imdb_server": { "command": "/path/to/your/python", "args": [ "/path/to/imdb_server.py" ], "env": { "RAPID_API_KEY_IMDB": "your_api_key_here" } } } }

サーバーの起動

# Start the server directly python imdb_server.py # Or using MCP CLI mcp run imdb_server.py # Or if using Docker, the server starts automatically with the container docker run -d -p 8000:8000 -e RAPID_API_KEY_IMDB=your_api_key_here --name imdb_server imdb_server

選択した設定を追加したら、Claude Desktopを再起動してIMDbサーバーを読み込みましょう。これで、Claudeとの会話で映画やテレビ番組のデータツールをすべて使用できるようになります。

技術的な詳細

サーバーは以下に基づいて構築されています:

  • RapidAPI経由のIMDb API

  • APIインターフェース用のMCP

  • API通信のリクエスト

  • サーバー実装用のFastMCP

  • カスタムインメモリキャッシュシステム

  • スマートなページ区切りにより、リクエストごとに結果を 5 項目に制限し、AI エージェントの消費を最適化します。

ページネーションシステム

すべてのデータ取得ツールは、AI エージェントのパフォーマンスを向上させるためにページ区切りを実装しています。

目的

  • AIに最適化された応答: 各応答を5項目に制限し、データを処理するAIエージェントの過負荷を防止します。

  • 焦点を絞った結果: エージェントがユーザーに対してより関連性の高い簡潔な情報を提供できるように支援します

  • 処理の改善:映画やテレビ番組のデータを分析する際のAIエージェントの認知負荷を軽減します。

実装

  • 各ページ区切りエンドポイントはstartパラメータを受け入れます(デフォルト: 0)

  • 結果にはナビゲーション メタデータ (totalCount、hasMore、nextStart) が含まれます

  • すべてのコレクションエンドポイントで一貫した 5 項目のページ サイズ

  • ページネーション付きのリクエストの例: get_top_250_movies(start=5) 6 ~ 10 番目の項目を返します。

利点

  • エージェントの応答の改善: AIエージェントが一度に大量のデータを受信するのを防ぎます

  • 管理可能な情報: エージェントが効果的に処理できる、消化しやすいデータの塊を作成します。

  • シーケンシャルアクセス: 複数のツール呼び出しを通じて大規模なデータセットの構造化された探索を可能にします

キャッシュシステム

サーバーは、パフォーマンスを向上させ、API 呼び出しを削減するために効率的なキャッシュ システムを実装します。

特徴

  • メモリ内キャッシュ: APIレスポンスをメモリに保存し、すぐに取得できるようにします。

  • 設定可能な有効期限とサイズ: キャッシュエントリはカスタマイズ可能な期間(デフォルト: 10分)後に期限切れとなり、デフォルトのサイズは100個のキャッシュキーになります。

  • 自動キャッシュクリーニング: 定期的に(デフォルト: 5分)期限切れのエントリを削除し、バックグラウンドスレッドを使用してメモリ使用量を管理します。

  • キャッシュキー: URLとクエリパラメータに基づいて生成され、一意性を保証します。

利点

  • API使用量の削減: レスポンスを再利用することでAPIレート制限内に留まります

  • 応答時間の高速化: キャッシュされたクエリのネット���ーク遅延を排除します

  • コスト効率: 特に人気のあるクエリや繰り返し実行されるクエリのAPI呼び出し回数を最小限に抑えます。

構成

キャッシュのサイズと有効期限はコード内で調整できます。

# Default are 600 seconds (10 minutes) and 100 cache keys response_cache = ResponseCache(expiry_seconds=120, max_size=50)

制限事項

  • APIレート制限はRapidAPIサブスクリプションに基づいて適用されます

  • 詳細情報には追加のAPI呼び出しが必要な場合があります

  • 検索結果はリクエストごとに一定数のアイテムに制限される場合があります

  • サーバーの再起動時にメモリ内キャッシュが失われます

  • すべてのページ区切りの応答は、ページごとに最大 5 つの項目を返します。

トラブルシューティング

問題

解決

APIキーが認識されません

RAPID_API_KEY_IMDB環境変数が正しく設定されていることを確認してください

レート制限を超えました

RapidAPI サブスクリプションの階層と制限を確認してください

タイムアウトエラー

サーバーには30秒のタイムアウトがあります。大規模なリクエストの場合は、パラメータを制限してみてください。

空の結果

より広い検索語を試すか、コンテンツがIMDbのデータベースに存在するかどうかを確認してください

メモリ使用量が多い

多くのユニークなクエリを長時間実行する場合は、時々サーバーを再起動してキャッシュをクリアしてください。

ライセンス

この MCP サーバーは MIT ライセンスの下で利用できます。

Related MCP Servers

View all related MCP servers

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/uzaysozen/imdb-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server