Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

Dynamoi

REMOTE · DYNAMOI.COM

Music promotion and distribution for AI agents: Spotify and YouTube ads, Smart Links, releases.

Available components

+1 this week 93 Trust /100

Last scanned (8 hours ago)

Scores higher than 99% of remote servers

Reachable. Last reached 5 Nov 2026.

Category Marketing and SEO

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →

Endpoint Security100
  • The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
  • Authorisation is enforced on tool calls, advertised via RFC 9728 protected-resource metadata. Discovery is public, which costs nothing: no tool can be invoked without a token. View diagnostics → Pass
  • HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
  • The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
  • DNSSEC is configured correctly; the domain's records validate against the full chain to the root. View diagnostics → Pass
  • The authorisation server supports Client ID Metadata Documents, the current MCP client-registration mechanism. View diagnostics → Pass
Transport & Reachability100
Schema Quality & AI Usability72
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (good).Pass
  • Context-footprint check failed: tool/resource definitions use about 10095 tokens (~186/item across 54 items; 51 tools + 3 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
  • No destabilizing schema changes in the last 30 days.Pass
Tool Coverage72
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 1% of tool parameters carry a description.Partial
  • Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 51 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • An AI judge read all 53 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a current MCP spec version (2026-07-28).Pass
  • Supports UI / widget rendering.Pass
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 5 Nov 26 0
    • Tool “dynamoi_get_campaign_readiness” rewrote its description, which is the text the model reads security
    • New tool “dynamoi_list_campaign_drafts” functional
    • “dynamoi_contact_support” added an optional parameter “requestId” cosmetic
  • 4 Nov 26 0
    • Tool “dynamoi_get_campaign_readiness” rewrote its description, which is the text the model reads security
    • Tool “dynamoi_manage_youtube_draft” rewrote its description, which is the text the model reads security
    • Tool “dynamoi_get_billing” rewrote its description, which is the text the model reads security
    • Server version: 1.0.9 → 1.0.10 functional
  • 3 Nov 26 +1
    • Stability: fail → pass ▲ security
    • The server rewrote its instructions, which are the text every model session reads security
    • New tool “dynamoi_manage_smart_campaign_creative”, which the server declares destructive security
    • New tool “dynamoi_manage_team”, which the server declares destructive security
    • New tool “dynamoi_manage_youtube_draft”, which the server declares destructive security
    • New tool “dynamoi_onboard_artist”, which the server declares destructive security
    • New tool “dynamoi_prepare_distribution_release”, which the server declares destructive security
    • New tool “dynamoi_smart_campaign_ad_copy”, which the server declares destructive security
    • New tool “dynamoi_smart_link_controls”, which the server declares destructive security
    • New tool “dynamoi_start_meta_connection”, which the server declares destructive security
    • New tool “dynamoi_start_youtube_channel_link”, which the server declares destructive security
    • New tool “dynamoi_update_account_profile”, which the server declares destructive security
    • New tool “dynamoi_update_smart_link”, which the server declares destructive security
    • New tool “dynamoi_update_smart_link_artist_hub_settings”, which the server declares destructive security
    • New tool “dynamoi_update_smart_link_release_settings”, which the server declares destructive security
    • New tool “dynamoi_claim_referral_code”, which the server declares destructive security
    • New tool “dynamoi_contact_support”, which the server declares destructive security
    • Tool “dynamoi_apply_for_distribution” is now declared destructive security
    • Tool “dynamoi_create_smart_links_from_spotify_artist” is now declared destructive security
    • Schema quality: 5308 → 9955 ▼ functional
    • Server version: 1.0.8 → 1.0.9 functional
    • New tool “dynamoi_get_artist_billing_country” functional
    • New tool “dynamoi_get_audit_log” functional
    • New tool “dynamoi_get_billing” functional
    • New tool “dynamoi_get_campaign_readiness” functional
    • New tool “dynamoi_get_distribution_status” functional
    • New tool “dynamoi_get_earnings” functional
    • New tool “dynamoi_get_referrals” functional
    • New tool “dynamoi_get_team” functional
    • New tool “dynamoi_list_available_countries” functional
    • New tool “dynamoi_list_media_assets” functional
    • New tool “dynamoi_get_action_center” functional
  • 31 Oct 26 0
    • Server version: 1.0.7 → 1.0.8 functional
  • 22 Oct 26 0
    • Server version: 1.0.6 → 1.0.7 functional
    • Server version: 1.0.5 → 1.0.6 functional
  • 21 Oct 26 0
    • The server rewrote its instructions, which are the text every model session reads security
    • Tool “dynamoi_get_youtube_channel_data” rewrote its description, which is the text the model reads security
    • Tool “dynamoi_about” rewrote its description, which is the text the model reads security
    • Tool “dynamoi_create_smart_link_from_spotify” rewrote its description, which is the text the model reads security
    • Tool “dynamoi_get_account_overview” rewrote its description, which is the text the model reads security
    • Tool “dynamoi_get_artist_analytics” rewrote its description, which is the text the model reads security
    • Tool “dynamoi_get_distribution_application” rewrote its description, which is the text the model reads security
    • Server version: 1.0.4 → 1.0.5 functional
    • Server version: 1.0.2 → 1.0.4 functional
  • 20 Oct 26 0
    • Tool “dynamoi_get_youtube_channel_data” rewrote its description, which is the text the model reads security
  • 15 Oct 26 0
    • Server version: 1.0.1 → 1.0.2 functional
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 5 Nov 2026 · Probed https://dynamoi.com/mcp

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=dynamoi.com CN=WE1,O=Google Trust Services,C=US 25 Oct 2026 23 Jan 2027 ECDSA 256 ECDSA-SHA256 b9254416ab298d691394ba16bbc651ab
SANs: dynamoi.com, play.dynamoi.com, *.play.dynamoi.com
CN=WE1,O=Google Trust Services,C=US (CA) CN=GTS Root R4,O=Google Trust Services LLC,C=US 13 Dec 2023 20 Feb 2029 ECDSA 256 ECDSA-SHA384 7ff31977972c224a76155d13b6d685e3
CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE 15 Nov 2023 28 Jan 2028 ECDSA 384 SHA256-RSA 7fe530bf331343bedd821610493d8a1b

Background: What to check on a remote MCP endpoint →

DNSSEC secure

Validation of dynamoi.com. — Secure

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
com. present 19718 13 Verified
dynamoi.com. present 2371 13 Verified
dynamoi.com. Verified address RRset verified with the apex keys
Authentication Enforced and verified

The endpoint asked for a token and published valid RFC 9728 metadata describing how to get one.

Result Enforced and verified
Enforced On tool calls
HTTP status 200

WWW-Authenticate challenge Bearer resource_metadata="https://dynamoi.com/.well-known/oauth-protected-resource/mcp", scope="dynamoi:read dynamoi:platform.write dynamoi:billing.read dynamoi:platform.read dynamoi:distribution.read dynamoi:campaign.write dynamoi:distribution.apply dynamoi:smart_links.write"

Bearer resource_metadata="https://dynamoi.com/.well-known/oauth-protected-resource/mcp", scope="dynamoi:read dynamoi:platform.write dynamoi:billing.read dynamoi:platform.read dynamoi:distribution.read dynamoi:campaign.write dynamoi:distribution.apply dynamoi:smart_links.write"
Header Value
strict-transport-security max-age=63072000; includeSubDomains; preload
content-security-policy default-src 'self'; script-src 'self' 'unsafe-inline' https://dynamoi.com https://*.posthog.com https://*.facebook.com https://*.facebook.net https://www.redditstatic.com https://bat.bing.com https://www.googletagmanager.com https://googleads.g.doubleclick.net https://*.vercel-scripts.com https://analytics.ahrefs.com https://static.cloudflareinsights.com https://bzrcdn.openai.com https://accounts.google.com/gsi/client; worker-src 'self' blob:; style-src 'self' 'unsafe-inline' https://accounts.google.com/gsi/style; img-src 'self' blob: data: https://*.posthog.com https://*.bing.com https://*.googleusercontent.com https://*.google.com https://google.com https://googleads.g.doubleclick.net https://*.scdn.co https://*.spotifycdn.com https://assets.soundcharts.com https://*.mzstatic.com https://*.facebook.com https://*.facebook.net https://*.fbcdn.net https://*.fbsbx.com https://*.cdninstagram.com https://*.instagram.com https://*.googletagmanager.com https://*.ytimg.com https://www.redditstatic.com https://alb.re
x-content-type-options nosniff
x-frame-options SAMEORIGIN
referrer-policy strict-origin-when-cross-origin
permissions-policy camera=(), microphone=(), geolocation=(), interest-cohort=()

Protected resource metadata

Document https://dynamoi.com/.well-known/oauth-protected-resource/mcp
Retrieved Yes
Resource https://dynamoi.com/mcp
Authorisation server https://dynamoi.com/api/auth

Background: How OAuth 2.1 works in the 2026 MCP spec →

Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://dynamoi.com/mcp Verified 200
http (plaintext) http://dynamoi.com/mcp HTTPS enforced 301 https://dynamoi.com/mcp
MCP tools · 51 exposed · ~8,892 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
dynamoi_manage_smart_campaign_creative ~927

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, expectedUpdatedAt, budgetAmountCents, budgetAmountMinor?, currency?, budgetType:DAILY|TOTAL, endDate:YYYY-MM-DD|null}. Amounts are exact minor units in the artist currency; use the budget policy from read_budget. Setup and budget saves only edit drafts and never launch or charge. Use read_location to read native draft targeting and save_location with locationSave={campaignId, expectedUpdatedAt, targeting:{mode:WORLDWIDE}|{mode:INCLUDE,countryCodes:[US]}} to save it. Read locationDraft first for the current revision; both location actions return locationDraft. Read generation progress, generated creatives and current selection with action=read. To discover owned social posts, explicitly add catalog={source:facebook|instagram,limit:1..25,after?:nextCursor}. Only requested catalog reads fetch connected-account posts; use catalog.items[].id directly in selectedSocialPosts. Pass nextCursor as after for another page. Catalog reads never alter selections, token state, or campaigns; provider failure is an error, and selection revalidates ownership. Use start_generation, retry_generation or clear_generation with campaignId and expectedUpdatedAt from read. Generation runs asynchronously; poll with read. Use source_audio_upload_status or abort_source_audio_upload with campaignId, expectedUpdatedAt, uploadId and uploadSessionId to inspect uploaded parts or abort the direct upload. Agents never approve or submit. Use action=select with campaignId and expectedUpdatedAt from read, source=generate|posts|upload, and selectedCreativeIds, selectedSocialPosts (owned META:post IDs), or uploadedAssets=[{mediaAssetId}] from dynamoi_list_media_assets. Omit selectedCreativeIds for social or uploaded media. Uploaded met…

