beatport-mcp-server

beatport-mcp-server

An MCP server that provides access to the Beatport API for music discovery and data retrieval, enabling users to search for tracks, artists, labels, releases, and charts through natural language.

Category
Visit Server

README

Beatport MCP Server

Please note; this is still a work in progress!!

An MCP (Model Context Protocol) server that provides access to the Beatport API for music discovery and data retrieval.

Features

  • Easy Authentication: Simple username/password authentication
  • Full Beatport API: Access to tracks, artists, labels, releases, charts, and more
  • Flexible Transport: Supports both stdio and HTTP transports
  • Built on OpenAPI: Leverages the official Beatport OpenAPI specification

Installation

npm install -g @ivotoby/beatport-mcp-server

Authentication

⚠️ Important: Beatport's API requires OAuth2 credentials that aren't publicly available. You have three options:

Option 1: Manual Token (Recommended)

  1. Get your token:
node get-token.js  # Shows detailed instructions
  1. Set the token:
export BEATPORT_ACCESS_TOKEN="your_token_here"
beatport-mcp-server

Option 2: Username/Password (Won't work currently)

export BEATPORT_USERNAME="your@email.com"
export BEATPORT_PASSWORD="yourpassword"
beatport-mcp-server

Option 3: Contact Beatport

Email engineering@beatport.com to request OAuth2 credentials for "Beatport MCP Server"

HTTP Transport

beatport-mcp-server --transport http --port 3000

Configuration Options

  • --username, -u: Beatport username/email (or BEATPORT_USERNAME)
  • --password, -p: Beatport password (or BEATPORT_PASSWORD)
  • --transport, -t: Transport type: stdio (default) or http
  • --accessToken, -a: Bearer token (or BEATPORT_ACCESS_TOKEN)
  • --refreshToken, -r: Refresh token (or BEATPORT_REFRESH_TOKEN)
  • --port: HTTP port (default: 3000, for HTTP transport)
  • --host: HTTP host (default: 127.0.0.1, for HTTP transport)
  • --path: HTTP endpoint path (default: /mcp, for HTTP transport)
  • --name, -n: Server name (default: beatport-mcp-server)
  • --version, -v: Server version (default: 1.0.0)
  • --tools: Tools mode: all (default) or dynamic
  • --tool: Import only specified tool IDs or names
  • --tag: Import only tools with specified OpenAPI tags
  • --resource: Import only tools under specified resource path prefixes
  • --operation: Import only tools for specified HTTP methods
  • --disable-abbreviation: Disable tool name optimization

Available Tools

The server automatically generates MCP tools from the Beatport API endpoints:

Catalog

  • catalog-artists-list: Search and list artists
  • catalog-artists-retrieve: Get artist details
  • catalog-tracks-list: Search and list tracks
  • catalog-releases-list: Search and list releases
  • catalog-labels-list: Search and list labels
  • catalog-genres-list: List music genres

Charts & Playlists

  • catalog-charts-list: Browse charts
  • catalog-playlists-list: Browse playlists

Search & Discovery

  • Filter by genre, label, artist, BPM, key, release date
  • Pagination support
  • Detailed metadata for tracks and releases

Example Usage in Claude

Once connected to Claude Desktop, you can use commands like:

Search for tech house tracks released in 2024
Find all releases on Drumcode label
Get details for artist "Charlotte de Witte"
List top 10 tracks in the Techno chart
Find tracks with BPM between 120-130

Authentication Notes

  • Uses Beatport's OAuth2 Resource Owner Password Credentials flow
  • Requires a valid Beatport account
  • Tokens are automatically managed and refreshed
  • No need to handle Beatport client credentials (handled internally)

Development

git clone https://github.com/ivo-toby/beatport-mcp-server
cd beatport-mcp-server
npm install
npm run build
npm run start

License

MIT License - see LICENSE file for details.

Contributing

Issues and pull requests welcome! This project builds on the @ivotoby/openapi-mcp-server package.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured