Legacy Code Modernization
Query this niche via MCP
market_report({ query: "Legacy Code Modernization", response_mode: "summary" })Agents · median
MCP servers · median
All plans — Agents vs MCPs
each dot = one provider · log scaleNo providers priced at the All tier yet.
All plans
0 pricedProvidervs its cohort medianMonthly
Position is relative to the provider's own delivery-type median at this tier — never a blended one.
What the figures on this page are. This page is Agentery's fixed-niche view of Legacy Code Modernization (latest observation 2026-09-25T05:12:16.014Z). The headline medians above are computed from that data per delivery type and buyer-tier tab: on a tier tab, the median of each provider's plan at that tier; on “All”, every priced plan point across tiers pooled. Small cohorts show as “too few” rather than a median. The embedded response below is the broader fixed-niche report: its
by_provider_type.*.median pools all tiers, pricing.byPersona.* is per buyer tier, and the unit cohorts (e.g. Pro flat) are per tier and billing unit — so those blocks legitimately differ from one headline figure. Over MCP today the advertised tools are market_report (a semantic neighbourhood for your query, not this fixed niche) and price_benchmark (query/task); niche_report stays callable as a legacy alias. Their cohorts are defined differently, so their numbers can differ from this page.market_reportprice_benchmark
See the MCP response behind this pagefixed-niche report (legacy niche_report alias, full mode) — broader than the headline figure
{
"niche": "legacy-code-modernization",
"parent_sector": "developer-tools-infra",
"provider_type_pricing": {
"slug": "legacy-code-modernization",
"pricing_basis": "lowest_observed_monthly_usd",
"provider_type_methodology": "commercial-form-v2",
"provider_type_methodology_published_at": "2026-07-31",
"blended": {
"median": 33.28,
"p25": null,
"p75": null,
"providers": 1
},
"by_provider_type": {
"agent": {
"median": null,
"p25": null,
"p75": null,
"providers": 1,
"publishable": false,
"confidence": "insufficient",
"reason": "Fewer than three comparable priced Agent-economy products are available."
},
"mcp": {
"median": null,
"p25": null,
"p75": null,
"providers": 0,
"publishable": false,
"confidence": "insufficient",
"reason": "Fewer than three comparable priced MCP servers are available."
}
},
"recommended_cohort": null,
"recommendation_reason": "Choose the cohort according to the commercial delivery type being assessed.",
"fallback_context": null,
"context_note": null
},
"crowding_level": "empty",
"observed_node_count": 0,
"adjacent_niches": [
"ai-frontend-coding",
"mcp-platform-provider",
"incident-response-sre",
"on-call-management-agent",
"infrastructure-provisioning-iac",
"database-query-agent"
],
"market_pulse": {
"pulse": 27,
"drivers": [
"18% of listings unresponsive"
],
"price_move_30d_pct": null,
"money_share": null,
"entry_rate": 0,
"alive_share": 0.8181818181818182
},
"price_move": {
"d_pct": 0,
"w_pct": 0,
"m_pct": 0,
"comparable_agents": 1,
"quarantined_agents": 0,
"confidence": "insufficient",
"published": {
"d": false,
"w": false,
"m": false
},
"held_reason": {
"d": null,
"w": null,
"m": null
},
"driver": {
"d": null,
"w": null,
"m": null
},
"tier_contribution": {
"d": {
"individual": 0,
"pro": 0,
"team_sme": 0,
"enterprise": 0
},
"w": {
"individual": 0,
"pro": 0,
"team_sme": 0,
"enterprise": 0
},
"m": {
"individual": 0,
"pro": 0,
"team_sme": 0,
"enterprise": 0
}
},
"tier_series": {
"individual": [
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100
],
"pro": [
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100
],
"team_sme": [
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100
],
"enterprise": [
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100,
100
]
},
"tier_own_move": {
"d": {
"individual": 0,
"pro": 0,
"team_sme": 0,
"enterprise": 0
},
"w": {
"individual": 0,
"pro": 0,
"team_sme": 0,
"enterprise": 0
},
"m": {
"individual": 0,
"pro": 0,
"team_sme": 0,
"enterprise": 0
}
},
"tier_agents": {
"individual": 1,
"pro": 0,
"team_sme": 1,
"enterprise": 0
},
"obs_range": {
"d": null,
"w": null,
"m": null
},
"tier_obs_range": {
"d": {
"individual": null,
"pro": null,
"team_sme": null,
"enterprise": null
},
"w": {
"individual": null,
"pro": null,
"team_sme": null,
"enterprise": null
},
"m": {
"individual": null,
"pro": null,
"team_sme": null,
"enterprise": null
}
}
},
"pricing": {
"sampleSize": 8,
"observed": 1,
"byPersona": {
"free": {
"n": 0,
"nPriced": 0,
"reliability": "none",
"median": null,
"p25": null,
"p75": null,
"min": null,
"max": null,
"mean": null,
"stdev": null,
"usageShare": 0
},
"individual": {
"n": 1,
"nPriced": 1,
"reliability": "none",
"median": 29,
"p25": 29,
"p75": 29,
"min": 29,
"max": 29,
"mean": 29,
"stdev": 0,
"usageShare": 0
},
"pro": {
"n": 0,
"nPriced": 0,
"reliability": "none",
"median": null,
"p25": null,
"p75": null,
"min": null,
"max": null,
"mean": null,
"stdev": null,
"usageShare": 0
},
"team_sme": {
"n": 1,
"nPriced": 1,
"reliability": "none",
"median": 49,
"p25": 49,
"p75": 49,
"min": 49,
"max": 49,
"mean": 49,
"stdev": 0,
"usageShare": 0
},
"enterprise": {
"n": 1,
"nPriced": 0,
"reliability": "none",
"median": null,
"p25": null,
"p75": null,
"min": null,
"max": null,
"mean": null,
"stdev": null,
"usageShare": 0
}
},
"byPersonaMonthly": {
"free": {
"nMonthly": 0,
"p25": null,
"median": null,
"p75": null,
"confidence": "none",
"usageShare": 0,
"mixedBilling": false,
"monthlyComparable": false
},
"individual": {
"nMonthly": 1,
"p25": null,
"median": null,
"p75": null,
"confidence": "none",
"usageShare": 0,
"mixedBilling": false,
"monthlyComparable": false
},
"pro": {
"nMonthly": 0,
"p25": null,
"median": null,
"p75": null,
"confidence": "none",
"usageShare": 0,
"mixedBilling": false,
"monthlyComparable": false
},
"team_sme": {
"nMonthly": 1,
"p25": null,
"median": null,
"p75": null,
"confidence": "none",
"usageShare": 0,
"mixedBilling": false,
"monthlyComparable": false
},
"enterprise": {
"nMonthly": 0,
"p25": null,
"median": null,
"p75": null,
"confidence": "none",
"usageShare": 0,
"mixedBilling": false,
"monthlyComparable": false
}
},
"byTierCohorts": {
"status": "insufficient",
"cohorts": [],
"rejected": {
"ambiguous_cadence": 1
},
"evidence": {
"status": "single_observation",
"single_observations": [
{
"tier": "individual",
"unit": "per_seat",
"provider": "nanoapi",
"monthly_usd": 33.06
},
{
"tier": "team_sme",
"unit": "per_seat",
"provider": "nanoapi",
"monthly_usd": 55.86
}
],
"observed_offers": [
{
"billing": "monthly",
"unit": "per_seat",
"count": 2,
"offers": [
{
"provider": "nanoapi",
"tier": "individual",
"billing": "monthly",
"unit": "per_seat",
"price": "€29per seat / month",
"monthly_usd": 33.06
},
{
"provider": "nanoapi",
"tier": "team_sme",
"billing": "monthly",
"unit": "per_seat",
"price": "€49per seat / month",
"monthly_usd": 55.86
}
]
},
{
"billing": "unspecified_period",
"unit": "flat",
"count": 1,
"offers": [
{
"provider": "nanoapi",
"tier": "enterprise",
"billing": "unspecified_period",
"unit": "flat",
"price": "Custom",
"monthly_usd": null
}
]
}
],
"coverage": {
"priced_providers": 1,
"normalized_observations": 2,
"comparable_providers": 1,
"strict_cohorts": 0,
"exclusion_reasons": {
"ambiguous_cadence": 1
}
}
}
},
"quoteOnlyProvidersByTier": {
"individual": 0,
"team_sme": 0,
"enterprise": 1
},
"billingMix": {
"freemium": 1
},
"freeTierShare": 1,
"medianLowestUsd": 38.2
},
"movement": null,
"index_series": {
"series": [
{
"day": "2026-08-27",
"index": 100,
"pairs": 3,
"dayChangePct": 0
},
{
"day": "2026-08-28",
"index": 100,
"pairs": 3,
"dayChangePct": 0
},
{
"day": "2026-08-29",
"index": 100,
"pairs": 3,
"dayChangePct": 0
},
{
"day": "2026-08-30",
"index": 100,
"pairs": 3,
"dayChangePct": 0
},
{
"day": "2026-08-31",
"index": 100,
"pairs": 3,
"dayChangePct": 0
},
{
"day": "2026-09-01",
"index": 100,
"pairs": 3,
"dayChangePct": 0
},
{
"day": "2026-09-02",
"index": 100,
"pairs": 3,
"dayChangePct": 0
},
{
"day": "2026-09-03",
"index": 100,
"pairs": 3,
"dayChangePct": 0
},
{
"day": "2026-09-04",
"index": 100,
"pairs": 3,
"dayChangePct": 0
},
{
"day": "2026-09-05",
"index": 100,
"pairs": 3,
"dayChangePct": 0
},
{
"day": "2026-09-06",
"index": 100,
"pairs": 3,
"dayChangePct": 0
},
{
"day": "2026-09-07",
"index": 100,
"pairs": 3,
"dayChangePct": 0
},
{
"day": "2026-09-08",
"index": 100,
"pairs": 3,
"dayChangePct": 0
},
{
"day": "2026-09-09",
"index": 100,
"pairs": 3,
"dayChangePct": 0
},
{
"day": "2026-09-10",
"index": 100,
"pairs": 3,
"dayChangePct": 0
},
{
"day": "2026-09-11",
"index": 100,
"pairs": 3,
"dayChangePct": 0
},
{
"day": "2026-09-12",
"index": 100,
"pairs": 3,
"dayChangePct": 0
},
{
"day": "2026-09-13",
"index": 100,
"pairs": 3,
"dayChangePct": 0
},
{
"day": "2026-09-14",
"index": 100,
"pairs": 3,
"dayChangePct": 0
},
{
"day": "2026-09-15",
"index": 100,
"pairs": 3,
"dayChangePct": 0
},
{
"day": "2026-09-16",
"index": 100,
"pairs": 3,
"dayChangePct": 0
},
{
"day": "2026-09-17",
"index": 100,
"pairs": 3,
"dayChangePct": 0
},
{
"day": "2026-09-18",
"index": 100,
"pairs": 3,
"dayChangePct": 0
},
{
"day": "2026-09-19",
"index": 100,
"pairs": 3,
"dayChangePct": 0
},
{
"day": "2026-09-20",
"index": 100,
"pairs": 3,
"dayChangePct": 0
},
{
"day": "2026-09-21",
"index": 100,
"pairs": 3,
"dayChangePct": 0
},
{
"day": "2026-09-22",
"index": 100,
"pairs": 1,
"dayChangePct": 0
},
{
"day": "2026-09-23",
"index": 100,
"pairs": 1,
"dayChangePct": 0
},
{
"day": "2026-09-24",
"index": 100,
"pairs": 1,
"dayChangePct": 0
},
{
"day": "2026-09-25",
"index": 100,
"pairs": 1,
"dayChangePct": 0
}
],
"latest": 100,
"day_change_pct": 0,
"methodology": "Chained daily price index, base 100 on the first priced scan day (29 Jun 2026). The overall index is the COMPOSITE of the four buyer-tier indices (individual / pro / team&sme / enterprise): each day it moves by the equal-weighted average of the tiers' moves. Each tier index is like-for-like — only agents priced on both consecutive scan days (per-agent ratios, geometric mean, clipped to [0.2, 5]) — so composition changes (agents revealing or hiding prices) can never move it."
},
"top_agents": [
{
"agent_id": "zsh52013148087_metabase_mcp",
"name": "Metabase Analytics Integration Server",
"url": "https://smithery.ai/server/zsh52013148087/metabase-mcp",
"short_summary": "Enable AI assistants to seamlessly interact with your Metabase analytics platform. Access dashboards, cards, databases, and execute queries directly through co…",
"price": {
"observed": false,
"billing": "not_found",
"lowest_monthly_usd": null,
"monthly_usd": null,
"headline": "No public price found",
"summary": "No public pricing is shown for this Metabase analytics integration server."
},
"evidence_quality": "low",
"upvotes": 0
},
{
"agent_id": "codedebrief",
"name": "Codedebrief",
"url": "https://ferdinandobons.github.io/CodeDebrief/",
"short_summary": "MCP server that generates source-grounded workflow diagrams from local codebases for coding agents. Enables agents to query bounded workflow slices with source…",
"price": {
"observed": false,
"billing": "not_found",
"lowest_monthly_usd": null,
"monthly_usd": null,
"headline": "No public price found",
"summary": "No public price found on the vendor site."
},
"evidence_quality": "unclear",
"upvotes": 0
},
{
"agent_id": "codelogic",
"name": "Codelogic",
"url": "https://codelogic.com/",
"short_summary": "AI-powered autonomous agent that automates library and framework upgrades for software teams, handling discovery, implementation, testing, and iteration at sca…",
"price": {
"observed": false,
"billing": "failed_to_load",
"lowest_monthly_usd": null,
"monthly_usd": null,
"headline": "No public price found",
"summary": "No public price found on the vendor site."
},
"evidence_quality": "unclear",
"upvotes": 0
},
{
"agent_id": "legacy_modernization_agents",
"name": "Legacy Modernization Agents",
"url": "https://github.com/Azure-Samples/Legacy-Modernization-Agents",
"short_summary": "AI-powered agents for converting legacy COBOL code to Java Quarkus or C# .NET. Uses Microsoft Agent Framework with multi-provider architecture to analyze depen…",
"price": {
"observed": false,
"billing": "not_found",
"lowest_monthly_usd": null,
"monthly_usd": null,
"headline": "No public price found",
"summary": "No public SaaS pricing plans are shown for this GitHub repository."
},
"evidence_quality": "unclear",
"upvotes": 0
},
{
"agent_id": "nanoapi",
"name": "Nanoapi",
"url": "https://nanoapi.io",
"short_summary": "Enterprise software architecture platform with AI Solution Architect agent (Saul) that visualizes codebases, predicts outages, and coordinates deployments for…",
"price": {
"commercial": {
"currency": "EUR",
"notes": [
"prices in EUR as published; USD figures are conversions at 2026-10-14"
],
"lines": [
{
"name": "Open Source",
"price": "Freeforever",
"kind": "unknown"
},
{
"name": "Developer",
"price": "€29per seat / month",
"kind": "unknown"
},
{
"name": "Business",
"price": "€49per seat / month",
"kind": "unknown"
},
{
"name": "Enterprise",
"price": "Custom",
"kind": "custom"
}
]
},
"observed": true,
"billing": "freemium",
"lowest_monthly_usd": null,
"monthly_usd": null,
"headline": "Contact sales (no public price)",
"summary": "Contact sales (no public price). NanoAPI offers a free open-source plan, €29-per-seat monthly Developer and €49-per-seat monthly Business plans, plus custom Enterprise pricing."
},
"evidence_quality": "unclear",
"upvotes": 0
},
{
"agent_id": "php_modernization_skill",
"name": "Php Modernization Skill",
"url": "https://github.com/netresearch/php-modernization-skill",
"short_summary": "Agent skill for modernizing PHP applications to PHP 8.x with type safety, static analysis, and architecture compliance. Provides executable tools, structured v…",
"price": {
"observed": false,
"billing": "not_found",
"lowest_monthly_usd": null,
"monthly_usd": null,
"headline": "No public price found",
"summary": "No public pricing is shown for the PHP Modernization Skill repository."
},
"evidence_quality": "unclear",
"upvotes": 0
},
{
"agent_id": "senior_architect_agent",
"name": "Senior Architect Agent",
"url": "https://github.com/aetox-skills/senior-architect-agent",
"short_summary": "AI architecture skill for mapping existing systems, documenting software architecture, generating Mermaid diagrams, and enabling agent handoff. Performs eviden…",
"price": {
"observed": false,
"billing": "not_found",
"lowest_monthly_usd": null,
"monthly_usd": null,
"headline": "No public price found",
"summary": "No public pricing was observed in the supplied homepage content."
},
"evidence_quality": "unclear",
"upvotes": 0
},
{
"agent_id": "zentis_code_modernization",
"name": "Zentis Code Modernization",
"url": "https://zentis.ai/code-modernization",
"short_summary": "Agentic AI platform that automates legacy code modernization for enterprises. Scans codebases, identifies modernization opportunities, generates updated code,…",
"price": {
"observed": false,
"billing": "not_found",
"lowest_monthly_usd": null,
"monthly_usd": null,
"headline": "No public price found",
"summary": "No public price found on the vendor site."
},
"evidence_quality": "unclear",
"upvotes": 0
}
],
"platforms_also_here": [],
"page_url": "https://agentery.com/market/legacy-code-modernization",
"summary": {
"niche": "legacy-code-modernization",
"sector": "developer-tools-infra",
"pricing_by_provider_type": {
"headline": "No published benchmark for legacy-code-modernization yet — too few comparable priced providers.",
"benchmarks": [],
"warnings": [
"No priced providers meet the benchmark bar for this scope."
],
"full_pricing_via": {
"tool": "price_benchmark",
"arguments": {
"niche": "legacy-code-modernization"
},
"note": "add provider_type + buyer_tier for a specific cohort"
}
},
"page_url": "https://agentery.com/market/legacy-code-modernization",
"counts": {
"listings_with_price_capture": 8,
"listings_with_observed_public_price": 1,
"providers_with_numeric_monthly_price_latest_scan": null,
"like_for_like_comparable_pairs": null
},
"movement": {
"d": {
"published": false,
"value_pct": null,
"held_reason": null
},
"w": {
"published": false,
"value_pct": null,
"held_reason": null
},
"m": {
"published": false,
"value_pct": null,
"held_reason": null
}
},
"pricing_version": "cohorts-1",
"pricing_status": "single_observation",
"pricing_by_tier": null,
"single_observations": [
{
"tier": "individual",
"unit": "per_seat",
"provider": "nanoapi",
"monthly_usd": 33.06
},
{
"tier": "team_sme",
"unit": "per_seat",
"provider": "nanoapi",
"monthly_usd": 55.86
}
],
"pricing_coverage": {
"listings_with_price_capture": 8,
"listings_with_observed_public_price": 1,
"normalized_observations": 2,
"comparable_providers": 1,
"strict_cohorts": 0,
"exclusion_reasons": {
"ambiguous_cadence": 1
}
},
"pricing_note": "Only ONE provider in this market publishes a comparable price — returned as a single observation, NOT a benchmark, median or fair price. See adjacent_pricing or confirm the market to widen the sample.",
"pricing_excluded_observations": {
"ambiguous_cadence": 1
},
"billing_mix": {
"freemium": 1
},
"free_tier_share": 1,
"top_providers": [
{
"agent_id": "zsh52013148087_metabase_mcp",
"name": "Metabase Analytics Integration Server",
"price": {
"observed": false,
"billing": "not_found",
"lowest_monthly_usd": null,
"monthly_usd": null,
"headline": "No public price found",
"summary": "No public pricing is shown for this Metabase analytics integration server."
},
"observed": false
},
{
"agent_id": "codedebrief",
"name": "Codedebrief",
"price": {
"observed": false,
"billing": "not_found",
"lowest_monthly_usd": null,
"monthly_usd": null,
"headline": "No public price found",
"summary": "No public price found on the vendor site."
},
"observed": false
},
{
"agent_id": "codelogic",
"name": "Codelogic",
"price": {
"observed": false,
"billing": "failed_to_load",
"lowest_monthly_usd": null,
"monthly_usd": null,
"headline": "No public price found",
"summary": "No public price found on the vendor site."
},
"observed": false
},
{
"agent_id": "legacy_modernization_agents",
"name": "Legacy Modernization Agents",
"price": {
"observed": false,
"billing": "not_found",
"lowest_monthly_usd": null,
"monthly_usd": null,
"headline": "No public price found",
"summary": "No public SaaS pricing plans are shown for this GitHub repository."
},
"observed": false
},
{
"agent_id": "nanoapi",
"name": "Nanoapi",
"price": {
"commercial": {
"currency": "EUR",
"notes": [
"prices in EUR as published; USD figures are conversions at 2026-10-14"
],
"lines": [
{
"name": "Open Source",
"price": "Freeforever",
"kind": "unknown"
},
{
"name": "Developer",
"price": "€29per seat / month",
"kind": "unknown"
},
{
"name": "Business",
"price": "€49per seat / month",
"kind": "unknown"
},
{
"name": "Enterprise",
"price": "Custom",
"kind": "custom"
}
]
},
"observed": true,
"billing": "freemium",
"lowest_monthly_usd": null,
"monthly_usd": null,
"headline": "Contact sales (no public price)",
"summary": "Contact sales (no public price). NanoAPI offers a free open-source plan, €29-per-seat monthly Developer and €49-per-seat monthly Business plans, plus custom Enterprise pricing."
},
"observed": true
}
],
"suggested_next_calls": [
{
"tool": "price_benchmark",
"arguments": {
"niche": "legacy-code-modernization"
},
"purpose": "full observed price distribution + per-tier medians for this niche"
},
{
"tool": "niche_report",
"arguments": {
"niche": "legacy-code-modernization",
"response_mode": "full"
},
"purpose": "the complete report incl. index series and tier decomposition"
},
{
"tool": "suggest_alternatives",
"arguments": {
"agent_id": "zsh52013148087_metabase_mcp"
},
"purpose": "comparable (optionally cheaper) providers to a named agent"
},
{
"tool": "get_agent_profile",
"arguments": {
"agent_id": "zsh52013148087_metabase_mcp"
},
"purpose": "full profile, integrations and pricing for one provider"
}
]
}
}Full market
1 providers, one sortable view
Dense enough for many listings; progressive disclosure keeps mobile usable.
ProviderTypeFromVs niche medianLiveness
Showing only providers with a published price or a free plan. $29 = lowest observed monthly · Free = free to use · Free tier = free plan + paid options.