NameTypeReqDescription
actionstringyes–
artistIdstringyes–
budgetSaveobject––
campaignIdstring––
catalogobject––
expectedUpdatedAtstring––
fileSizeBytesinteger––
hookSecondsarray––
locationSaveobject––
mediaUploadobject––
partsarray––
selectedCreativeIdsarray––
selectedSocialPostsarray––
setupRequestIdstring––
setupSaveobject––
sourcestring––
trackDurationSecondsnumber––
uploadIdstring––
uploadSessionIdstring––
uploadedAssetsarray––
urlstring––
NameTypeReqDescription
codestring––
dataobject––
draftIdstring––
failureStagestring––
fieldstring––
kindstring––
messagestring––
nextActionobject––
prerequisitestring––
retryAfterSecondsinteger––
retryableboolean––
screeningResultstring––
statusstringyes–

No examples provided.

dynamoi_manage_team ~102

Change an organization member's role, remove a member or revoke a pending organization invitation using the same authority and transactional protections as web. targetId is the organization membership or pending invitation row ID from dynamoi_get_team. Owner and last-admin protections apply; removal can revoke access and pending invitations.

NameTypeReqDescription
actionstringyes–
rolestring––
targetIdstringyesOrganization membership or pending invitation row ID from dynamoi_get_team.
NameTypeReqDescription
codestring––
dataobject––
draftIdstring––
failureStagestring––
fieldstring––
kindstring––
messagestring––
nextActionobject––
prerequisitestring––
retryAfterSecondsinteger––
retryableboolean––
screeningResultstring––
statusstringyes–

