mcpField
S
ScrobblerContext - Last.fm MCP Server

ScrobblerContext - Last.fm MCP Server

ローカル
github.com/tfmartゲーム・エンタメ373 週間前に更新

ScrobblerContext - Last.fm MCP Server について

ScrobblerContextは、AIアシスタントがLast.fmの音楽データを扱うためのSwift製MCPサーバーです。音楽検索、再生履歴の参照、アカウント機能、再生記録の送信を提供します。

主な機能

  1. 01アーティスト、アルバム、曲の検索
  2. 02音楽情報とおすすめの取得
  3. 03再生履歴と統計の参照
  4. 04OAuth認証とセッション管理
  5. 05再生記録の送信とお気に入り管理

活用シーン

  1. 01既知のバンドに似たアーティストの検索
  2. 02ユーザーの再生履歴の確認
  3. 03Last.fmへの曲の再生記録送信
  4. 04お気に入り曲と再生中ステータスの更新

MCP 対応

stdio経由で、Last.fmの検索、ユーザーライブラリ、認証、再生記録に関するツールをMCPクライアントに公開します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

ScrobblerContext - Last.fm MCP サーバー

npm version Swift 6.0+ License: MIT MCP

Last.fm の音楽データベースにアクセスできる Model Context Protocol(MCP)サーバーです。Swift で構築されており、AI アシスタントが音楽を検索したり、ユーザーライブラリを管理したり、トラックを Scrobble したりできます。

目次

機能

  • 認証:セッションを保持する、安全なブラウザー OAuth フロー
  • アーティスト操作:アーティストの検索、詳細情報の取得、類似アーティストの検索
  • アルバム操作:アルバムの検索、トラック一覧とメタデータの取得
  • トラック操作:トラックの検索、詳細情報とおすすめの取得
  • ユーザーデータ:再生履歴、統計、ソーシャル機能へのアクセス
  • Scrobble:トラックの再生履歴の送信、「再生中」ステータスの更新、トラックのお気に入り登録/解除

クイックスタート

npm でインストール(推奨)
# Install globally
npm install -g scrobblercontext-mcp

# Set up your Last.fm API credentials
export LASTFM_API_KEY="your_api_key_here"
export LASTFM_SECRET_KEY="your_secret_key_here"

# Run the server
scrobblercontext-mcp
Last.fm API 認証情報を取得
  1. Last.fm API アカウント作成にアクセスします
  2. アプリケーションの詳細を入力します:
    • アプリケーション名:アプリ名(例:「My MCP Server」)
    • アプリケーションの説明:簡単な説明
    • アプリケーションのホームページ URL:ウェブサイト(GitHub リポジトリでも可)
    • コールバック URL:http://localhost:8080/callback(OAuth 用)
  3. API Key と Shared Secret を保存します

MCP クライアントでのセットアップ

Claude Desktop

claude_desktop_config.json に追加します:

{
  "mcpServers": {
    "lastfm": {
      "command": "scrobblercontext-mcp",
      "env": {
        "LASTFM_API_KEY": "your_api_key_here",
        "LASTFM_SECRET_KEY": "your_secret_key_here"
      }
    }
  }
}

設定ファイルの場所:

  • macOS:~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows:%APPDATA%/Claude/claude_desktop_config.json
Cursor

MCP 設定に追加します:

{
  "mcpServers": {
    "lastfm": {
      "command": "scrobblercontext-mcp",
      "env": {
        "LASTFM_API_KEY": "your_api_key_here", 
        "LASTFM_SECRET_KEY": "your_secret_key_here"
      }
    }
  }
}
その他の MCP クライアント

このサーバーは、Model Context Protocol 標準に従って stdio 経由で通信します。クライアントを次のように設定します:

  1. サーバーコマンドとして scrobblercontext-mcp を実行します
  2. 必要な環境変数を設定します
  3. stdio トランスポートを使用します

使用例

Last.fm で認証します:

User: "Authenticate with Last.fm"
Assistant: [Uses authenticate_browser tool to start OAuth flow]

