MCP cover image
See in Github
2025-03-18

这是模型上下文协议(MCP)服务器实现,它允许AI助手与Spotify的API进行交互。

1

Github Watches

0

Github Forks

0

Github Stars

Spotify MCP Server (Express.js)

This is a Model Context Protocol (MCP) server implementation that allows AI assistants to interact with Spotify's API. The server provides endpoints for searching tracks, getting artist information, and managing playlists.

Setup

  1. Create a Spotify Developer account and create a new application at Spotify Developer Dashboard.
  2. Get your Client ID and Client Secret from your Spotify application.
  3. Create a .env file in the root directory with the following content:
SPOTIFY_CLIENT_ID=your_client_id
SPOTIFY_CLIENT_SECRET=your_client_secret
SPOTIFY_REDIRECT_URI=http://localhost:3000/callback
  1. Install dependencies:
npm install
  1. Run the server:
npm start

Available Endpoints

The server implements the following MCP endpoints:

  • POST /mcp/search - Search for tracks, artists, or albums.
  • GET /mcp/artist/{artistId} - Get detailed information about an artist.
  • GET /mcp/track/{trackId} - Get detailed information about a track.
  • GET /mcp/playlist/{playlistId} - Get playlist information.
  • GET /mcp/me/top-tracks - Get user's top tracks (requires authentication).
  • GET /mcp/me/playlists - Get user's playlists (requires authentication).
  • GET /mcp/me/tracks - Get user's saved tracks (requires authentication).
  • GET /mcp/auth/login - Generate a Spotify login URL for user authentication.
  • GET /callback - Handle Spotify OAuth callback and exchange authorization code for an access token.
  • POST /mcp/auth/refresh - Refresh a user's access token.

Example Usage

Here's an example of how an AI assistant can interact with the server:

// Search for a track
const searchResponse = await fetch('http://localhost:3000/mcp/search', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    query: 'Bohemian Rhapsody',
    type: 'track'
  })
});
const searchData = await searchResponse.json();

// Get artist information
const artistResponse = await fetch('http://localhost:3000/mcp/artist/1dfeR4HaWDbWqJHLk5g1d1');
const artistData = await artistResponse.json();

MCP Protocol Implementation

This server implements the Model Context Protocol, allowing AI assistants to:

  1. Authenticate with Spotify.
  2. Search for music content.
  3. Retrieve detailed information about artists, tracks, and playlists.
  4. Access personalized user data (with proper authentication).

Security Note

Make sure to keep your .env file secure and never commit it to version control. The server uses environment variables to manage sensitive credentials.

相关推荐

  • NiKole Maxwell
  • I craft unique cereal names, stories, and ridiculously cute Cereal Baby images.

  • Bora Yalcin
  • Evaluator for marketplace product descriptions, checks for relevancy and keyword stuffing.

  • Yusuf Emre Yeşilyurt
  • I find academic articles and books for research and literature reviews.

  • https://suefel.com
  • Latest advice and best practices for custom GPT development.

  • https://maiplestudio.com
  • Find Exhibitors, Speakers and more

  • Carlos Ferrin
  • Encuentra películas y series en plataformas de streaming.

  • Joshua Armstrong
  • Confidential guide on numerology and astrology, based of GG33 Public information

  • Alexandru Strujac
  • Efficient thumbnail creator for YouTube videos

  • Elijah Ng Shi Yi
  • Advanced software engineer GPT that excels through nailing the basics.

  • Emmet Halm
  • Converts Figma frames into front-end code for various mobile frameworks.

  • lumpenspace
  • Take an adjectivised noun, and create images making it progressively more adjective!

  • apappascs
  • 发现市场上最全面,最新的MCP服务器集合。该存储库充当集中式枢纽,提供了广泛的开源和专有MCP服务器目录,并提供功能,文档链接和贡献者。

  • ShrimpingIt
  • MCP系列GPIO Expander的基于Micropython I2C的操作,源自ADAFRUIT_MCP230XX

  • OffchainLabs
  • 进行以太坊的实施

  • huahuayu
  • 统一的API网关,用于将多个Etherscan样区块链Explorer API与对AI助手的模型上下文协议(MCP)支持。

  • modelcontextprotocol
  • 模型上下文协议服务器

    Reviews

    5 (1)
    Avatar
    user_SXI4lUxE
    2025-04-17

    MCP-server by addy07s is an outstanding tool for centralized server management. Its seamless integration and robust features make it indispensable for administrators. The GitHub repository is well-documented and easy to navigate. Highly recommended for anyone looking for a reliable server management solution!