No examples provided.

dynamoi_manage_youtube_draft ~332

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={campaignId,videoId,playlistId,strategy}, save_location/locationSave={campaignId,targeting:{mode:GLOBAL}|{mode:COUNTRIES,countries:[US]}}, save_ad_copy/adCopySave={campaignId,adCopy,mode:assisted|preserve}, or save_budget/budgetSave={campaignId,budgetAmountCents,budgetType,endDate,currency?,budgetAmountMinor?}. Amounts are exact minor units in the artist currency; use the setup budget policy. Reuse the campaignId when retrying. Saves use native last-write-wins semantics; re-read setup after ambiguous outcomes. Draft saves never launch, change live campaigns or call Google Ads; launch is a separate step. Inspect a recoverable draft with inspect. Use discard only on explicit user request with campaignId, expectedUpdatedAt from inspect and userIntentSummary. Discard cannot be undone.

NameTypeReqDescription
actionstringyes–
adCopySaveobject––
artistIdstringyes–
budgetSaveobject––
campaignIdstring––
contentSaveobject––
expectedUpdatedAtstring––
locationSaveobject––
pageToken–––
userIntentSummarystring––
videoIdstring––
NameTypeReqDescription
codestring––
data–––
draftIdstring––
failureStagestring––
fieldstring––
kindstring––
messagestring––
nextActionobject––
prerequisitestring––
retryAfterSecondsinteger––
retryableboolean––
screeningResultstring––
statusstringyes–
stepResultobject––

