DTMFRAME

com.dtmframePublished by dtmframe.comOfficial publisherv0.1.2Updated Oct 25, 2026

Japan music-production prices: plugins, DAWs, audio gear. Shop comparison, sales and end dates.

VerifiedStreamable HTTPWeb executableWeb Search & ScrapingBusiness & Commerce

Overview

AI-generated overview

A remote MCP server for a Japanese music-production buying guide, letting an assistant search plugins, DAWs and audio gear, compare offers and find sales.

What you can do
Search the product catalog by category, brand, product id, alias, plugin format, OS, license or free-text name, and list recorded sales and campaigns with start and end dates and freshness status. Retrieve current merchant offers for a product, including price in minor units with formatted display, tax and shipping status, seller class and region. Resolve typed purchase constraints such as budget, formats, OS and license into ranked product, setup and add-on candidates with fit reasons and cost breakdowns. Compare 2 to 10 editions of products by license, billing period, formats, OS, capabilities, cheapest known cost and budget fit.
When to use it
Useful when someone is researching Japanese-market music-production software or gear and wants catalog search, current price offers, edition comparisons or active sales, rather than general web search.
Requirements
A remote streamable HTTP endpoint at dtmframe.com; no packages, environment variables or headers are declared. The catalog and offers are oriented to the Japan region by default.
Before you install
The comparison and purchase-resolution tools are described as computation only, but they return prices and offers that reflect one channel's disclosure policy and a published snapshot, so figures may be partial or dated. Treat prices, tax and shipping status as informational and verify before buying.

Installation

In SourceWeft

  1. Open DTMFRAME in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/com.dtmframe%2Fdtmframe/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "dtmframe": {
      "type": "http",
      "url": "https://dtmframe.com/mcp/"
    }
  }
}

Tools

5

search_products

Search products

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, or by a free-text product name (q). 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. Optional q (up to 200 characters) is a product name as typed: any spelling, katakana, hiragana or romaji; shopping words such as セール, 最安, sale or upgrade are ignored. A maker name at the start or end is set aside and the rest is matched against that maker's products only (Sennheiser e 935 matches e935 exactly); a model of another maker or an unlisted model gives 0 products. It is matched like the site's own search (exact, prefix, substring, several words, then similar spellings that begin like the query, carry the same numbers and, for several words, cover the last word); a product type or category word (reverb, リバーブ, コンプ, ヘッドフォン) answers with up to 20 products of that type. Typed filters narrow q before the cut to 20. At most 20 products, in match order; matched_alias is the registered spelling that matched and match_kind how (exact, prefix, substring, tokens, fuzzy, role, category); with a maker name, fuzzy only covers a typing error in a listed product name (a word with digits, such as a model number, has to match exactly), and without one it can be a sibling model. No match: 0 products with unresolved_constraints=[q_unresolved]. More than 20 matches: limits_hit=[result_limit] and search_complete=false, and next_cursor pages only within the 20. alias takes precedence over q; a q cursor is valid only for the same q and filters. q is used only to compute the

Parametersqosaliasbrandlimitcursorformatlicensecategoryproduct_id

get_current_offers

Get current offers

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. An offer past fresh_until has presentation_state stale: its price is the last checked price (see checked_at) and it is not a basis for a lowest price, budget fit, cheapest cost or list_deals prices_from; expired offers are not returned. An offer priced in another currency may carry converted (a yen estimate: amount_minor, display such as 約¥7,800, rate_source ecb_eurofxref, rate_reference_date, rate_basis direct or cross_via_eur, and basis_note, a fixed English sentence saying that this site computed the estimate from the European Central Bank's reference rates of that date and that it is not a price) that is not used for ordering, budget fit, cheapest cost or lowest_observed. field_availability.offers is not_recorded when no offer of the product has been recorded. customer_segment is general, or existing_owner, education or nfr for a row the store names as an upgrade, crossgrade, update, EDU or NFR edition (maker and distributor names are not read). Rows that are not general stay in this list with their segment and are not used for a product's default price, lowest price, list_deals prices_from or largest_discount_percent; lowest_observed has no element for editions named upgrade, crossgrade, update, EDU or NFR. 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

Parametersregionconditionproduct_idrequired

resolve_purchase_request

Resolve a purchase request

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). A price is taken from the default confirmed-route class first (a maker store or a confirmed authorized dealer selling new; for hardware also domestic distribution); when a cheaper confirmed listing of the same edition lies outside that class, the candidate's mismatches state it with its amount. search_complete=false with optimality_scope=best_found marks an answer cut at a limit, a free-text term that looks like a product name (Latin letters, digits or katakana) but matches no registered alias (unresolved_constraints no_alias_match), or no candidates (no_candidates). Free-text aliases match whole words only. With a budget, candidates are ordered by budget_fit first (confirmed, estimated_with

Parametersmoderequiredquerydetaillocaleregionconstraintsmax_candidatesowned_editionsschema_versionrequiredownership_claimsuser_supplied_prices

compare_products

Compare editions

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. cheapest_cost is taken from the default confirmed-route class first, as in resolve_purchase_request; an edition with a cheaper confirmed listing outside that class is named in assumptions (key cheapest_cost_default_route_first, value the edition id, note_ja with the amount). An edition with no price in the requested currency keeps cheapest_cost in the original currency, with budget_fit unknown and the assumption key cheapest_cost_foreign_currency (value the edition id); cheapest_cost may carry converted (a yen estimate: amount_minor, display such as 約¥7,800, rate_source ecb_eurofxref, rate_reference_date, rate_basis direct or cross_via_eur, and basis_note, a fixed English sentence saying that this site computed the estimate from the European Central Bank's reference rates of that date and that it is not a price) that is not used for ordering, budget fit, cheapest cost or lowest_observed. Each row's price_checked_at is the check time of that price. Stale offers (past fresh_until) are not used for cheapest_cost. A general edition is priced from general rows only; a named restricted edition (upgrade, crossgrade, update, EDU or NFR) is priced from its own rows, with customer_segment on cheapest_cost, eligibility_status conditional and the assumption restricted_edition_price once per segment. A row whose edition the site has measured itself also carries measurements in full:

Parametersdetaillocaleregionconstraintsedition_idsrequiredschema_versionrequiredownership_claimsuser_supplied_prices

list_deals

List sales and campaigns

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 general-segment offers this channel may disclose, stale offers excluded, with a display string; a sale with only restricted rows has prices_from [] and field_availability.prices_from unknown), and the largest discount against the merchant's own reference price among the general-segment offers this channel may disclose (per-period prices of subscription or rent-to-own editions count in neither). has_free_item is true when a disclosable offer of the sale is free (a 100% discount or a price of 0); a giveaway known only from an announcement has kind giveaway and no linked offers, so its has_free_item is false. 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.

Parameterskindbrandlimitstatecursorsourcecategory

Version history

3
  1. v0.1.2LatestOct 11, 2026
  2. v0.1.1Sep 30, 2026
  3. v0.1.0Sep 25, 2026

Score

83% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts

    Declare a GitHub repository with a README, or serve resource_documentation in the OAuth protected-resource metadata.

  • LicenseNot applicable

    A hosted service is used under its provider's terms, so no license is expected here. This check is left out of the percentage.