Audius MCP Server
by glassBead-tc
- src
- prompts
// Music creation and collaboration prompt
export const musicCreationPrompt = {
name: 'music-creation',
description: 'Guide for creating and publishing music on Audius',
arguments: [
{
name: 'trackTitle',
description: 'Title for the track to create',
required: true,
},
{
name: 'userId',
description: 'ID of the user creating the track',
required: true,
},
{
name: 'genre',
description: 'Genre of the track',
required: false,
},
{
name: 'mood',
description: 'Mood of the track',
required: false,
},
{
name: 'creationGoal',
description: 'The specific goal for this music creation session',
required: false,
enum: ['publish-track', 'remix-track', 'collaborate', 'plan-release']
}
],
};
// Handler for music-creation prompt
export const handleMusicCreationPrompt = (args: {
trackTitle: string;
userId: string;
genre?: string;
mood?: string;
creationGoal?: 'publish-track' | 'remix-track' | 'collaborate' | 'plan-release';
}) => {
// Build a user query for music creation
let userMessage = `I'm working on a track called "${args.trackTitle}" `;
if (args.genre) {
userMessage += `in the ${args.genre} genre `;
}
if (args.mood) {
userMessage += `with a ${args.mood} mood `;
}
if (args.creationGoal) {
switch (args.creationGoal) {
case 'publish-track':
userMessage += `and I'm ready to publish it on Audius. Can you guide me through the process of uploading and promoting my track?`;
break;
case 'remix-track':
userMessage += `and I want to create a remix of an existing track. Can you help me understand how remixes work on Audius and guide me through the process?`;
break;
case 'collaborate':
userMessage += `and I'm looking to collaborate with other artists. Can you suggest ways to find collaborators and manage a collaborative project on Audius?`;
break;
case 'plan-release':
userMessage += `and I'm planning a release strategy. Can you help me understand the best practices for releasing music on Audius, including promotion and audience building?`;
break;
default:
userMessage += `and I'd like guidance on creating and publishing it on Audius.`;
}
} else {
userMessage += `and I'd like guidance on creating and publishing it on Audius.`;
}
// Add instructions on tools to use
const systemMessage = `
To fulfill this request, help the user with their music creation and publishing process:
1. For track publishing:
- Explain how to use the 'upload-track' tool
- Provide best practices for metadata, tags, and artwork
- Suggest strategies for promotion
2. For track updates:
- Explain how to use the 'update-track' tool
- Provide guidance on when to update vs. create new versions
3. For social engagement:
- Suggest how to use comments to engage with listeners
- Explain the importance of social features (reposts, favorites)
- Discuss building an audience on Audius
4. For music discovery:
- Explain how trending algorithms work
- Suggest genre-appropriate tags and metadata
Provide practical, actionable advice tailored to the user's genre and goals.
`;
// Create messages for the prompt
const messages = [
{
role: 'system',
content: {
type: 'text',
text: systemMessage,
},
},
{
role: 'user',
content: {
type: 'text',
text: userMessage,
},
},
];
return {
messages,
};
};