No examples provided.

dynamoi_onboard_artist ~119

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, caps and provider quotas apply. Sign in through the app or web first.

NameTypeReqDescription
actionstringyes–
countryCodestring––
localestring––
organizationIdstring––
querystring––
urlstring––
NameTypeReqDescription
codestring––
dataobject––
draftIdstring––
failureStagestring––
fieldstring––
kindstring––
messagestring––
nextActionobject––
prerequisitestring––
retryAfterSecondsinteger––
retryableboolean––
screeningResultstring––
statusstringyes–

No examples provided.

dynamoi_open_workspace ~73

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 connect accounts. Use individual read tools for follow-up details.

Input schema present but exposes no named parameters.

NameTypeReqDescription
codestring––
dataobject––
draftIdstring––
failureStagestring––
fieldstring––
kindstring––
messagestring––
nextActionobject––
prerequisitestring––
retryAfterSecondsinteger––
retryableboolean––
screeningResultstring––
statusstringyes–

No examples provided.

dynamoi_prepare_distribution_release ~117

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.

NameTypeReqDescription
artistIdstringyes–
desiredReleaseDatestringyes–
hasCollaboratorsbooleanyes–
labelNamestring|nullyes–
notesstring|nullyes–
releaseTitlestringyes–
releaseTypestringyes–
splitsarrayyes–
tracksarrayyes–
NameTypeReqDescription
codestring––
dataobject––
draftIdstring––
failureStagestring––
fieldstring––
kindstring––
messagestring––
nextActionobject––
prerequisitestring––
retryAfterSecondsinteger––
retryableboolean––
screeningResultstring––
statusstringyes–

No examples provided.

dynamoi_preview_smart_link_themes ~91

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 promote a Smart Link.

NameTypeReqDescription
artistNamestring––
releaseTitlestring––
NameTypeReqDescription
codestring––
dataobject––
draftIdstring––
failureStagestring––
fieldstring––
kindstring––
messagestring––
nextActionobject––
prerequisitestring––
retryAfterSecondsinteger––
retryableboolean––
screeningResultstring––
statusstringyes–

No examples provided.

dynamoi_search ~153

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 (no artists yet), 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.

NameTypeReqDescription
artistIdstring––
cursorstring––
formatstring––
includeArchivedboolean––
limitinteger––
querystring––
typestring––
NameTypeReqDescription
codestring––
dataobject––
draftIdstring––
failureStagestring––
fieldstring––
kindstring––
messagestring––
nextActionobject––
prerequisitestring––
retryAfterSecondsinteger––
retryableboolean––
screeningResultstring––
statusstringyes–

No examples provided.

dynamoi_smart_campaign_ad_copy ~73

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.

NameTypeReqDescription
artistIdstringyes–
campaignIdstringyes–
saveobject––
NameTypeReqDescription
codestring––
dataobject––
draftIdstring––
failureStagestring––
fieldstring––
kindstring––
messagestring––
nextActionobject––
prerequisitestring––
retryAfterSecondsinteger––
retryableboolean––
screeningResultstring––
statusstringyes–

No examples provided.

