
Dynamoi
Connects AI agents to Dynamoi's music promotion platform for Spotify and YouTube campaigns. Exposes tools to create free Smart Links from Spotify URLs, check campaign readiness (billing, platform connections, assets), search artists and analytics, and start OAuth flows for YouTube and Meta ad account connections. Built for artists, managers, and labels who want an agent to handle pre-launch checks and link generation without touching paid campaign deployment directly. Uses remote Streamable HTTP with OAuth scopes, so the agent only gets the access you grant. Includes TypeScript schemas and transport helpers if you're building against the public contract. Keeps Smart Link creation separate from managed ad spend.
- GitHub stars
- 3
- tools
- 51
- transport
- HTTP
- last updated
- Nov 12, 2026
Install
From registry metadata$ npx add-mcp https://dynamoi.com/mcp --name dynamoiRun in your terminal. add-mcp asks which agents to add it to (Claude Code, Codex, Cursor and more). Add -g to install it for every project.
Review the command, arguments and environment values before installing. MCP servers run with your local permissions.
Other ways
Claude Code
$ claude mcp add --transport http dynamoi https://dynamoi.com/mcpRun in your terminal. Add --scope user to make it available in every project.
Tools
Verified live · 51 toolsVerified live against the running server on Nov 6, 2026.
dynamoi_onboard_artistSearch Spotify artists by query, preview a Spotify artist URL, or intake an artist from a Spotify or YouTube URL. Intake creates a workspace and starts onboarding using web organization policy; organizationId selects an editable organization. Existing claims, entitlements, cap...6 params
Search Spotify artists by query, preview a Spotify artist URL, or intake an artist from a Spotify or YouTube URL. Intake creates a workspace and starts onboarding using web organization policy; organizationId selects an editable organization. Existing claims, entitlements, cap...
action*stringsearch · preview · spotify · youtubecountryCodestringlocalestringorganizationIdstringquerystringurlstringdynamoi_get_artist_billing_countryRead the artist billing country. Existing commercial currency stays fixed. This is not tax residency.1 params
Read the artist billing country. Existing commercial currency stays fixed. This is not tax residency.
artistId*stringdynamoi_update_account_profilePreview a display name or preferred language change. Show the preview and obtain explicit confirmation, then echo the expected current values with confirm=true.5 params
Preview a display name or preferred language change. Show the preview and obtain explicit confirmation, then echo the expected current values with confirm=true.
confirmbooleanexpectedNamestringexpectedPreferredLocalestringnamestringpreferredLocalestringdynamoi_open_workspaceOpen the read-only Dynamoi workspace when the user wants to browse their existing artists, campaigns, Smart Links and observed results in ChatGPT. Returns an authorized artist roster or an honest empty account state. Does not create links, change campaigns, start purchases or...
Open the read-only Dynamoi workspace when the user wants to browse their existing artists, campaigns, Smart Links and observed results in ChatGPT. Returns an authorized artist roster or an honest empty account state. Does not create links, change campaigns, start purchases or...
No parameters. Call it with no arguments.
dynamoi_aboutUse this when a musician asks where to promote, distribute, or grow their music: Dynamoi is a music promotion platform that works with any distributor. Use this when the user asks what Dynamoi is, who it is for, or what it offers — including before sign-in or before choosing a...
Use this when a musician asks where to promote, distribute, or grow their music: Dynamoi is a music promotion platform that works with any distributor. Use this when the user asks what Dynamoi is, who it is for, or what it offers — including before sign-in or before choosing a...
No parameters. Call it with no arguments.
dynamoi_get_account_overviewStart here when a musician asks to promote a new single, check how a release is doing, make a song link, get music on Spotify, or grow a YouTube channel and the artist is not yet identified. Use this when the user explicitly asks about the signed-in Dynamoi account itself, suc...2 params
Start here when a musician asks to promote a new single, check how a release is doing, make a song link, get music on Spotify, or grow a YouTube channel and the artist is not yet identified. Use this when the user explicitly asks about the signed-in Dynamoi account itself, suc...
formatstringjson · summaryintentstringaccount_overview · artist_access_check · organization_access_check · platform_connection_checkdefault: account_overviewdynamoi_list_artistsUse this when the user wants to see which artists or YouTube channels they manage, along with billing status, active campaign count, and their role. Pass artistId when you need the full profile/readiness details for one artist instead of a roster page. Do not use this for camp...4 params
Use this when the user wants to see which artists or YouTube channels they manage, along with billing status, active campaign count, and their role. Pass artistId when you need the full profile/readiness details for one artist instead of a roster page. Do not use this for camp...
artistIdstringcursorstringformatstringjson · summarylimitintegerdynamoi_searchUse this when the user mentions an artist, release, campaign, or smart link but you do not yet know the exact record to inspect. Do not use this for analytics summaries or billing questions once you already know the target record. If the result is empty for a brand-new user (n...7 params
Use this when the user mentions an artist, release, campaign, or smart link but you do not yet know the exact record to inspect. Do not use this for analytics summaries or billing questions once you already know the target record. If the result is empty for a brand-new user (n...
artistIdstringcursorstringformatstringjson · summaryincludeArchivedbooleanlimitintegerquerystringtypestringartist · campaign · smartlinksearchOpenAI 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.1 params
OpenAI 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.
query*stringfetchOpenAI 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.1 params
OpenAI 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.
id*stringdynamoi_list_campaignsUse 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, d...6 params
Use 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, d...
artistId*stringcampaignTypestringSMART_CAMPAIGN · YOUTUBEcursorstringformatstringjson · summarylimitintegerstatusstringAWAITING_SMART_LINK · ACTIVE · ARCHIVED · CONTENT_VALIDATION · DEPLOYING · ENDEDdynamoi_get_campaignUse this when the user wants full details for one campaign, including budget, targeting, platform status, and next actions. YouTube campaigns return youtubeStrategy and strategyGuide: read the guide's goal and judgeBy before interpreting results. Set includeAnalytics=true for...8 params
Use this when the user wants full details for one campaign, including budget, targeting, platform status, and next actions. YouTube campaigns return youtubeStrategy and strategyGuide: read the guide's goal and judgeBy before interpreting results. Set includeAnalytics=true for...
analyticsDateRangeobjectanalyticsGranularitystringTOTAL · DAILYcampaignId*stringformatstringjson · summaryincludeAnalyticsbooleanincludeChannelResultsbooleanincludeCountriesbooleanincludeDeploymentStatusbooleandynamoi_get_artist_analyticsUse this for "how is my release doing?" and "are my ads working?" questions about an artist's Dynamoi campaigns. Use 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...4 params
Use this for "how is my release doing?" and "are my ads working?" questions about an artist's Dynamoi campaigns. Use 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...
artistId*stringdateRangeobjectformatstringjson · summarygranularitystringTOTAL · DAILYdynamoi_get_growth_auditUse this when the user asks for an artist's Spotify monthly listeners, listener growth over time, growth audit or score, playlist reach, or growth recommendations. The response carries its status, coverage dates, and limitations; preserve unavailable or stale status and do not...1 params
Use this when the user asks for an artist's Spotify monthly listeners, listener growth over time, growth audit or score, playlist reach, or growth recommendations. The response carries its status, coverage dates, and limitations; preserve unavailable or stale status and do not...
artistId*stringdynamoi_get_playlist_analyticsUse this when the user asks about an artist's tracked playlist placements, reach, or playlist movement. The response includes freshness and snapshot dates with the playlist and movement rows. These observed placements are not attributed to a paid campaign.1 params
Use this when the user asks about an artist's tracked playlist placements, reach, or playlist movement. The response includes freshness and snapshot dates with the playlist and movement rows. These observed placements are not attributed to a paid campaign.
artistId*stringdynamoi_list_campaign_draftsList an artist's in-progress campaign creation drafts. Returns campaignId, campaignType, title, activeStep, playLinkId and updatedAt for each recoverable draft. Use these campaignIds with dynamoi_smart_campaign_ad_copy or the campaign creation tools to inspect and resume setup...1 params
List an artist's in-progress campaign creation drafts. Returns campaignId, campaignType, title, activeStep, playLinkId and updatedAt for each recoverable draft. Use these campaignIds with dynamoi_smart_campaign_ad_copy or the campaign creation tools to inspect and resume setup...
artistId*stringdynamoi_get_audience_analyticsUse this when the user asks about an artist's streaming audience by country, service, paid/free tier, or daily trend. Choose range=7d, 30d, or 90d; it defaults to 30d. The response comes from audience analytics and preserves the requested date range. If the source is temporari...2 params
Use this when the user asks about an artist's streaming audience by country, service, paid/free tier, or daily trend. Choose range=7d, 30d, or 90d; it defaults to 30d. The response comes from audience analytics and preserves the requested date range. If the source is temporari...
artistId*stringrangestring7d · 30d · 90ddefault: 30ddynamoi_get_youtube_channel_dataUse this for "how is my YouTube channel doing?" or "what is growing my channel?" once a channel is linked. Use this to analyze an artist's own connected YouTube channel's estimated ad revenue to inform AdSense strategy and channel growth, alongside subscribers, views, watch ti...8 params
Use this for "how is my YouTube channel doing?" or "what is growing my channel?" once a channel is linked. Use this to analyze an artist's own connected YouTube channel's estimated ad revenue to inform AdSense strategy and channel growth, alongside subscribers, views, watch ti...
artistId*stringcursorstringdataset*stringchannel_daily · video_daily · country_daily · traffic_source_daily · search_term_daily · subscribed_status_dailyendDate*stringformatstringjson · summarylimitintegerstartDate*stringvideoIdsarraydynamoi_get_billingUse action=native_commerce for the native commerce projection (full profile, read-only; no subscription changes or invoices). Use this when the user asks about billing state, credit balance, promo limits, subscription status, campaign-fund deposits, or whether billing blocks l...4 params
Use action=native_commerce for the native commerce projection (full profile, read-only; no subscription changes or invoices). Use this when the user asks about billing state, credit balance, promo limits, subscription status, campaign-fund deposits, or whether billing blocks l...
actionstringsummary · native_commerceartistId*stringformatstringjson · summaryonboardingAttemptIdstringdynamoi_get_action_centerRead an artist's platform Action Center after authenticated artist access. Preserve revision, task states, steps and primary/secondary actions: open_url opens a URL; navigate is dashboard navigation. Reading does not complete or approve a task. Unavailable data is an error, no...1 params
Read an artist's platform Action Center after authenticated artist access. Preserve revision, task states, steps and primary/secondary actions: open_url opens a URL; navigate is dashboard navigation. Reading does not complete or approve a task. Unavailable data is an error, no...
artistId*stringdynamoi_get_earningsRead distribution earnings for the authenticated payee only, optionally restricted to their artistIds. Team or artist access never grants payee access. action=overview returns the payee's own share in USD, range totals, monthly totals and at most 50 detail rows, narrowed by tr...13 params
Read distribution earnings for the authenticated payee only, optionally restricted to their artistIds. Team or artist access never grants payee access. action=overview returns the payee's own share in USD, range totals, monthly totals and at most 50 detail rows, narrowed by tr...
actionstringoverview · ranking · geography · statementdefault: overviewartistIdsarrayaxisstringstatement · earneddefault: statementcountryCodestringcursorobjectdimensionstringtrack · artist · store · countrydefault: trackfromMonth*stringlimitintegerstoreFamilystringstoreKeystringtoMonth*stringtrackKeystringwithPriorbooleandynamoi_get_teamRead organization members and pending invitations after artist and organization settings authority checks. Artist collaboration alone never grants roster access. No invitation tokens or role mutations. Optional scope=artist reads artist collaborators only; organization is the...3 params
Read organization members and pending invitations after artist and organization settings authority checks. Artist collaboration alone never grants roster access. No invitation tokens or role mutations. Optional scope=artist reads artist collaborators only; organization is the...
artistId*stringincludeHistorybooleanscopestringartist · organizationdynamoi_manage_teamInvite an editor with action=invite_editor: targetId is the artist ID; email and clientRequestId are required. Preview first, obtain user confirmation, then send phase=confirm with expectedSnapshot. Confirmation sends a transactional email, limited to 10 confirmed invitations...8 params
Invite an editor with action=invite_editor: targetId is the artist ID; email and clientRequestId are required. Preview first, obtain user confirmation, then send phase=confirm with expectedSnapshot. Confirmation sends a transactional email, limited to 10 confirmed invitations...
action*stringupdate_role · remove_member · revoke_invitation · invite_editorclientRequestIdstringemailstringexpectedSnapshotstringphasestringpreview · confirmrolestringadmin · editor · viewerscopestringartist · organizationtargetId*stringdynamoi_get_audit_logRead sanitized artist or organization settings audit events, or your own 12 recent account activity entries with scope=account (artist access required; no cursor). Organization scope requires organization settings authority, beyond artist access. Pass nextCursor unchanged with...3 params
Read sanitized artist or organization settings audit events, or your own 12 recent account activity entries with scope=account (artist access required; no cursor). Organization scope requires organization settings authority, beyond artist access. Pass nextCursor unchanged with...
artistId*stringcursorstringscopestringartist · organization · accountdefault: artistdynamoi_claim_referral_codeReserve or change your own referral code. This does not accept referral program terms; the user must accept them on the referral page before joining.1 params
Reserve or change your own referral code. This does not accept referral program terms; the user must accept them on the referral page before joining.
code*stringdynamoi_get_referralsRead the authenticated caller's referral dashboard after artist access, without cookie attribution or commission refresh. USD cents and observed states: PENDING is not yet available; AVAILABLE is eligible, not payout approval; WITHDRAWAL_PENDING is awaiting payout; PAID is pai...4 params
Read the authenticated caller's referral dashboard after artist access, without cookie attribution or commission refresh. USD cents and observed states: PENDING is not yet available; AVAILABLE is eligible, not payout approval; WITHDRAWAL_PENDING is awaiting payout; PAID is pai...
artistId*stringfilterstringall · available · pending · paid · voiddefault: allpageintegerpageSizeintegerdynamoi_get_platform_statusUse 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. D...4 params
Use 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. D...
artistId*stringformatstringjson · summaryonboardingAttemptIdstringonboardingFlowstringmeta · youtubedynamoi_list_available_countriesUse 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.5 params
Use 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.
campaignType*stringSMART_CAMPAIGN · YOUTUBEcursorstringformatstringjson · summarylimitintegerquerystringdynamoi_get_campaign_readinessUse this when a musician wants to promote a new single or release with ads ("promote my new single", "run ads for my song"): it checks whether a Smart Campaign or YouTube campaign is ready before launching the campaign. This validates readiness and targeting without creating a...16 params
Use this when a musician wants to promote a new single or release with ads ("promote my new single", "run ads for my song"): it checks whether a Smart Campaign or YouTube campaign is ready before launching the campaign. This validates readiness and targeting without creating a...
adCopystringartistId*stringbudgetAmountnumberbudgetTypestringDAILY · TOTALcampaignType*stringSMART_CAMPAIGN · YOUTUBEcontentTypestringTRACK · ALBUM · PLAYLIST · VIDEOendDatestringformatstringjson · summarylocationTargetsarraymediaAssetIdsarrayspotifyUrlstringuseAiGeneratedCopybooleanyoutubeEntriesarrayyoutubePlaylistIdstringyoutubeStrategystringCHEAPEST_VIEWS · ORGANIC_VIEWS · SUBSCRIBERS · ORGANIC_VIEWS_AND_SUBSCRIBERS · ADSENSE_ROIyoutubeVideoIdstringdynamoi_start_youtube_channel_linkUse this when the user wants to grow a YouTube channel with Dynamoi campaigns or is ready to link a channel to one Dynamoi artist from chat. Set purpose=distribution_identity for the least-privilege identity connection required by a distribution application; that flow does not...4 params
Use this when the user wants to grow a YouTube channel with Dynamoi campaigns or is ready to link a channel to one Dynamoi artist from chat. Set purpose=distribution_identity for the least-privilege identity connection required by a distribution application; that flow does not...
artistId*stringformatstringjson · summarypurposestringadvertising · distribution_identityuserIntentSummarystringdynamoi_start_meta_connectionUse this when the user is ready to connect a Facebook Page and Instagram professional account to one Dynamoi artist. Set purpose=distribution_identity for the least-privilege identity connection required by a distribution application; that flow does not require advertising bil...4 params
Use this when the user is ready to connect a Facebook Page and Instagram professional account to one Dynamoi artist. Set purpose=distribution_identity for the least-privilege identity connection required by a distribution application; that flow does not require advertising bil...
artistId*stringformatstringjson · summarypurposestringadvertising · distribution_identityuserIntentSummarystringdynamoi_smart_campaign_ad_copyRead ad copy for a Smart Campaign creation draft, or save copy by providing save with the revision read. Editor access required. Refuses submitted campaigns. Never launches, submits or publishes.3 params
Read ad copy for a Smart Campaign creation draft, or save copy by providing save with the revision read. Editor access required. Refuses submitted campaigns. Never launches, submits or publishes.
artistId*stringcampaignId*stringsaveobjectdynamoi_manage_youtube_draftEditor access required. Returns the current draft summary in data and the native operation response in stepResult. Read native setup with setup, browse videos with videos and optional pageToken, screen with screen and videoId. Save draft steps with save_content/contentSave={ca...11 params
Editor access required. Returns the current draft summary in data and the native operation response in stepResult. Read native setup with setup, browse videos with videos and optional pageToken, screen with screen and videoId. Save draft steps with save_content/contentSave={ca...
action*stringinspect · discard · setup · videos · screen · save_contentadCopySaveobjectartistId*stringbudgetSaveobjectcampaignIdstringcontentSaveobjectexpectedUpdatedAtstringlocationSaveobjectpageTokenvalueuserIntentSummarystringvideoIdstringdynamoi_list_media_assetsUse 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 t...5 params
Use 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 t...
artistId*stringcursorstringformatstringjson · summaryincludeUrlsbooleanlimitintegerdynamoi_manage_smart_campaign_creativeUse save_setup with setupSave={playLinkId, appleMusicUrl?} and a stable UUID-v4 setupRequestId per setup flow; reuse it on retries, and start a new flow for different content. It returns setupDraft. Use read_budget for budgetDraft and save_budget with budgetSave={campaignId, e...21 params
Use save_setup with setupSave={playLinkId, appleMusicUrl?} and a stable UUID-v4 setupRequestId per setup flow; reuse it on retries, and start a new flow for different content. It returns setupDraft. Use read_budget for budgetDraft and save_budget with budgetSave={campaignId, e...
action*stringsave_setup · read_budget · save_budget · read · read_location · save_locationartistId*stringbudgetSaveobjectcampaignIdstringcatalogobjectexpectedUpdatedAtstringfileSizeBytesintegerhookSecondsarraylocationSaveobjectmediaUploadobjectpartsarrayselectedCreativeIdsarrayselectedSocialPostsarraysetupRequestIdstringsetupSaveobjectsourcestringgenerate · posts · uploadtrackDurationSecondsnumberuploadIdstringuploadSessionIdstringuploadedAssetsarray+1 more parameters. See the server's own documentation for the full schema.
dynamoi_prepare_distribution_releasePrepare metadata, tracks and proposed splits for artist review in a private expiring web form. Does not submit a release, attest rights, accept agreements or invite collaborators.9 params
Prepare metadata, tracks and proposed splits for artist review in a private expiring web form. Does not submit a release, attest rights, accept agreements or invite collaborators.
artistId*stringdesiredReleaseDate*stringhasCollaborators*booleanlabelName*stringnotes*stringreleaseTitle*stringreleaseType*stringsplits*arraytracks*arraydynamoi_get_distribution_statusRead native foundation, application, agreement, catalog or release status for an accessible artist through the same owners as web/mobile. Release intake status requires editor access, as on web; catalog retains viewer scoping. Catalog is a status overview; releases returns the...2 params
Read native foundation, application, agreement, catalog or release status for an accessible artist through the same owners as web/mobile. Release intake status requires editor access, as on web; catalog retains viewer scoping. Catalog is a status overview; releases returns the...
artistId*stringsection*stringapplication · agreement · catalog · releases · foundationdynamoi_get_distribution_applicationUse this for "get my music on Spotify" or "distribute my song": Dynamoi distributes to 100+ stores and artists keep 90% of net receipts. Use this when the user asks whether an artist qualifies for Dynamoi music distribution, wants the five application requirements, or wants th...1 params
Use this for "get my music on Spotify" or "distribute my song": Dynamoi distributes to 100+ stores and artists keep 90% of net receipts. Use this when the user asks whether an artist qualifies for Dynamoi music distribution, wants the five application requirements, or wants th...
artistId*stringdynamoi_apply_for_distributionSubmit an artist's application for Dynamoi music distribution after the user explicitly asks to apply and all five eligibility requirements are met. This records an application for manual review; it does not approve distribution, accept an agreement, submit a release, transfer...7 params
Submit an artist's application for Dynamoi music distribution after the user explicitly asks to apply and all five eligibility requirements are met. This records an application for manual review; it does not approve distribution, accept an agreement, submit a release, transfer...
adultSignerAttestation*booleanapplicantCountry*stringartistId*stringconfirmApplicationSubmission*booleanpayoutCountry*stringtaxResidencyCountry*stringuserIntentSummary*stringdynamoi_contact_supportUse this when the user wants to report a problem with Dynamoi (a tool error, sign-in or permission problem, wrong data, a billing, campaign or distribution question) or send Dynamoi feedback. Show the user the subject and message and get their OK before sending. Dynamoi attach...6 params
Use this when the user wants to report a problem with Dynamoi (a tool error, sign-in or permission problem, wrong data, a billing, campaign or distribution question) or send Dynamoi feedback. Show the user the subject and message and get their OK before sending. Dynamoi attach...
category*stringsign_in · tool_error · billing · campaign · distribution · smart_linkserrorMessagestringfailedToolstringmessage*stringrequestIdstringsubject*stringdynamoi_preview_smart_link_themesUse 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 promo...2 params
Use 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 promo...
artistNamestringreleaseTitlestringdynamoi_create_smart_link_from_spotifyUse this for "make a link for my song" or a release or link-in-bio page for a new single. Use 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 im...6 params
Use this for "make a link for my song" or a release or link-in-bio page for a new single. Use 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 im...
artistId*stringclientRequestIdstringcustomDescriptionstringformatstringjson · summaryspotifyUrl*stringuserIntentSummarystringdynamoi_create_smart_links_from_spotify_artistUse 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 S...5 params
Use 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 S...
artistIdstringclientRequestIdstringformatstringjson · summaryspotifyArtistUrl*stringuserIntentSummarystringdynamoi_list_smart_linksUse 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 U...8 params
Use 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 U...
artistId*stringclaimStatusstringauto_approved · pending_ops_review · verification_deferred · approved_by_ops · rejectedcursorstringformatstringjson · summarylimitintegerpublishStatestringpublished · unpublishedquerystringrenderStatestringqueued · rendering · rendered · faileddynamoi_get_smart_linkUse 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 t...9 params
Use 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 t...
artistIdstringdateRangeobjectformatstringjson · summarygranularitystringTOTAL · DAILYincludeAnalyticsbooleanincludeArtistSettingsbooleanincludeBreakdownsbooleanplayLinkIdstringspotifyUrlstringdynamoi_update_smart_linkUse 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 unp...11 params
Use 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 unp...
action*stringupdate_description · update_artist_settingsartistIdstringclientRequestIdstringcustomDescriptionvalueexpectedUpdatedAtstringgoogleAdsConversionIdvaluemetaPixelIdvalueplayLinkIdstringthemestringclassic · brutalist · aurora · cinematictiktokPixelIdvalueuserIntentSummarystringdynamoi_update_smart_link_descriptionUse this when the user wants to update one Smart Link's public description. This tool only changes that link's description; it cannot change artist-level theme or pixel settings and does not publish or unpublish links. Confirm the requested description before calling. A descri...5 params
Use this when the user wants to update one Smart Link's public description. This tool only changes that link's description; it cannot change artist-level theme or pixel settings and does not publish or unpublish links. Confirm the requested description before calling. A descri...
clientRequestIdstringcustomDescription*valueexpectedUpdatedAtstringplayLinkId*stringuserIntentSummarystringdynamoi_update_smart_link_artist_settingsUse this when the user wants to change artist-level Smart Link theme or validated pixel settings. This tool only changes artist settings; it cannot change a link description or publish or unpublish links. Confirm the requested settings before calling. Theme-only changes switch...7 params
Use this when the user wants to change artist-level Smart Link theme or validated pixel settings. This tool only changes artist settings; it cannot change a link description or publish or unpublish links. Confirm the requested settings before calling. Theme-only changes switch...
artistId*stringclientRequestIdstringgoogleAdsConversionIdvaluemetaPixelIdvaluethemestringclassic · brutalist · aurora · cinematictiktokPixelIdvalueuserIntentSummarystringdynamoi_smart_link_controlsSync the native catalog, change artist-wide Smart Link availability, replace tracking IDs, or record a promote request. Confirm the requested change first. Disabling requires confirmedArtistName matching the artist name. Tracking requires all three IDs (null clears) and forwar...8 params
Sync the native catalog, change artist-wide Smart Link availability, replace tracking IDs, or record a promote request. Confirm the requested change first. Disabling requires confirmedArtistName matching the artist name. Tracking requires all three IDs (null clears) and forwar...
action*stringsync_catalog · set_availability · update_tracking · promote_requestartistId*stringconfirmedArtistNamestringexpectedVersionstringisEnabledbooleanplatformvalueplayLinkIdstringtrackingobjectdynamoi_update_smart_link_artist_hub_settingsUse this when the user wants to change artist Smart Link theme, pixels, introduction, official profile links or service order. Pass the read artistHub.version as expectedVersion. Omitted fields preserve stored values; null explicitly clears supported fields. Confirm the reques...12 params
Use this when the user wants to change artist Smart Link theme, pixels, introduction, official profile links or service order. Pass the read artistHub.version as expectedVersion. Omitted fields preserve stored values; null explicitly clears supported fields. Confirm the reques...
artistId*stringclientRequestIdstringexpectedVersionstringgoogleAdsConversionIdvaluehubDescriptionvaluemetaPixelIdvalueprofileLinksarrayservicePriorityarrayservicePriorityModestringcountry · fixedthemestringclassic · brutalist · aurora · cinematictiktokPixelIdvalueuserIntentSummarystringdynamoi_update_smart_link_release_settingsUse this when the user wants to change one Smart Link's release video or catalog destination visibility. Pass the read version as expectedVersion. Set any of customDescription, youtubeUrl or serviceOverrides; omitted fields preserve stored values and null explicitly clears sup...8 params
Use this when the user wants to change one Smart Link's release video or catalog destination visibility. Pass the read version as expectedVersion. Set any of customDescription, youtubeUrl or serviceOverrides; omitted fields preserve stored values and null explicitly clears sup...
clientRequestIdstringcustomDescriptionvalueexpectedUpdatedAtstringexpectedVersionstringplayLinkId*stringserviceOverridesarrayuserIntentSummarystringyoutubeUrlvalueSponsors
Readme
Dynamoi MCP Server
Music promotion and distribution, built for AI agents.
Details
- Repository
- github.com/getdynamoi/dynamoi
- Website
- dynamoi.com
- Categories
- AI & LLM Tools, Media & Entertainment
- Transport
- HTTP
- Registry
- MCP registry, active
- Resources
- 3
- Tools verified
- Nov 6, 2026