
Dynamoi
- 3 repo stars
- Updated July 25, 2026
- getDynamoi/mcp
> Let any MCP-capable AI agent help artists and labels get releases ready to promote.
About
> Let any MCP-capable AI agent help artists and labels get releases ready to promote. > Let any MCP-capable AI agent help artists and labels get releases ready to promote. [](https://www.npmjs.com/package/@dynamoi/mcp) [](./LICENSE) [](https://dynamoi.com/mcp) [](https://dynamoi.com)
- > Let any MCP-capable AI agent help artists and labels get releases ready to promote.
- [](https://www.npmjs.com/package/@dynamoi/mcp)
- [](./LICENSE)
- [](https://dynamoi.com/mcp)
- [](https://dynamoi.com)
Dynamoi by the numbers
- Exposes 23 verified tools (MCP introspection)
- Data as of Jul 26, 2026 (Skillselion catalog sync)
claude mcp add --transport http dynamoi https://dynamoi.com/mcpAdd your badge
Show developers this MCP server is listed on Skillselion. Paste this into your README.
| repo stars | ★ 3 |
|---|---|
| Transport | HTTP |
| Auth | None |
| Tools | 23 |
| Last updated | July 25, 2026 |
| Repository | getDynamoi/mcp ↗ |
How do agents access Dynamoi MCP 🎧 capabilities without custom integration code?
> Let any MCP-capable AI agent help artists and labels get releases ready to promote.
Who is it for?
Developers wiring Dynamoi MCP 🎧 into Cursor, Claude Desktop, or other MCP clients.
Skip if: Teams that need features outside the documented Dynamoi MCP 🎧 tool surface.
What you get
Configured MCP host can call Dynamoi MCP 🎧 tools with schemas from the server README.
- Agent-driven workflows for Meta and Google growth campaigns
- Centralized MCP access for Spotify and YouTube promotion tasks
- Faster launch iteration on paid distribution from the agent
By the numbers
- Catalog version 0.4.0
- npm package identifier @dynamoi/mcp
- Remote MCP URL https://dynamoi.com/mcp
Dynamoi capabilities & compatibility
- Capabilities
- > let any mcp capable ai agent help artists and · [, do not respond 'no records found' as a terminal answer — instead suggest creating their first artist hub via dynamoi_create_smart_links_from_spotify_artist.
artistIdstringcursorstringformatstringincludeArchivedbooleanlimitintegerquerystringtypestring
search1 paramOpenAI ChatGPT Deep Research / Connectors search contract. Returns matching Dynamoi artists, campaigns, and Smart Links so they can be cited in a deep-research session. For regular ChatGPT chat use dynamoi_search instead.
querystringrequired
fetch1 paramOpenAI ChatGPT Deep Research / Connectors fetch contract. Given an id returned by `search` (formatted as 'artist:<uuid>', 'campaign:<uuid>', or 'smartlink:<uuid>'), returns the full record for citation.
idstringrequired
dynamoi_list_campaigns6 paramsUse this when the user wants to browse campaigns for one artist, optionally filtered by type or status. Do not use this for a single campaign deep dive; use dynamoi_get_campaign for that. Never use this to personalize generic marketing advice. If the user has no artists yet, do not call this — route via dynamoi_get_account_overview first.
artistIdstringrequiredcampaignTypestringcursorstringformatstringlimitintegerstatusstring
dynamoi_get_campaign7 paramsUse this when the user wants full details for one campaign, including budget, targeting, platform status, and next actions. Set includeAnalytics=true for one-campaign performance, includeDeploymentStatus=true for delivery/deployment blockers, and includeCountries=true only when the full country list is needed. Do not use this for a campaign list; use dynamoi_list_campaigns instead. After a successful launch or campaign mutation, prefer format=summary when you need a follow-up read to relay the final answer.
analyticsDateRangeobjectanalyticsGranularitystringcampaignIdstringrequiredformatstringincludeAnalyticsbooleanincludeCountriesbooleanincludeDeploymentStatusboolean
dynamoi_get_artist_analytics4 paramsUse this when the user wants artist-level performance across all campaigns, including 30-day rollups or daily breakdowns. Pass granularity=DAILY when the user asks for a daily breakdown. Pass format=summary when the user wants a written rollup, a strongest-campaign verdict, or a direct answer you can relay immediately. If this tool already returned the requested strongest-campaign comparison, stop and answer instead of calling more analytics tools. For one campaign's metrics, use dynamoi_get_campaign with includeAnalytics=true.
artistIdstringrequireddateRangeobjectformatstringgranularitystring
dynamoi_get_billing3 paramsUse this when the user asks about billing state, credit balance, promo limits, subscription status, or whether billing blocks launches for one artist. This is a read-only status check; it does not create checkout links or collect payment. If billing blocks a launch, direct the user to start or restore managed advertising in the Dynamoi dashboard, then call this tool again to confirm the status. Do not use this for campaign analytics or platform connection troubleshooting.
artistIdstringrequiredformatstringonboardingAttemptIdstring
dynamoi_get_platform_status4 paramsUse this when the user wants to know whether Spotify, Meta, or YouTube are connected and what setup steps still block launches. When polling after a connection-start flow, pass the returned onboardingAttemptId and onboardingFlow so Dynamoi ops can correlate the browser step. Do not use this for detailed billing questions. Never use this to personalize generic Instagram or marketing-advice questions.
artistIdstringrequiredformatstringonboardingAttemptIdstringonboardingFlowstring
dynamoi_list_available_countries5 paramsUse this when the user asks which countries they can target for a Smart Campaign or YouTube campaign. Always pass campaignType because Smart Campaign and YouTube country catalogs are different. Do not use this for generic country marketing advice.
campaignTypestringrequiredcursorstringformatstringlimitintegerquerystring
dynamoi_get_campaign_readiness11 paramsUse this when the user is planning a campaign and wants to know if the proposed inputs are ready before dynamoi_launch_campaign. This validates readiness and targeting without creating a campaign. Do not use this to create or mutate campaigns.
artistIdstringrequiredbudgetAmountnumberbudgetTypestringcampaignTypestringrequiredcontentTypestringendDatestringformatstringlocationTargetsarraymediaAssetIdsarrayspotifyUrlstringyoutubeVideoIdstring
dynamoi_start_youtube_channel_link3 paramsUse this when the user is ready to link a YouTube channel to one Dynamoi artist from chat. This returns a Google OAuth URL bound to the signed-in user and artist. Google returns to a Dynamoi page that tells the user to come back to the AI assistant; after that, poll dynamoi_get_platform_status with the returned onboardingAttemptId and onboardingFlow=youtube until platforms.youtube.connected is true.
artistIdstringrequiredformatstringuserIntentSummarystring
dynamoi_start_meta_connection3 paramsUse this when billing is active and the user is ready to connect Meta for Spotify Smart Campaigns from chat. This returns a signed Meta OAuth URL and may send the user through a Page/Instagram selection step before the chat-first return page. If billing is not active, it returns billing_required instead of an OAuth URL. If billing cannot be verified due to a transient snapshot/API issue, it returns billing_check_unavailable and should be retried shortly. After the user returns, poll dynamoi_get_platform_status with the returned onboardingAttemptId and onboardingFlow=meta until platforms.meta.status is oauth_complete, partnership_pending, or partnership_active.
artistIdstringrequiredformatstringuserIntentSummarystring
dynamoi_update_campaign9 paramsUse this when the user explicitly wants to pause, resume, or update the budget/end date for an existing campaign. Set action to pause, resume, or update_budget. Do not use this for inspection-only questions; this changes live campaign workflow state or external campaign settings.
actionstringrequiredbudgetAmountnumbercampaignIdstringrequiredclientRequestIdstringendDatestringexpectedCurrentBudgetAmountnumberexpectedCurrentEndDatestringexpectedCurrentStatusstringuserIntentSummarystring
dynamoi_list_media_assets5 paramsUse this when the user wants to choose from uploaded images or videos that can be reused in a campaign launch. Do not use this when the user only wants campaign status or analytics. Use format=json when you need asset IDs for a follow-up launch. Request includeUrls only when the assistant must display or inspect public-safe asset URLs.
artistIdstringrequiredcursorstringformatstringincludeUrlsbooleanlimitinteger
dynamoi_launch_campaign17 paramsUse this when the user explicitly wants to create a new Smart Campaign or YouTube Campaign and start the launch workflow with provided details. Ads are not necessarily live until the returned delivery state is ACTIVE. For review or demo Smart Campaign launches that already specify the artist, content title, budget, countries, and reusable media assets, you may omit spotifyUrl and endDate because Dynamoi can infer reviewer-safe defaults. Do not invent placeholder spotifyUrl or endDate values for those review/demo launches; omit them and let Dynamoi infer them. After a successful launch, answer from the returned campaign details directly instead of chaining more tools unless the user explicitly asked for more. Do not use this for recommendations or previews; this creates a real campaign workflow or demo-safe simulated campaign.
adCopystringappleMusicUrlstringartistIdstringrequiredbudgetAmountnumberrequiredbudgetSplitsobjectrequiredbudgetTypestringrequiredcampaignTypestringrequiredclientRequestIdstringrequiredcontentTitlestringrequiredcontentTypestringrequiredendDatestringlocationTargetsarraymediaAssetIdsarrayspotifyUrlstringuseAiGeneratedCopybooleanuserIntentSummarystringyoutubeVideoIdstring
dynamoi_preview_smart_link_themes2 paramsUse this when the user asks what Dynamoi Smart Link pages can look like, wants to compare Smart Link themes, or asks to preview the available themes before creating or updating a free Smart Link. This is a read-only visual preview and does not create, publish, update, or promote a Smart Link.
artistNamestringreleaseTitlestring
dynamoi_create_smart_link_from_spotify6 paramsUse this when the user wants to create one free Dynamoi Smart Link from a Spotify album or track URL/URI, or a single starter release from a Spotify artist URL. For full-catalog artist imports or artist hub requests, prefer dynamoi_create_smart_links_from_spotify_artist. Smart Links are free to create and manage. High-popularity or unverifiable artist links may stay unpublished in verification hold until Dynamoi can verify the client relationship. This does not create a paid ad campaign. Spotify playlist URLs are not supported today. If the Smart Link already exists, return the existing link instead of creating a duplicate; if customDescription is provided, update that Smart Link's public description. In the final answer, lead with the public URL and do not expose internal IDs unless asked.
artistIdstringrequiredclientRequestIdstringcustomDescriptionstringformatstringspotifyUrlstringrequireduserIntentSummarystring
dynamoi_create_smart_links_from_spotify_artist5 paramsUse this when the user gives a Spotify artist URL and wants Dynamoi to create, import, or refresh free Smart Links for the artist catalog and return the artist hub. If the signed-in user has no Dynamoi artist yet, omit artistId so Dynamoi can create the first artist from the Spotify artist profile. This starts the background catalog import so the user does not need to open the dashboard. Smart Links are free to create and manage. High-popularity or unverifiable artist catalog links may stay unpublished in verification hold until Dynamoi can verify the client relationship. This does not create a paid ad campaign. In the final answer, lead with the artist hub URL and current public Smart Link URLs; do not expose internal IDs unless asked.
artistIdstringclientRequestIdstringformatstringspotifyArtistUrlstringrequireduserIntentSummarystring
dynamoi_list_smart_links8 paramsUse this when the user wants to list free Smart Links for one artist, including release title, public URL, publish state, claim state, render state, and theme. Do not use this for paid campaign lists; use dynamoi_list_campaigns for campaigns. In the final answer, show public URLs and avoid internal IDs unless asked. If empty for an artist with connected Spotify, suggest dynamoi_create_smart_links_from_spotify_artist for catalog import or dynamoi_create_smart_link_from_spotify for one release instead of stopping at 'no Smart Links yet'.
artistIdstringrequiredcursorstringformatstringlimitintegerquerystringclaimStatusstringpublishStatestringrenderStatestring
dynamoi_get_smart_link9 paramsUse this when the user wants full details for one free Smart Link, including release, Spotify URL, public play.dynamoi.com URL, current status, theme source, and next actions. Set includeAnalytics=true for visit/click analytics and includeArtistSettings=true for artist-level theme/pixel settings. In the final answer, lead with the public URL and do not expose internal IDs unless asked.
artistIdstringdateRangeobjectformatstringgranularitystringincludeAnalyticsbooleanincludeArtistSettingsbooleanincludeBreakdownsbooleanplayLinkIdstringspotifyUrlstring
dynamoi_update_smart_link11 paramsUse this when the user wants to change one Smart Link's public description or update artist-level Smart Link theme/pixel settings. Set action to update_description or update_artist_settings. Public availability is artist-wide in the dashboard; this tool does not publish or unpublish individual links. Updates may queue background rendering.
actionstringrequiredartistIdstringclientRequestIdstringcustomDescriptionexpectedUpdatedAtstringgoogleAdsConversionIdmetaPixelIdplayLinkIdstringthemestringtiktokPixelIduserIntentSummarystring
README.md
Dynamoi MCP 🎧
Let any MCP-capable AI agent help artists and labels get releases ready to promote.
Musicians, managers, and labels already have enough to chase down: Spotify links, artist pages, campaign setup, ad account connections, billing checks, analytics, and launch notes.
Dynamoi MCP lets an AI agent help with that work directly. A connected agent can create a free Smart Link, pull artist and campaign context, check what is blocking a launch, start YouTube or Meta connection flows, and keep the next promotion step clear.
It works with any MCP host that supports remote Streamable HTTP and OAuth: ChatGPT, Claude, Gemini, local agent runtimes, internal label tools, or custom automation.
https://dynamoi.com/mcp
✨ The Short Version
| When someone asks... | The agent can help with... |
|---|---|
| 🎧 "Make a link for this release." | Create a free Smart Link from Spotify and return the public URL. |
| 🚦 "Why is this campaign not ready?" | Check the missing setup: billing, platform connections, countries, assets, and launch state. |
| 📈 "What do we have live right now?" | Search artists, Smart Links, campaigns, analytics, and account status. |
| 📺 "Connect our YouTube channel." | Start the correct connection flow from the conversation. |
| 🚀 "Can we promote this?" | Keep the free-link workflow separate from managed advertising, then point to the next safe step. |
🎤 Who It Is For
Artists and managers use Dynamoi MCP to make links, check campaign setup, and see what needs attention before a release gets promoted.
Record labels and teams can wire Dynamoi into internal agent workflows for campaign checks, artist lookup, reporting, and release operations.
Developers can install this package when they need the public MCP contract, schemas, OAuth metadata, transport helpers, or TypeScript types behind the hosted Dynamoi server.
🔗 Smart Links First
Free Smart Links are the easiest place for an agent to help:
- Turn a Spotify release into a public landing page.
- Import an artist catalog into an artist hub.
- Return the shareable URL immediately.
- Check link status, analytics, theme/settings, and publish state.
- Update or publish a link when the user clearly asks.
That gives artists something useful right away, and it gives promotion teams a clean next step when the release is ready to push.
🚦 Promotion Readiness
Before a campaign can move, a lot of small things have to be true. Dynamoi MCP helps agents answer the practical questions:
| Question | What Dynamoi can check |
|---|---|
| "Is this artist ready?" | Account access, artist records, platform status, and missing setup. |
| "Can this campaign launch?" | Readiness, billing state, supported countries, media assets, and deployment status. |
| "What needs attention?" | Active campaigns, Smart Links, analytics, and next actions. |
| "Are we connected?" | YouTube and Meta connection state, plus connection-start flows where available. |
🧠 Built For Any MCP Agent
This is a general MCP server, not a single-chat-product integration. Use the hosted endpoint from any MCP-capable client that supports remote Streamable HTTP:
{
"mcpServers": {
"dynamoi": {
"url": "https://dynamoi.com/mcp"
}
}
}
Authentication runs through Dynamoi OAuth. Users sign in with their Dynamoi account, and the connected agent receives only the scopes needed for the tools it calls.
🧰 Package Usage
Most artists and labels do not need to install anything. They should connect the hosted MCP server.
Install @dynamoi/mcp when you are building against the public Dynamoi MCP
contract:
npm install @dynamoi/mcp
import {
buildProtectedResourceMetadata,
createDynamoiMcpServer,
handleMcpHttpRequest,
} from "@dynamoi/mcp";
The server factory expects an adapter that connects the public MCP contract to Dynamoi's private application services:
const server = createDynamoiMcpServer({
adapter,
websiteUrl: "https://dynamoi.com",
});
handleMcpHttpRequest provides Streamable HTTP request handling with session
binding, so an MCP session cannot drift across authenticated users.
What Ships In This Package
| Included | Purpose |
|---|---|
| Tool schemas | The public MCP contract exposed by Dynamoi. |
| Prompts and resources | Guidance for Dynamoi-specific agent workflows. |
| Protected-resource metadata | OAuth discovery metadata for compatible clients. |
| HTTP transport helpers | Streamable HTTP handling with session binding. |
| TypeScript types | Integration-safe contracts for hosted server code. |
🛡️ Safety Model
Dynamoi MCP is built for real artist and label workflows, so the server keeps clear boundaries around what an agent can do.
| Safety layer | What it protects |
|---|---|
| 🔐 OAuth scopes | Agents only get the account access the user grants. |
| 👀 Read-only hints | Read tools are marked as read-only. |
| ✍️ Mutation descriptions | Write tools describe the external action they may take. |
| ✅ User intent gates | Launch and campaign-update workflows require clear user intent. |
| 💳 Paid-flow separation | Direct paid checkout is not exposed to connected agents. |
| 🔗 Smart Link boundary | Free Smart Link creation stays separate from managed advertising launch. |
💬 Good First Prompts
Try these from any connected MCP agent:
🎧 Create a Smart Link for this Spotify release.
🚦 What is blocking this campaign from launching?
📈 Show me the active campaigns that need attention.
📺 Help me connect my YouTube channel.
🚀 Get this release ready to promote.
🔗 Links
| Resource | URL |
|---|---|
| Website | https://dynamoi.com |
| Hosted MCP endpoint | https://dynamoi.com/mcp |
| npm package | https://www.npmjs.com/package/@dynamoi/mcp |
| Repository | https://github.com/getDynamoi/mcp |
| Changelog | CHANGELOG.md |
Recommended MCP Servers
How it compares
Paid-growth MCP integration, not a copywriting skill or organic SEO checklist.
FAQ
What does Dynamoi MCP 🎧 do?
> Let any MCP-capable AI agent help artists and labels get releases ready to promote.
When should I use Dynamoi MCP 🎧?
> Let any MCP-capable AI agent help artists and labels get releases ready to promote.
Is Dynamoi MCP 🎧 safe to install?
Review the Security Audits panel on this page before installing in production.