dynamoi_smart_link_controls ~179

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 forwards expectedVersion from artistHub.version. Availability is unversioned. Catalog sync retains native cooldowns. Promote request requires playLinkId; it only records the native platform analytics event, sends no message and starts no paid work. Omitted platform uses the native default (iOS).

NameTypeReqDescription
actionstringyes–
artistIdstringyes–
confirmedArtistNamestring––
expectedVersionstring––
isEnabledboolean––
platform–––
playLinkIdstring––
trackingobject––
NameTypeReqDescription
codestring––
dataobject––
draftIdstring––
failureStagestring––
fieldstring––
kindstring––
messagestring––
nextActionobject––
prerequisitestring––
retryAfterSecondsinteger––
retryableboolean––
screeningResultstring––
statusstringyes–

No examples provided.

dynamoi_start_meta_connection ~180

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 billing, and its result is checked with dynamoi_get_distribution_application. Use purpose=advertising (the default) for Spotify Smart Campaigns; advertising requires active billing and is checked with dynamoi_get_platform_status until platforms.meta.status is oauth_complete, partnership_pending, or partnership_active. Advertising returns billing_required when inactive and billing_check_unavailable for a transient verification failure. This returns a signed Meta OAuth URL and may include a Page/Instagram selection step.

NameTypeReqDescription
artistIdstringyes–
formatstring––
purposestring––
userIntentSummarystring––
NameTypeReqDescription
codestring––
dataobject––
draftIdstring––
failureStagestring––
fieldstring––
kindstring––
messagestring––
nextActionobject––
prerequisitestring––
retryAfterSecondsinteger––
retryableboolean––
screeningResultstring––
statusstringyes–

No examples provided.

dynamoi_start_youtube_channel_link ~163

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 require advertising billing or Google Ads linking, and its result is checked with dynamoi_get_distribution_application. Use purpose=advertising (the default) for managed YouTube promotion, then poll dynamoi_get_platform_status until platforms.youtube.connected is true. The tool returns a Google OAuth URL bound to the signed-in user and artist.

NameTypeReqDescription
artistIdstringyes–
formatstring––
purposestring––
userIntentSummarystring––
NameTypeReqDescription
codestring––
dataobject––
draftIdstring––
failureStagestring––
fieldstring––
kindstring––
messagestring––
nextActionobject––
prerequisitestring––
retryAfterSecondsinteger––
retryableboolean––
screeningResultstring––
statusstringyes–

No examples provided.

dynamoi_update_account_profile ~79

Preview a display name or preferred language change. Show the preview and obtain explicit confirmation, then echo the expected current values with confirm=true.

NameTypeReqDescription
confirmboolean––
expectedNamestring|null––
expectedPreferredLocalestring|null––
namestring––
preferredLocalestring––
NameTypeReqDescription
codestring––
dataobject––
draftIdstring––
failureStagestring––
fieldstring––
kindstring––
messagestring––
nextActionobject––
prerequisitestring––
retryAfterSecondsinteger––
retryableboolean––
screeningResultstring––
statusstringyes–

No examples provided.

dynamoi_update_smart_link ~169

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 unpublish individual links. Theme-only updates switch instantly; description or pixel changes may queue background rendering.

NameTypeReqDescription
actionstringyes–
artistIdstring––
clientRequestIdstring––
customDescription–––
expectedUpdatedAtstring––
googleAdsConversionId–––
metaPixelId–––
playLinkIdstring––
themestring––
tiktokPixelId–––
userIntentSummarystring––
NameTypeReqDescription
codestring––
dataobject––
draftIdstring––
failureStagestring––
fieldstring––
kindstring––
messagestring––
nextActionobject––
prerequisitestring––
retryAfterSecondsinteger––
retryableboolean––
screeningResultstring––
statusstringyes–

No examples provided.

dynamoi_update_smart_link_artist_hub_settings ~206

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 requested settings before calling. The result includes the saved artistHub readback. If the theme applies but other changes are refused, reload with dynamoi_get_smart_link (artistId, includeArtistSettings=true) before retrying.

NameTypeReqDescription
artistIdstringyes–
clientRequestIdstring––
expectedVersionstring––
googleAdsConversionId–––
hubDescription–––
metaPixelId–––
profileLinksarray––
servicePriorityarray––
servicePriorityModestring––
themestring––
tiktokPixelId–––
userIntentSummarystring––
NameTypeReqDescription
codestring––
dataobject––
draftIdstring––
failureStagestring––
fieldstring––
kindstring––
messagestring––
nextActionobject––
prerequisitestring––
retryAfterSecondsinteger––
retryableboolean––
screeningResultstring––
statusstringyes–

