~ · home · engineering-construction permit-application · 8

Permit Application

Query this niche via MCPniche_report({ niche: "permit-application" })
active marketmarket pulse 50/100commercial money present0 new builders in 30d8 listings
basis: all observed monthly plans · commercial-form-v2
Agents · median
None priced — too few for a Agents median.
MCP servers · median
None priced — too few for a MCP servers median.

All plansAgents vs MCPs

each dot = one provider · log scale
No providers priced at the All tier yet.

All plans

0 priced
Providervs its cohort medianMonthly
Position is relative to the provider's own delivery-type median at this tier — never a blended one.
This page is the human view of the MCP answer. The same structured `niche_report` / `price_benchmark` an agent receives over MCP or REST.
niche_reportprice_benchmark
See the MCP response behind this pageniche_report
{
  "niche": "permit-application",
  "parent_sector": "engineering-construction",
  "provider_type_pricing": {
    "slug": "permit-application",
    "pricing_basis": "lowest_observed_monthly_usd",
    "provider_type_methodology": "commercial-form-v2",
    "provider_type_methodology_published_at": "2026-07-31",
    "blended": {
      "median": 49,
      "p25": null,
      "p75": null,
      "providers": 1
    },
    "by_provider_type": {
      "agent": {
        "median": null,
        "p25": null,
        "p75": null,
        "providers": 0,
        "publishable": false,
        "confidence": "insufficient",
        "reason": "Fewer than three comparable priced Agent-economy products are available."
      },
      "mcp": {
        "median": null,
        "p25": null,
        "p75": null,
        "providers": 1,
        "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": "emerging",
  "observed_node_count": 3,
  "adjacent_niches": [
    "construction-estimating-takeoff",
    "bim-coordination",
    "subcontractor-bid-comparison",
    "quantity-surveying",
    "ai-construction-pm",
    "change-order-management"
  ],
  "market_pulse": {
    "pulse": 50,
    "drivers": [
      "enterprise money present"
    ],
    "price_move_30d_pct": null,
    "money_share": 0.6666666666666666,
    "entry_rate": 0,
    "alive_share": 1
  },
  "price_move": {
    "d_pct": 0,
    "w_pct": 0,
    "m_pct": 0,
    "comparable_agents": 2,
    "quarantined_agents": 0,
    "confidence": "thin",
    "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
      ],
      "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
      ],
      "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
      ],
      "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
      ]
    },
    "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": 1,
      "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": 3,
    "byPersona": {
      "free": {
        "n": 1,
        "nPriced": 0,
        "reliability": "none",
        "median": null,
        "p25": null,
        "p75": null,
        "min": null,
        "max": null,
        "usageShare": 0
      },
      "individual": {
        "n": 1,
        "nPriced": 1,
        "reliability": "none",
        "median": 49,
        "p25": 49,
        "p75": 49,
        "min": 49,
        "max": 49,
        "usageShare": 0
      },
      "pro": {
        "n": 1,
        "nPriced": 1,
        "reliability": "none",
        "median": 149,
        "p25": 149,
        "p75": 149,
        "min": 149,
        "max": 149,
        "usageShare": 0
      },
      "team_sme": {
        "n": 1,
        "nPriced": 1,
        "reliability": "none",
        "median": 297,
        "p25": 297,
        "p75": 297,
        "min": 297,
        "max": 297,
        "usageShare": 1
      },
      "enterprise": {
        "n": 2,
        "nPriced": 0,
        "reliability": "none",
        "median": null,
        "p25": null,
        "p75": null,
        "min": null,
        "max": 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": 1,
        "p25": null,
        "median": null,
        "p75": null,
        "confidence": "none",
        "usageShare": 0,
        "mixedBilling": false,
        "monthlyComparable": false
      },
      "team_sme": {
        "nMonthly": 0,
        "p25": null,
        "median": null,
        "p75": null,
        "confidence": "none",
        "usageShare": 1,
        "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": {
        "promo": 1,
        "ambiguous_cadence": 2
      },
      "evidence": {
        "status": "single_observation",
        "single_observations": [
          {
            "tier": "individual",
            "unit": "flat",
            "provider": "permits",
            "monthly_usd": 49
          },
          {
            "tier": "pro",
            "unit": "flat",
            "provider": "permits",
            "monthly_usd": 149
          }
        ],
        "observed_offers": [
          {
            "billing": "monthly",
            "unit": "flat",
            "count": 2,
            "offers": [
              {
                "provider": "permits",
                "tier": "individual",
                "billing": "monthly",
                "unit": "flat",
                "price": "$49 /mo",
                "monthly_usd": 49
              },
              {
                "provider": "permits",
                "tier": "pro",
                "billing": "monthly",
                "unit": "flat",
                "price": "$149 /mo",
                "monthly_usd": 149
              }
            ]
          },
          {
            "billing": "unspecified_period",
            "unit": "flat",
            "count": 2,
            "offers": [
              {
                "provider": "permits",
                "tier": "enterprise",
                "billing": "unspecified_period",
                "unit": "flat",
                "price": "Let's talk",
                "monthly_usd": null
              },
              {
                "provider": "v7labs_zoning_agent",
                "tier": "enterprise",
                "billing": "unspecified_period",
                "unit": "flat",
                "price": "Custom pricing",
                "monthly_usd": null
              }
            ]
          }
        ],
        "coverage": {
          "priced_providers": 2,
          "normalized_observations": 2,
          "comparable_providers": 1,
          "strict_cohorts": 0,
          "exclusion_reasons": {
            "promo": 1,
            "ambiguous_cadence": 2
          }
        }
      }
    },
    "billingMix": {
      "usage": 1,
      "freemium": 1,
      "contact_sales": 1
    },
    "freeTierShare": 0.33,
    "medianLowestUsd": 49
  },
  "movement": null,
  "index_series": {
    "series": [
      {
        "day": "2026-07-09",
        "index": 100,
        "pairs": 3,
        "dayChangePct": 0
      },
      {
        "day": "2026-07-10",
        "index": 100,
        "pairs": 3,
        "dayChangePct": 0
      },
      {
        "day": "2026-07-11",
        "index": 100,
        "pairs": 3,
        "dayChangePct": 0
      },
      {
        "day": "2026-07-12",
        "index": 100,
        "pairs": 2,
        "dayChangePct": 0
      },
      {
        "day": "2026-07-13",
        "index": 100,
        "pairs": 2,
        "dayChangePct": 0
      },
      {
        "day": "2026-07-14",
        "index": 100,
        "pairs": 2,
        "dayChangePct": 0
      },
      {
        "day": "2026-07-15",
        "index": 100,
        "pairs": 2,
        "dayChangePct": 0
      },
      {
        "day": "2026-07-16",
        "index": 100,
        "pairs": 2,
        "dayChangePct": 0
      },
      {
        "day": "2026-07-17",
        "index": 100,
        "pairs": 2,
        "dayChangePct": 0
      },
      {
        "day": "2026-07-18",
        "index": 100,
        "pairs": 2,
        "dayChangePct": 0
      },
      {
        "day": "2026-07-19",
        "index": 100,
        "pairs": 2,
        "dayChangePct": 0
      },
      {
        "day": "2026-07-20",
        "index": 100,
        "pairs": 2,
        "dayChangePct": 0
      },
      {
        "day": "2026-07-21",
        "index": 100,
        "pairs": 2,
        "dayChangePct": 0
      },
      {
        "day": "2026-07-22",
        "index": 100,
        "pairs": 2,
        "dayChangePct": 0
      },
      {
        "day": "2026-07-23",
        "index": 100,
        "pairs": 2,
        "dayChangePct": 0
      },
      {
        "day": "2026-07-24",
        "index": 100,
        "pairs": 2,
        "dayChangePct": 0
      },
      {
        "day": "2026-07-25",
        "index": 100,
        "pairs": 2,
        "dayChangePct": 0
      },
      {
        "day": "2026-07-26",
        "index": 100,
        "pairs": 2,
        "dayChangePct": 0
      },
      {
        "day": "2026-07-27",
        "index": 100,
        "pairs": 2,
        "dayChangePct": 0
      },
      {
        "day": "2026-07-28",
        "index": 100,
        "pairs": 2,
        "dayChangePct": 0
      },
      {
        "day": "2026-07-29",
        "index": 100,
        "pairs": 2,
        "dayChangePct": 0
      },
      {
        "day": "2026-07-30",
        "index": 100,
        "pairs": 2,
        "dayChangePct": 0
      },
      {
        "day": "2026-07-31",
        "index": 100,
        "pairs": 2,
        "dayChangePct": 0
      },
      {
        "day": "2026-08-01",
        "index": 100,
        "pairs": 2,
        "dayChangePct": 0
      },
      {
        "day": "2026-08-02",
        "index": 100,
        "pairs": 2,
        "dayChangePct": 0
      },
      {
        "day": "2026-08-03",
        "index": 100,
        "pairs": 2,
        "dayChangePct": 0
      },
      {
        "day": "2026-08-04",
        "index": 100,
        "pairs": 2,
        "dayChangePct": 0
      },
      {
        "day": "2026-08-05",
        "index": 100,
        "pairs": 2,
        "dayChangePct": 0
      },
      {
        "day": "2026-08-06",
        "index": 100,
        "pairs": 2,
        "dayChangePct": 0
      },
      {
        "day": "2026-08-07",
        "index": 100,
        "pairs": 2,
        "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": "maximeproulx4_montrealpermit_1",
      "name": "Maximeproulx4 Montrealpermit 1",
      "url": "https://storelinesolutions.com/",
      "short_summary": "provides structured, real-time access to building permit data from the City of Montreal",
      "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": "high",
      "upvotes": 0
    },
    {
      "agent_id": "montrealpermitoracle2",
      "name": "MontrealPermitOracle",
      "url": "https://montreal-permit-fetch--maximeproulx.replit.app",
      "short_summary": "provides real-time access to building permit data from the City of Montreal",
      "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": "high",
      "upvotes": 0
    },
    {
      "agent_id": "permits",
      "name": "Permits",
      "url": "https://signedoff.io/developers/mcp",
      "short_summary": "looks up live building permit status from official US city portals",
      "price": {
        "observed": true,
        "billing": "freemium",
        "lowest_monthly_usd": 49,
        "monthly_usd": 49,
        "headline": "Free tier, then from $49/mo",
        "summary": "Free tier, then from $49/mo. SignedOff offers a permanent free API tier with 200 requests per month, Developer at $49/month with 5,000 requests, Pro at $149/month with 25,000 requests, and custom Enterprise pricing."
      },
      "evidence_quality": "high",
      "upvotes": 0
    },
    {
      "agent_id": "spark",
      "name": "Spark",
      "url": "https://sparkhq.ai/",
      "short_summary": "Analyzes permitting, zoning, competitive intelligence, and community sentiment for energy infrastructure site selection and development diligence",
      "price": {
        "observed": false,
        "billing": "not_found",
        "lowest_monthly_usd": null,
        "monthly_usd": null,
        "headline": "No public price found",
        "summary": "No public pricing plans or subscription rates are shown; visitors are directed to book a demo or order a permit matrix."
      },
      "evidence_quality": "high",
      "upvotes": 0
    },
    {
      "agent_id": "permitify",
      "name": "Permitify",
      "url": "https://permitify.com/",
      "short_summary": "AI-assisted site analysis for land development due diligence, helping teams make go/no-go decisions by evaluating zoning, constraints, and feasibility",
      "price": {
        "observed": true,
        "billing": "usage",
        "lowest_monthly_usd": null,
        "monthly_usd": null,
        "headline": "Paid (price not published)",
        "summary": "Permitify charges $297 per plan-set review with no subscription, login, or contract required."
      },
      "evidence_quality": "medium",
      "upvotes": 0
    },
    {
      "agent_id": "v7labs_zoning_agent",
      "name": "V7labs Zoning Agent",
      "url": "https://www.v7labs.com/agents/ai-zoning-code-analysis-agent",
      "short_summary": "automates zoning analysis by reading municipal codes, extracting regulations, assessing development feasibility, identifying constraints/variances, and generat…",
      "price": {
        "observed": true,
        "billing": "contact_sales",
        "lowest_monthly_usd": null,
        "monthly_usd": null,
        "headline": "Contact sales (no public price)",
        "summary": "V7 offers custom pricing based on platform access, users, and document processing volume."
      },
      "evidence_quality": "medium",
      "upvotes": 0
    },
    {
      "agent_id": "nerviom",
      "name": "Nerviom",
      "url": "https://nerviom.com/",
      "short_summary": "automates AI workflows for infrastructure site predevelopment and permitting, surfacing zoning, compliance, and interconnection risks",
      "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": "low",
      "upvotes": 0
    },
    {
      "agent_id": "try_upagents_ai",
      "name": "Try Upagents Ai",
      "url": "https://upagents.app/agents-for/architecture-engineering/environmental-technician/permit-application-review",
      "short_summary": "Drafts, reviews, and organizes environmental permit application documents and checks regulatory compliance",
      "price": {
        "observed": false,
        "billing": "not_found",
        "lowest_monthly_usd": null,
        "monthly_usd": null,
        "headline": "No public price found",
        "summary": "The page does not show a reliable public price; the visible dollar amounts are ROI estimates rather than agent pricing."
      },
      "evidence_quality": "low",
      "upvotes": 0
    }
  ],
  "platforms_also_here": [
    {
      "agent_id": "klutch_ai",
      "name": "Klutch Ai",
      "url": "https://klutch.ai/",
      "short_summary": "AI-powered construction management platform with specialized agents for document search, permit review, jobsite updates, bid leveling, warranty support, and fi…",
      "price": {
        "observed": false,
        "billing": "not_found",
        "lowest_monthly_usd": null,
        "monthly_usd": null,
        "headline": "No public price found",
        "summary": "No reliable public plan pricing or billing terms were visible on the homepage."
      },
      "home_niche": "ai-construction-pm",
      "also_covers": true,
      "upvotes": 0
    }
  ],
  "page_url": "https://agentery.com/market/permit-application",
  "summary": {
    "niche": "permit-application",
    "sector": "engineering-construction",
    "pricing_by_provider_type": {
      "headline": "No published benchmark for permit-application 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": "permit-application"
        },
        "note": "add provider_type + buyer_tier for a specific cohort"
      }
    },
    "page_url": "https://agentery.com/market/permit-application",
    "counts": {
      "listings_with_price_capture": 8,
      "listings_with_observed_public_price": 3,
      "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": "flat",
        "provider": "permits",
        "monthly_usd": 49
      },
      {
        "tier": "pro",
        "unit": "flat",
        "provider": "permits",
        "monthly_usd": 149
      }
    ],
    "pricing_coverage": {
      "listings_with_price_capture": 8,
      "listings_with_observed_public_price": 3,
      "normalized_observations": 2,
      "comparable_providers": 1,
      "strict_cohorts": 0,
      "exclusion_reasons": {
        "promo": 1,
        "ambiguous_cadence": 2
      }
    },
    "pricing_note": "Only ONE provider in this niche publishes a comparable price — returned as a single observation, NOT a benchmark, median or fair price. See adjacent_pricing or confirm the niche to widen the sample.",
    "pricing_excluded_observations": {
      "promo": 1,
      "ambiguous_cadence": 2
    },
    "billing_mix": {
      "usage": 1,
      "freemium": 1,
      "contact_sales": 1
    },
    "free_tier_share": 0.33,
    "top_providers": [
      {
        "agent_id": "maximeproulx4_montrealpermit_1",
        "name": "Maximeproulx4 Montrealpermit 1",
        "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": "montrealpermitoracle2",
        "name": "MontrealPermitOracle",
        "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": "permits",
        "name": "Permits",
        "price": {
          "observed": true,
          "billing": "freemium",
          "lowest_monthly_usd": 49,
          "monthly_usd": 49,
          "headline": "Free tier, then from $49/mo",
          "summary": "Free tier, then from $49/mo. SignedOff offers a permanent free API tier with 200 requests per month, Developer at $49/month with 5,000 requests, Pro at $149/month with 25,000 requests, and custom Enterprise pricing."
        },
        "observed": true
      },
      {
        "agent_id": "spark",
        "name": "Spark",
        "price": {
          "observed": false,
          "billing": "not_found",
          "lowest_monthly_usd": null,
          "monthly_usd": null,
          "headline": "No public price found",
          "summary": "No public pricing plans or subscription rates are shown; visitors are directed to book a demo or order a permit matrix."
        },
        "observed": false
      },
      {
        "agent_id": "permitify",
        "name": "Permitify",
        "price": {
          "observed": true,
          "billing": "usage",
          "lowest_monthly_usd": null,
          "monthly_usd": null,
          "headline": "Paid (price not published)",
          "summary": "Permitify charges $297 per plan-set review with no subscription, login, or contract required."
        },
        "observed": true
      }
    ],
    "suggested_next_calls": [
      {
        "tool": "price_benchmark",
        "arguments": {
          "niche": "permit-application"
        },
        "purpose": "full observed price distribution + per-tier medians for this niche"
      },
      {
        "tool": "niche_report",
        "arguments": {
          "niche": "permit-application",
          "response_mode": "full"
        },
        "purpose": "the complete report incl. index series and tier decomposition"
      },
      {
        "tool": "suggest_alternatives",
        "arguments": {
          "agent_id": "maximeproulx4_montrealpermit_1"
        },
        "purpose": "comparable (optionally cheaper) providers to a named agent"
      },
      {
        "tool": "get_agent_profile",
        "arguments": {
          "agent_id": "maximeproulx4_montrealpermit_1"
        },
        "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.

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.