DTMFRAME
Read-only data from DTMFRAME (Japan): music-production products, current offers and sale deadlines.
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"dtmframe": {
"url": "https://dtmframe.com/mcp/"
}
}
}Remote endpoints
https://dtmframe.com/mcp/streamable-httpWhat it can do
Tool inventory
Tools (5)
🟢search_products(category, brand, product_id, alias, format, ...)
Searches the product catalog of a Japanese music-production buying guide by typed, non-personal vocabulary: category, brand (slug or id), product_id, alias (an exact product name or registered alias, matched after normalization), plugin format, OS and license. Returns products with ids, editions, brand, category, product type tokens (roles, e.g. eq, compressor, reverb, synth; absent when unknown), catalog status and checked_at; an unresolved alias returns 0 products with unresolved_constraints=[alias_unresolved]. Current offers of a product are returned by get_current_offers. canonical_page is the product page on this site; it carries the complete price table (including listings withheld on this channel), the merchant purchase links and the affiliate disclosure. site_entry_page is the same page with the entry marker for this channel. Read-only. Links are user_navigation handoffs (handoff_mode=user_navigation) and are not intended for prefetching or automatic clicking.
Input Schema
{
"type": "object",
"properties": {
"category": {
"type": "string",
"enum": [
"daw",
"instrument_plugin",
"effect_plugin",
"mastering_limiter_plugin",
"mastering_suite",
"restoration",
"sample_library",
"ai_separation",
"ai_restoration",
"ai_composition",
"ai_voice",
"audio_interface",
"mixer",
"preamp_outboard",
"microphone",
"headphones",
"studio_monitor",
"guitar",
"bass",
"keyboard",
"synthesizer",
"electronic_instrument",
"pedal",
"multi_effect",
"amp_simulator",
"dj_controller",
"dj_player",
"dj_mixer",
"midi_controller",
"accessory",
"computer",
"computer_peripheral"
]
},
"brand": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"product_id": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"alias": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"format": {
"type": "string",
"enum": [
"vst2",
"vst3",
"au",
"aax",
"clap",
"standalone"
]
},
"os": {
"type": "string",
"enum": [
"macos",
"windows",
"linux",
"ios",
"android"
]
},
"license": {
"type": "string",
"enum": [
"perpetual",
"subscription",
"rent_to_own",
"free",
"trial",
"unknown"
]
},
"limit": {
"default": 20,
"type": "integer",
"minimum": 1,
"maximum": 50
},
"cursor": {
"type": "string",
"minLength": 1,
"maxLength": 256
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_current_offers(product_id, region, condition)
Returns the current merchant offers of one product (product_id, product slug or edition_id; region JP by default): price in integer minor units with currency_exponent plus price_display (the same amount formatted, e.g. ¥29,700, or 無料 for a price of zero), tax and shipping status, seller class, presentation_state (active, ending_soon, stale, scheduled, unverified), price_certainty, checked_at, fresh_until and expires_at. Prices are observations with a verification state, not guarantees. A price or listing that a source keeps off this channel is marked withheld_by_channel_policy (offers_coverage=partial) and is not estimated; Rakuten Ichiba listings, for example, appear only on the web page. Each offer's permitted_handoff_links contains canonical_page and site_entry_page, and merchant_plain only where the source permits link distribution on this channel. An optional lowest_observed[] gives, per edition with price history, the window minimum (window_min_amount_minor, window_min_observed_at, observed_since, missing_days, merchant_count, basis_ja) and names the current offer when it is the lowest price seen so far (current_is_lowest_so_far, label_tier high / probable, label_ja, rule_id). The window minimum is the lowest of our own observations and recorded external references, stated with its basis; it is not a vendor list price or a regular price. An offer of a subscription or rent-to-own edition carries billing_period (month or year): its price is the charge for one period, and it has no reference_price or discount_rate_bps; field_availability.billing_period is unknown when the period is not verified. Such editions have no lowest_observed element. canonical_page is the product page on this site; it carries the complete price table (including listings withheld on this channel), the merchant purchase links and the affiliate disclosure. site_entry_page is the same page with the entry marker for this channel. Read-only; no purchase execution. Links are user_navigation handoffs (handoff_mode=user_navigation) and are not intended for prefetching or automatic clicking.
Input Schema
{
"type": "object",
"properties": {
"product_id": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"region": {
"default": "JP",
"type": "string",
"enum": [
"JP",
"US",
"EU",
"GB",
"GLOBAL"
]
},
"condition": {
"type": "string",
"enum": [
"new",
"used",
"refurbished",
"unknown"
]
}
},
"required": [
"product_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢resolve_purchase_request(schema_version, locale, region, mode, query, ...)
Computation only: conditional product / setup / add-on candidates from typed constraints (category, brand, formats, OS, license, budget), optional free text and user-claimed ownership, bound to one published snapshot. Each candidate has fit reasons, a cost breakdown over the offers this channel may disclose, budget fit, acquisition steps, canonical_page and site_entry_page. For a product candidate, canonical_page is the product page on this site; it carries the complete price table (including listings withheld on this channel), the merchant purchase links and the affiliate disclosure. site_entry_page is the same page with the entry marker for this channel. For a setup candidate canonical_page is the /find/ page. No purchase, no persistence, no notification. For a subscription or rent-to-own edition, cost_breakdown.payable_now is the first charge, recurring_cost one later charge (estimated) and recurring_period its period (month or year); with budget_scope=total_including_recurring_12m the total counts 12 monthly or 1 yearly charge, otherwise budget_fit is judged on the first payment. Where a product has one-off and recurring editions, the default scope prices the one-off edition and the 12-month scope the edition with the smallest 12-month total (assumptions key edition_choice). Bounded compute class (10 per minute, shared with POST /api/v1/resolve). A partial answer is marked search_complete=false / best_found. Links are user_navigation handoffs (handoff_mode=user_navigation) and are not intended for prefetching or automatic clicking.
Input Schema
{
"type": "object",
"properties": {
"schema_version": {
"type": "string",
"const": "1.1"
},
"locale": {
"default": "ja-JP",
"type": "string",
"minLength": 2,
"maxLength": 32
},
"region": {
"default": "JP",
"type": "string",
"enum": [
"JP",
"US",
"EU",
"GB",
"GLOBAL"
]
},
"mode": {
"type": "string",
"enum": [
"find_product",
"build_setup",
"improve_setup"
]
},
"query": {
"type": "string",
"maxLength": 2000
},
"constraints": {
"default": {
"budget_scope": "incremental_upfront_total",
"presentation_sort": "fit"
},
"type": "object",
"properties": {
"budget": {
"type": "object",
"properties": {
"amount_minor": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"currency": {
"type": "string",
"enum": [
"JPY",
"USD",
"EUR",
"GBP",
"KWD"
]
}
},
"required": [
"amount_minor",
"currency"
],
"additionalProperties": false
},
"budget_scope": {
"default": "incremental_upfront_total",
"type": "string",
"enum": [
"incremental_upfront_total",
"total_including_recurring_12m"
]
},
"daw": {
"type": "string",
"enum": [
"logic-pro",
"ableton-live",
"cubase",
"studio-one",
"fl-studio",
"pro-tools",
"reaper",
"garageband",
"other"
]
},
"experience": {
"type": "string",
"enum": [
"beginner",
"intermediate",
"advanced"
]
},
"explanation_depth": {
"type": "string",
"enum": [
"standard",
"detailed"
]
},
"license_preference": {
"type": "string",
"enum": [
"perpetual",
"subscription",
"rent_to_own",
"free",
"trial",
"unknown"
]
},
"bundle_kind": {
"type": "string",
"enum": [
"vendor_bundle",
"setup_bundle"
]
},
"category": {
"type": "string",
"enum": [
"daw",
"instrument_plugin",
"effect_plugin",
"mastering_limiter_plugin",
"mastering_suite",
"restoration",
"sample_library",
"ai_separation",
"ai_restoration",
"ai_composition",
"ai_voice",
"audio_interface",
"mixer",
"preamp_outboard",
"microphone",
"headphones",
"studio_monitor",
"guitar",
"bass",
"keyboard",
"synthesizer",
"electronic_instrument",
"pedal",
"multi_effect",
"amp_simulator",
"dj_controller",
"dj_player",
"dj_mixer",
"midi_controller",
"accessory",
"computer",
"computer_peripheral"
]
},
"brand": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"target_edition_id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"formats": {
"maxItems": 6,
"type": "array",
"items": {
"type": "string",
"enum": [
"vst2",
"vst3",
"au",
"aax",
"clap",
"standalone"
]
}
},
"os": {
"maxItems": 5,
"type": "array",
"items": {
"type": "string",
"enum": [
"macos",
"windows",
"linux",
"ios",
"android"
]
}
},
"presentation_sort": {
"default": "fit",
"type": "string",
"enum": [
"fit",
"cost",
"fewer_steps"
]
},
"max_stores": {
"type": "integer",
"minimum": 1,
"maximum": 10
},
"exclude_hardware": {
"type": "boolean"
},
"delivery_deadline": {
"type": "string"
},
"setup_goal": {
"type": "string",
"enum": [
"guitar_recording",
"vocal_recording",
"dj_start",
"desktop_mixing"
]
}
},
"additionalProperties": false
},
"ownership_claims": {
"default": [],
"maxItems": 200,
"type": "array",
"items": {
"type": "object",
"properties": {
"entitlement_id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"edition_id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"kind": {
"type": "string",
"enum": [
"perpetual",
"time_limited",
"trial",
"free_giveaway",
"hardware_bundled",
"nfr",
"education"
]
},
"acquired_at": {
"type": "string"
},
"acquisition_source": {
"type": "string",
"enum": [
"purchase",
"giveaway",
"bundle",
"unknown"
]
},
"registered": {
"type": "boolean"
},
"region": {
"type": "string",
"enum": [
"JP",
"US",
"EU",
"GB",
"GLOBAL"
]
},
"transferable": {
"type": "boolean"
},
"edition_certainty": {
"type": "string",
"enum": [
"confirmed",
"unknown"
]
},
"verification": {
"type": "string",
"const": "user_claimed"
}
},
"required": [
"entitlement_id",
"edition_id",
"kind",
"acquisition_source",
"registered",
"verification"
],
"additionalProperties": false
}
},
"owned_editions": {
"default": [],
"maxItems": 200,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"user_supplied_prices": {
"maxItems": 10,
"type": "array",
"items": {
"type": "object",
"properties": {
"offer_id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"edition_id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"price": {
"type": "object",
"properties": {
"amount_minor": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"currency": {
"type": "string",
"enum": [
"JPY",
"USD",
"EUR",
"GBP",
"KWD"
]
}
},
"required": [
"amount_minor",
"currency"
],
"additionalProperties": false
}
},
"required": [
"price"
],
"additionalProperties": false
}
},
"detail": {
"default": "summary",
"type": "string",
"enum": [
"summary",
"full"
]
},
"max_candidates": {
"default": 3,
"type": "integer",
"minimum": 1,
"maximum": 10
}
},
"required": [
"schema_version",
"mode"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢compare_products(schema_version, locale, region, edition_ids, constraints, ...)
Computation only: per-edition differences (license, billing_period for a subscription or rent-to-own edition, formats, OS, capabilities, cheapest known cost over the offers this channel may disclose, budget fit) for 2 to 10 edition ids under the same channel policy as resolve_purchase_request. Each row has canonical_page and site_entry_page. canonical_page is the product page on this site; it carries the complete price table (including listings withheld on this channel), the merchant purchase links and the affiliate disclosure. site_entry_page is the same page with the entry marker for this channel. Bounded compute class (shared with POST /api/v1/compare). Links are user_navigation handoffs (handoff_mode=user_navigation) and are not intended for prefetching or automatic clicking.
Input Schema
{
"type": "object",
"properties": {
"schema_version": {
"type": "string",
"const": "1.1"
},
"locale": {
"default": "ja-JP",
"type": "string",
"minLength": 2,
"maxLength": 32
},
"region": {
"default": "JP",
"type": "string",
"enum": [
"JP",
"US",
"EU",
"GB",
"GLOBAL"
]
},
"edition_ids": {
"minItems": 2,
"maxItems": 10,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"constraints": {
"default": {
"budget_scope": "incremental_upfront_total"
},
"type": "object",
"properties": {
"budget": {
"type": "object",
"properties": {
"amount_minor": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"currency": {
"type": "string",
"enum": [
"JPY",
"USD",
"EUR",
"GBP",
"KWD"
]
}
},
"required": [
"amount_minor",
"currency"
],
"additionalProperties": false
},
"budget_scope": {
"default": "incremental_upfront_total",
"type": "string",
"enum": [
"incremental_upfront_total",
"total_including_recurring_12m"
]
},
"daw": {
"type": "string",
"enum": [
"logic-pro",
"ableton-live",
"cubase",
"studio-one",
"fl-studio",
"pro-tools",
"reaper",
"garageband",
"other"
]
},
"license_preference": {
"type": "string",
"enum": [
"perpetual",
"subscription",
"rent_to_own",
"free",
"trial",
"unknown"
]
},
"formats": {
"maxItems": 6,
"type": "array",
"items": {
"type": "string",
"enum": [
"vst2",
"vst3",
"au",
"aax",
"clap",
"standalone"
]
}
},
"os": {
"maxItems": 5,
"type": "array",
"items": {
"type": "string",
"enum": [
"macos",
"windows",
"linux",
"ios",
"android"
]
}
},
"exclude_hardware": {
"type": "boolean"
}
},
"additionalProperties": false
},
"ownership_claims": {
"default": [],
"maxItems": 200,
"type": "array",
"items": {
"type": "object",
"properties": {
"entitlement_id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"edition_id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"kind": {
"type": "string",
"enum": [
"perpetual",
"time_limited",
"trial",
"free_giveaway",
"hardware_bundled",
"nfr",
"education"
]
},
"acquired_at": {
"type": "string"
},
"acquisition_source": {
"type": "string",
"enum": [
"purchase",
"giveaway",
"bundle",
"unknown"
]
},
"registered": {
"type": "boolean"
},
"region": {
"type": "string",
"enum": [
"JP",
"US",
"EU",
"GB",
"GLOBAL"
]
},
"transferable": {
"type": "boolean"
},
"edition_certainty": {
"type": "string",
"enum": [
"confirmed",
"unknown"
]
},
"verification": {
"type": "string",
"const": "user_claimed"
}
},
"required": [
"entitlement_id",
"edition_id",
"kind",
"acquisition_source",
"registered",
"verification"
],
"additionalProperties": false
}
},
"user_supplied_prices": {
"maxItems": 10,
"type": "array",
"items": {
"type": "object",
"properties": {
"offer_id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"edition_id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"price": {
"type": "object",
"properties": {
"amount_minor": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"currency": {
"type": "string",
"enum": [
"JPY",
"USD",
"EUR",
"GBP",
"KWD"
]
}
},
"required": [
"amount_minor",
"currency"
],
"additionalProperties": false
}
},
"required": [
"price"
],
"additionalProperties": false
}
},
"detail": {
"default": "summary",
"type": "string",
"enum": [
"summary",
"full"
]
}
},
"required": [
"schema_version",
"edition_ids"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢list_deals(brand, category, kind, source, state, ...)
Lists the sales and campaigns recorded by a Japanese music-production buying guide (region JP), running ones first: title, kind, source (manufacturer store, merchant listings or manufacturer announcement), state, recorded start and end with deadline_status, checked_at / fresh_until, brands, categories, a sample of target products, prices_from (the lowest current price per currency among the offers this channel may disclose, with a display string), and the largest discount against the merchant's own reference price among the offers this channel may disclose (per-period prices of subscription or rent-to-own editions count in neither). Filters: brand slug, category slug, kind, source, state (running by default), limit, cursor. No merchant links are returned; offers of one product are returned by get_current_offers. canonical_page is the campaign page on this site; it carries every offer, the complete price table (including listings withheld on this channel), the merchant purchase links and the affiliate disclosure. site_entry_page is the same page with the entry marker for this channel. Read-only. Links are user_navigation handoffs (handoff_mode=user_navigation) and are not intended for prefetching or automatic clicking.
Input Schema
{
"type": "object",
"properties": {
"brand": {
"description": "Brand slug as on /brands/{slug}/ (the manufacturer_id from search_products is accepted too).",
"type": "string",
"minLength": 1,
"maxLength": 128,
"pattern": "^[a-z0-9][a-z0-9_-]{0,127}$"
},
"category": {
"description": "Category slug as on /categories/{slug}/, e.g. audio-interface (the search_products spelling audio_interface is accepted too).",
"type": "string",
"minLength": 1,
"maxLength": 64,
"pattern": "^[a-z0-9][a-z0-9_-]{0,127}$"
},
"kind": {
"description": "Campaign kind.",
"type": "string",
"enum": [
"sale",
"giveaway",
"purchase_bonus",
"coupon",
"bundle_change",
"cashback",
"upgrade_offer",
"seasonal_feature"
]
},
"source": {
"description": "official = manufacturer store, merchant = reseller or marketplace listings, announcement = manufacturer announcement without listings.",
"type": "string",
"enum": [
"official",
"merchant",
"announcement"
]
},
"state": {
"default": "running",
"description": "running (default) = active, ending_soon or stale; ending_soon; scheduled; all = every state including ended campaigns.",
"type": "string",
"enum": [
"running",
"ending_soon",
"scheduled",
"all"
]
},
"limit": {
"default": 20,
"type": "integer",
"minimum": 1,
"maximum": 50
},
"cursor": {
"description": "Opaque next_cursor of the previous page (bound to one published snapshot).",
"type": "string",
"minLength": 1,
"maxLength": 256
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}Community
Evidence