音楽を検索します:

User: "Find artists similar to Radiohead" 
Assistant: [Uses get_similar_artists tool to find recommendations]

トラックを Scrobble します:

User: "Scrobble 'Bohemian Rhapsody' by Queen"
Assistant: [Uses scrobble_track tool to submit to your profile]

手動インストール

前提条件:

  • Swift 6.0+(ダウンロード)
  • macOS 13.0+ または Swift に対応した Linux
  • Last.fm API 認証情報

ソースからビルド:

git clone https://github.com/tfmart/ScrobblerContext
cd ScrobblerContext
swift build
export LASTFM_API_KEY="your_api_key_here"
export LASTFM_SECRET_KEY="your_secret_key_here"
swift run ScrobblerContext

利用可能なツール

認証ツール(5)
  • authenticate_browser - ブラウザーで OAuth フローを開始
  • set_session_key - 既存のセッションキーを設定
  • check_auth_status - 認証状態を確認
  • restore_session - 保存済みのセッションを復元
  • logout - 認証情報をクリア
アーティストツール(9)
  • search_artist - アーティストを検索
  • get_artist_info - アーティストの詳細と経歴を取得
  • get_similar_artists - 類似するアーティストを検索
  • get_artist_correction - 修正されたアーティスト名を取得
  • get_artist_tags - アーティストのタグを取得
  • get_artist_top_albums - アーティストのトップアルバムを取得
  • get_artist_top_tracks - アーティストのトップトラックを取得
  • add_artist_tags - 個人用タグを追加(認証が必要)
  • remove_artist_tag - 個人用タグを削除(認証が必要)
アルバムツール(6)
  • search_album - アルバムを検索
  • get_album_info - アルバムの詳細とトラックリストを取得
  • get_album_tags - アルバムのタグを取得
  • get_album_top_tags - 人気のアルバムタグを取得
  • add_album_tags - 個人用タグを追加(認証が必要)
  • remove_album_tag - 個人用タグを削除(認証が必要)
トラックツール(8)
  • search_track - トラックを検索
  • get_track_info - トラックの詳細を取得
  • get_similar_tracks - 類似するトラックを検索
  • get_track_correction - 修正されたトラック情報を取得
  • get_track_tags - トラックのタグを取得
  • get_track_top_tags - 人気のトラックタグを取得
  • add_track_tags - 個人用タグを追加(認証が必要)
  • remove_track_tag - 個人用タグを削除(認証が必要)
ユーザーツール(9)
  • get_user_info - ユーザーのプロフィールと統計情報を取得
  • get_user_recent_tracks - 最近の再生履歴を取得
  • get_user_top_artists - 期間別のトップアーティストを取得
  • get_user_top_tracks - 期間別のトップトラックを取得
  • get_user_top_albums - 期間別のトップアルバムを取得
  • get_user_top_tags - 最もよく使うタグを取得
  • get_user_friends - 友達リストを取得
  • get_user_loved_tracks - お気に入りのトラックを取得
  • get_user_personal_tags_for_artists - タグ付けしたアーティストを取得
スクロブルツール(5)
  • scrobble_track - 1曲の再生を送信
  • scrobble_multiple_tracks - 複数の再生を送信
  • update_now_playing - 現在再生中のトラック情報を更新
  • love_track - トラックをお気に入りとしてマーク
  • unlove_track - お気に入りのトラックから削除

貢献

貢献を歓迎します!ガイドラインについては、CONTRIBUTING.mdをご覧ください。

ドキュメント

トラブルシューティング

Swift が見つからない場合:swift.orgから Swift をインストールしてください

セッションキーが無効な場合:authenticate_browserで認証をやり直してください

API キーのエラー:LASTFM_API_KEYとLASTFM_SECRET_KEYが正しいことを確認してください

サーバーが切断される場合:MCP クライアント設定で環境変数が設定されていることを確認してください

ライセンス

MIT ライセンス - 詳細はLICENSEファイルをご覧ください。

謝辞

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。