No examples provided.

dynamoi_update_smart_link_artist_settings ~128

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 instantly; pixel changes may queue background rendering.

NameTypeReqDescription
artistIdstringyes–
clientRequestIdstring––
googleAdsConversionId–––
metaPixelId–––
themestring––
tiktokPixelId–––
userIntentSummarystring––
NameTypeReqDescription
codestring––
dataobject––
draftIdstring––
failureStagestring––
fieldstring––
kindstring––
messagestring––
nextActionobject––
prerequisitestring––
retryAfterSecondsinteger––
retryableboolean––
screeningResultstring––
statusstringyes–

No examples provided.

dynamoi_update_smart_link_description ~112

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 description change may queue background rendering.

NameTypeReqDescription
clientRequestIdstring––
customDescription–yes–
expectedUpdatedAtstring––
playLinkIdstringyes–
userIntentSummarystring––
NameTypeReqDescription
codestring––
dataobject––
draftIdstring––
failureStagestring––
fieldstring––
kindstring––
messagestring––
nextActionobject––
prerequisitestring––
retryAfterSecondsinteger––
retryableboolean––
screeningResultstring––
statusstringyes–

No examples provided.

dynamoi_update_smart_link_release_settings ~203

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 supported fields. Public availability is artist-wide in the dashboard; this tool does not publish or unpublish individual links. Confirm the requested settings before calling. The result includes the saved releaseSettings readback; after an ambiguous failure, read it with dynamoi_get_smart_link (playLinkId; see releaseSettings) before retrying. A description or video change may queue background rendering.

NameTypeReqDescription
clientRequestIdstring––
customDescription–––
expectedUpdatedAtstring––
expectedVersionstring––
playLinkIdstringyes–
serviceOverridesarray––
userIntentSummarystring––
youtubeUrl–––
NameTypeReqDescription
codestring––
dataobject––
draftIdstring––
failureStagestring––
fieldstring––
kindstring––
messagestring––
nextActionobject––
prerequisitestring––
retryAfterSecondsinteger––
retryableboolean––
screeningResultstring––
statusstringyes–

No examples provided.

fetch ~62

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.

NameTypeReqDescription
idstringyes–
NameTypeReqDescription
codestring––
dataobject––
draftIdstring––
failureStagestring––
fieldstring––
kindstring––
messagestring––
nextActionobject––
prerequisitestring––
retryAfterSecondsinteger––
retryableboolean––
screeningResultstring––
statusstringyes–

No examples provided.

search ~60

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.

NameTypeReqDescription
querystringyes–
NameTypeReqDescription
codestring––
dataobject––
draftIdstring––
failureStagestring––
fieldstring––
kindstring––
messagestring––
nextActionobject––
prerequisitestring––
retryAfterSecondsinteger––
retryableboolean––
screeningResultstring––
statusstringyes–

No examples provided.

Install

How do I install the Dynamoi MCP server?

Dynamoi is a hosted endpoint at https://dynamoi.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

remote · dynamoi.com

# add to Claude Code
claude mcp add --transport http getdynamoi-dynamoi 'https://dynamoi.com/mcp'
Common questions

What is the Dynamoi MCP server?

Dynamoi is an MCP server listed in the public MCP registry as io.github.getDynamoi/dynamoi. Music promotion and distribution for AI agents: Spotify and YouTube ads, Smart Links, releases. This page covers its hosted endpoint (https://dynamoi.com/mcp).

Is the Dynamoi MCP server safe to use?

Dynamoi scores 93 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the Dynamoi MCP server expose?

Dynamoi exposes 51 tools: dynamoi_onboard_artist, dynamoi_get_artist_billing_country, dynamoi_update_account_profile, dynamoi_open_workspace, dynamoi_about, and 46 more. Their descriptions and schemas cost roughly 8,892 tokens of context every time the server is loaded.

Does the Dynamoi MCP server require authentication?

Yes. Dynamoi asked us for credentials when we connected, so you will need to authorise it in your MCP client before it can do anything.

Is the Dynamoi MCP server still maintained?

Dynamoi is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.