Citiwise

UDCPR 2020 (Maharashtra) feasibility for a plot, with the clause behind every number.

我該用這個嗎

品質與安全性

A
說明品質
90%
結構描述完整度
91%
命名品質
91%
汙染風險
80%
權限相符程度
90%
協定合規性
100%

發現項目(4)

  • HIGHTool poisoning patterns detected
  • LOWTool 'clause' description lacks action verb在 clause 中
  • LOWTool description contains role marker that could confuse chat models在 feasibility 中
  • LOWTool 'fetch' suggests web access but openWorldHint=false在 fetch 中

根據工具定義與協定合規性的自動化分析。

上下文成本

~7,040Token(工具定義)
~7.3 KB典型回應大小
顯著的注意力影響(128k 上下文的 5.50%)

這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。

安裝

一鍵安裝

將以下內容加入你的 `claude_desktop_config.json` 檔案:

{
  "mcpServers": {
    "citiwise": {
      "url": "https://citiwise.in/mcp"
    }
  }
}

遠端端點

https://citiwise.in/mcpstreamable-http

它能做什麼

工具清單

工具(9)

🟢 唯讀🟡 寫入🔴 刪除⚪ 未知
🟢feasibility(town, area, road, area_unit, road_unit, ...)

Use this when someone asks what they can build on a plot or piece of land anywhere in Maharashtra outside Greater Mumbai: FSI or FAR, built-up area, setbacks (margins), height, how many floors, parking or approvals under UDCPR 2020, the building rules for every town in the state. People often ask in Marathi or Hindi, or mix them with English: जागा, प्लॉट, गुंठा, चटई क्षेत्र निर्देशांक (FSI), बांधकाम क्षेत्र (built-up), सामासिक अंतर (margins), किती मजले (how many floors), पार्किंग; give the area and road as they said them with area_unit and road_unit. Do not use for Greater Mumbai, for land prices or for building permission itself. Returns the UDCPR feasibility of one plot for one use: area statement, FSI, height limits, the margin on every side, the building that fits, parking, water, sanitary fixtures, stairs and lifts, fire tanks, refuge area, open space and amenity space, and the NOCs the plot and building trigger; the floor counts around the fitted one (options) and the heights that change the rules (thresholds); the Proforma I area statement; premiums as shares of the ASR land rate, scrutiny fee and payment options; TDR loading; what applies (rainwater, solar, grey water, inclusive housing, open space, amenity, refuge, fire NOC); corner rounding; plot-origin options; power line clearance and TOD FSI when those inputs are given. Each value carries its UDCPR clause.

輸入結構描述

{
  "type": "object",
  "properties": {
    "town": {
      "type": "string",
      "description": "Maharashtra town, city or planning authority, e.g. Pune, Kolhapur, Nashik, PMRDA"
    },
    "area": {
      "type": "number",
      "description": "plot area as the user gave it, in m2 unless area_unit says sqft, guntha, acre or hectare: the least of 7/12, measurement sheet and site"
    },
    "road": {
      "type": "number",
      "description": "width of the road in front, in m unless road_unit is ft, when there is one road and no sides"
    },
    "area_unit": {
      "type": "string",
      "enum": [
        "m2",
        "sqft",
        "guntha",
        "acre",
        "hectare"
      ],
      "description": "unit of area, road_widening and reservation as the user gave them; default m2. Citiwise converts and says so in units"
    },
    "road_unit": {
      "type": "string",
      "enum": [
        "m",
        "ft"
      ],
      "description": "unit of road and of each road side's width as the user gave them; default m"
    },
    "sides": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "road",
              "plot",
              "open",
              "nallah",
              "river",
              "rail"
            ]
          },
          "width": {
            "type": "number",
            "description": "DP road width in m, for roads"
          },
          "length": {
            "type": "number"
          },
          "name": {
            "type": "string",
            "description": "label, e.g. south"
          },
          "side": {
            "type": "integer",
            "minimum": 1,
            "description": "for a curved or many-pointed side drawn as several segments: the side number each segment belongs to, the same on every segment of that side"
          },
          "corner": {
            "type": "boolean",
            "description": "true for the rounding or cut where two roads meet (3.3.12): margins run from it, but it is not a road of its own"
          }
        },
        "required": [
          "type"
        ]
      },
      "maxItems": 64,
      "description": "every side, anticlockwise, starting at a road"
    },
    "zone": {
      "type": "string",
      "enum": [
        "nc",
        "c"
      ],
      "description": "nc non-congested, c congested (gaothan)"
    },
    "land_use": {
      "type": "string",
      "enum": [
        "res",
        "com",
        "ind",
        "psp",
        "agr",
        "tt",
        "gb"
      ]
    },
    "road_widening": {
      "type": "number"
    },
    "reservation": {
      "type": "number"
    },
    "handed_over": {
      "type": "boolean"
    },
    "stilt": {
      "type": "boolean"
    },
    "ground_height": {
      "type": "number"
    },
    "floor_height": {
      "type": "number"
    },
    "basements": {
      "type": "integer",
      "minimum": 0,
      "maximum": 5,
      "description": "levels of basement, for parking and services (9.11)"
    },
    "basement_flush": {
      "type": "boolean",
      "description": "basement top flush with the ground: it may then run into the side and rear margins (9.11.1 proviso i)"
    },
    "units": {
      "type": "array",
      "maxItems": 12,
      "items": {
        "type": "object",
        "required": [
          "type",
          "carpet"
        ],
        "properties": {
          "type": {
            "type": "string",
            "description": "label of up to 20 characters: 1 BHK, 2 BHK, Studio, Shop, Office"
          },
          "count": {
            "type": "integer",
            "description": "units of this type, 0 to 10000; leave out to work it out"
          },
          "carpet": {
            "type": "number",
            "description": "carpet area of one unit, m2, 10 to 2000"
          },
          "share": {
            "type": "number",
            "description": "with count left out: this type's share of the carpet area, 0 to 1 or a percentage"
          }
        }
      },
      "description": "the unit mix, one entry per type, e.g. [{\"type\":\"2 BHK\",\"count\":12,\"carpet\":60},{\"type\":\"Shop\",\"count\":4,\"carpet\":25}]; parking takes each type in its own Table 8-B row; a count left out is worked out from the building"
    },
    "flats": {
      "type": "integer",
      "description": "number of flats; with carpet, a one-type unit mix"
    },
    "carpet": {
      "type": "number",
      "description": "carpet area of a flat, m2"
    },
    "polygon": {
      "type": "array",
      "items": {
        "type": "array",
        "items": {
          "type": "number"
        }
      },
      "maxItems": 64,
      "description": "plot corners [x, y] in m, anticlockwise, one per side, side 1 first; needed for plots that are not rectangles"
    },
    "sprinklers": {
      "type": "boolean",
      "description": "mixed building fully sprinklered (1.3(93)(xiv) note)"
    },
    "power_line_kv": {
      "type": "number",
      "description": "voltage of an overhead line near the plot, kV, for its clearance"
    },
    "tod": {
      "type": "boolean",
      "description": "plot inside a TOD zone (14.2.1)"
    },
    "road_widening_side": {
      "type": "integer",
      "description": "side number (1-based) that the road widening strip comes off; default the first road side"
    },
    "plot_origin": {
      "type": "string",
      "enum": [
        "layout",
        "unauthorised",
        "gunthewari"
      ],
      "description": "layout: sanctioned layout or sub-division; unauthorised: sub-divided after 11.01.1967 without permission; gunthewari: regularised under the Gunthewari Act"
    },
    "asr_rate": {
      "type": "number",
      "description": "land rate of the plot in the Annual Statement of Rates, Rs a m2; gives premiums in rupees and the DRC to debit"
    },
    "sale_rate": {
      "type": "number",
      "description": "sale rate, Rs a sq ft of carpet area; with build_cost and tdr_rate gives an appraisal: sales value, construction, premiums, TDR and the surplus before land"
    },
    "build_cost": {
      "type": "number",
      "description": "construction cost, Rs a sq ft of built-up area"
    },
    "tdr_rate": {
      "type": "number",
      "description": "price of TDR, Rs a sq ft"
    },
    "margin": {
      "type": "number",
      "description": "margin the developer needs, % of sales value; with the rates, gives the most to pay for the land and the largest share of the flats for the landowner in a joint development"
    },
    "other_costs": {
      "type": "number",
      "description": "other costs (fees, finance, marketing), % of construction cost"
    },
    "parking_cost": {
      "type": "number",
      "description": "construction cost of the stilt floor, Rs a sq ft; the stilt is free of FSI but built; default build_cost"
    },
    "land_price": {
      "type": "number",
      "description": "asking price of the land when it is being bought, Rs for the whole plot; with the rates, gives the profit at that price and how far it sits from the most to pay for the land"
    },
    "prepared_for": {
      "type": "string",
      "maxLength": 80,
      "description": "who the study is for, as it should appear on its cover, e.g. the landowner or client"
    },
    "prepared_by": {
      "type": "string",
      "maxLength": 80,
      "description": "who is giving the study, as it should appear on its cover, e.g. a broker or developer"
    },
    "carpet_share": {
      "type": "number",
      "description": "carpet area as a share of the built-up, 0.3 to 0.95 or 30 to 95 (default 0.8); sets the unit counts left out and so the sales value"
    },
    "tdr_generating_rate": {
      "type": "number",
      "description": "ASR land rate of the TDR's generating plot, Rs a m2 (11.2.6)"
    },
    "use_carpet": {
      "type": "number",
      "description": "carpet area of a non-residential use, or of the shops below flats, m2, for its parking and water; default the built-up that fits"
    },
    "rooms": {
      "type": "integer",
      "description": "guest rooms, for hotel parking and sanitation"
    },
    "beds": {
      "type": "integer",
      "description": "beds: for hospitals, parking, water, sanitation and grey water; for hotels, water"
    },
    "seats": {
      "type": "integer",
      "description": "seats, for assembly parking"
    },
    "bathrooms": {
      "type": "boolean",
      "description": "factories: whether bath-rooms are provided, for water (Table 12-A)"
    },
    "use": {
      "type": "string",
      "enum": [
        "flats",
        "mix",
        "bung",
        "row",
        "shop",
        "office",
        "it",
        "hotel",
        "fuel",
        "school",
        "college",
        "hospital",
        "public",
        "assembly",
        "mangal",
        "parking",
        "warehouse",
        "factory"
      ]
    },
    "upper_floors": {
      "type": "integer",
      "description": "floors above ground or stilt (G+3 is 3); omit to fit"
    }
  },
  "required": [
    "town",
    "area",
    "use"
  ]
}
🟢compare_uses(town, area, road, area_unit, road_unit, ...)

Use this when someone wants to know which uses are allowed on a plot in Maharashtra, or how built-up differs between uses on the same land. Returns every use on the same land in a fixed order: allowed or the reason not, conditions, clause, and built-up with and without TDR.

輸入結構描述

{
  "type": "object",
  "properties": {
    "town": {
      "type": "string",
      "description": "Maharashtra town, city or planning authority, e.g. Pune, Kolhapur, Nashik, PMRDA"
    },
    "area": {
      "type": "number",
      "description": "plot area as the user gave it, in m2 unless area_unit says sqft, guntha, acre or hectare: the least of 7/12, measurement sheet and site"
    },
    "road": {
      "type": "number",
      "description": "width of the road in front, in m unless road_unit is ft, when there is one road and no sides"
    },
    "area_unit": {
      "type": "string",
      "enum": [
        "m2",
        "sqft",
        "guntha",
        "acre",
        "hectare"
      ],
      "description": "unit of area, road_widening and reservation as the user gave them; default m2. Citiwise converts and says so in units"
    },
    "road_unit": {
      "type": "string",
      "enum": [
        "m",
        "ft"
      ],
      "description": "unit of road and of each road side's width as the user gave them; default m"
    },
    "sides": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "road",
              "plot",
              "open",
              "nallah",
              "river",
              "rail"
            ]
          },
          "width": {
            "type": "number",
            "description": "DP road width in m, for roads"
          },
          "length": {
            "type": "number"
          },
          "name": {
            "type": "string",
            "description": "label, e.g. south"
          },
          "side": {
            "type": "integer",
            "minimum": 1,
            "description": "for a curved or many-pointed side drawn as several segments: the side number each segment belongs to, the same on every segment of that side"
          },
          "corner": {
            "type": "boolean",
            "description": "true for the rounding or cut where two roads meet (3.3.12): margins run from it, but it is not a road of its own"
          }
        },
        "required": [
          "type"
        ]
      },
      "maxItems": 64,
      "description": "every side, anticlockwise, starting at a road"
    },
    "zone": {
      "type": "string",
      "enum": [
        "nc",
        "c"
      ],
      "description": "nc non-congested, c congested (gaothan)"
    },
    "land_use": {
      "type": "string",
      "enum": [
        "res",
        "com",
        "ind",
        "psp",
        "agr",
        "tt",
        "gb"
      ]
    },
    "road_widening": {
      "type": "number"
    },
    "reservation": {
      "type": "number"
    },
    "handed_over": {
      "type": "boolean"
    },
    "stilt": {
      "type": "boolean"
    },
    "ground_height": {
      "type": "number"
    },
    "floor_height": {
      "type": "number"
    },
    "basements": {
      "type": "integer",
      "minimum": 0,
      "maximum": 5,
      "description": "levels of basement, for parking and services (9.11)"
    },
    "basement_flush": {
      "type": "boolean",
      "description": "basement top flush with the ground: it may then run into the side and rear margins (9.11.1 proviso i)"
    },
    "units": {
      "type": "array",
      "maxItems": 12,
      "items": {
        "type": "object",
        "required": [
          "type",
          "carpet"
        ],
        "properties": {
          "type": {
            "type": "string",
            "description": "label of up to 20 characters: 1 BHK, 2 BHK, Studio, Shop, Office"
          },
          "count": {
            "type": "integer",
            "description": "units of this type, 0 to 10000; leave out to work it out"
          },
          "carpet": {
            "type": "number",
            "description": "carpet area of one unit, m2, 10 to 2000"
          },
          "share": {
            "type": "number",
            "description": "with count left out: this type's share of the carpet area, 0 to 1 or a percentage"
          }
        }
      },
      "description": "the unit mix, one entry per type, e.g. [{\"type\":\"2 BHK\",\"count\":12,\"carpet\":60},{\"type\":\"Shop\",\"count\":4,\"carpet\":25}]; parking takes each type in its own Table 8-B row; a count left out is worked out from the building"
    },
    "flats": {
      "type": "integer",
      "description": "number of flats; with carpet, a one-type unit mix"
    },
    "carpet": {
      "type": "number",
      "description": "carpet area of a flat, m2"
    },
    "polygon": {
      "type": "array",
      "items": {
        "type": "array",
        "items": {
          "type": "number"
        }
      },
      "maxItems": 64,
      "description": "plot corners [x, y] in m, anticlockwise, one per side, side 1 first; needed for plots that are not rectangles"
    },
    "sprinklers": {
      "type": "boolean",
      "description": "mixed building fully sprinklered (1.3(93)(xiv) note)"
    },
    "power_line_kv": {
      "type": "number",
      "description": "voltage of an overhead line near the plot, kV, for its clearance"
    },
    "tod": {
      "type": "boolean",
      "description": "plot inside a TOD zone (14.2.1)"
    },
    "road_widening_side": {
      "type": "integer",
      "description": "side number (1-based) that the road widening strip comes off; default the first road side"
    },
    "plot_origin": {
      "type": "string",
      "enum": [
        "layout",
        "unauthorised",
        "gunthewari"
      ],
      "description": "layout: sanctioned layout or sub-division; unauthorised: sub-divided after 11.01.1967 without permission; gunthewari: regularised under the Gunthewari Act"
    },
    "asr_rate": {
      "type": "number",
      "description": "land rate of the plot in the Annual Statement of Rates, Rs a m2; gives premiums in rupees and the DRC to debit"
    },
    "sale_rate": {
      "type": "number",
      "description": "sale rate, Rs a sq ft of carpet area; with build_cost and tdr_rate gives an appraisal: sales value, construction, premiums, TDR and the surplus before land"
    },
    "build_cost": {
      "type": "number",
      "description": "construction cost, Rs a sq ft of built-up area"
    },
    "tdr_rate": {
      "type": "number",
      "description": "price of TDR, Rs a sq ft"
    },
    "margin": {
      "type": "number",
      "description": "margin the developer needs, % of sales value; with the rates, gives the most to pay for the land and the largest share of the flats for the landowner in a joint development"
    },
    "other_costs": {
      "type": "number",
      "description": "other costs (fees, finance, marketing), % of construction cost"
    },
    "parking_cost": {
      "type": "number",
      "description": "construction cost of the stilt floor, Rs a sq ft; the stilt is free of FSI but built; default build_cost"
    },
    "land_price": {
      "type": "number",
      "description": "asking price of the land when it is being bought, Rs for the whole plot; with the rates, gives the profit at that price and how far it sits from the most to pay for the land"
    },
    "prepared_for": {
      "type": "string",
      "maxLength": 80,
      "description": "who the study is for, as it should appear on its cover, e.g. the landowner or client"
    },
    "prepared_by": {
      "type": "string",
      "maxLength": 80,
      "description": "who is giving the study, as it should appear on its cover, e.g. a broker or developer"
    },
    "carpet_share": {
      "type": "number",
      "description": "carpet area as a share of the built-up, 0.3 to 0.95 or 30 to 95 (default 0.8); sets the unit counts left out and so the sales value"
    },
    "tdr_generating_rate": {
      "type": "number",
      "description": "ASR land rate of the TDR's generating plot, Rs a m2 (11.2.6)"
    },
    "use_carpet": {
      "type": "number",
      "description": "carpet area of a non-residential use, or of the shops below flats, m2, for its parking and water; default the built-up that fits"
    },
    "rooms": {
      "type": "integer",
      "description": "guest rooms, for hotel parking and sanitation"
    },
    "beds": {
      "type": "integer",
      "description": "beds: for hospitals, parking, water, sanitation and grey water; for hotels, water"
    },
    "seats": {
      "type": "integer",
      "description": "seats, for assembly parking"
    },
    "bathrooms": {
      "type": "boolean",
      "description": "factories: whether bath-rooms are provided, for water (Table 12-A)"
    }
  },
  "required": [
    "town",
    "area"
  ]
}
🟢check_design(town, area, road, area_unit, road_unit, ...)

Use this when someone has a proposed building on a plot in Maharashtra and wants to know whether it meets UDCPR. Checks a proposal's built-up, height and margins (one per side, in side order) against UDCPR, with allowed, proposed and pass or fail per item. Margins need the height or the upper floors with them.

輸入結構描述

{
  "type": "object",
  "properties": {
    "town": {
      "type": "string",
      "description": "Maharashtra town, city or planning authority, e.g. Pune, Kolhapur, Nashik, PMRDA"
    },
    "area": {
      "type": "number",
      "description": "plot area as the user gave it, in m2 unless area_unit says sqft, guntha, acre or hectare: the least of 7/12, measurement sheet and site"
    },
    "road": {
      "type": "number",
      "description": "width of the road in front, in m unless road_unit is ft, when there is one road and no sides"
    },
    "area_unit": {
      "type": "string",
      "enum": [
        "m2",
        "sqft",
        "guntha",
        "acre",
        "hectare"
      ],
      "description": "unit of area, road_widening and reservation as the user gave them; default m2. Citiwise converts and says so in units"
    },
    "road_unit": {
      "type": "string",
      "enum": [
        "m",
        "ft"
      ],
      "description": "unit of road and of each road side's width as the user gave them; default m"
    },
    "sides": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "road",
              "plot",
              "open",
              "nallah",
              "river",
              "rail"
            ]
          },
          "width": {
            "type": "number",
            "description": "DP road width in m, for roads"
          },
          "length": {
            "type": "number"
          },
          "name": {
            "type": "string",
            "description": "label, e.g. south"
          },
          "side": {
            "type": "integer",
            "minimum": 1,
            "description": "for a curved or many-pointed side drawn as several segments: the side number each segment belongs to, the same on every segment of that side"
          },
          "corner": {
            "type": "boolean",
            "description": "true for the rounding or cut where two roads meet (3.3.12): margins run from it, but it is not a road of its own"
          }
        },
        "required": [
          "type"
        ]
      },
      "maxItems": 64,
      "description": "every side, anticlockwise, starting at a road"
    },
    "zone": {
      "type": "string",
      "enum": [
        "nc",
        "c"
      ],
      "description": "nc non-congested, c congested (gaothan)"
    },
    "land_use": {
      "type": "string",
      "enum": [
        "res",
        "com",
        "ind",
        "psp",
        "agr",
        "tt",
        "gb"
      ]
    },
    "road_widening": {
      "type": "number"
    },
    "reservation": {
      "type": "number"
    },
    "handed_over": {
      "type": "boolean"
    },
    "stilt": {
      "type": "boolean"
    },
    "ground_height": {
      "type": "number"
    },
    "floor_height": {
      "type": "number"
    },
    "basements": {
      "type": "integer",
      "minimum": 0,
      "maximum": 5,
      "description": "levels of basement, for parking and services (9.11)"
    },
    "basement_flush": {
      "type": "boolean",
      "description": "basement top flush with the ground: it may then run into the side and rear margins (9.11.1 proviso i)"
    },
    "units": {
      "type": "array",
      "maxItems": 12,
      "items": {
        "type": "object",
        "required": [
          "type",
          "carpet"
        ],
        "properties": {
          "type": {
            "type": "string",
            "description": "label of up to 20 characters: 1 BHK, 2 BHK, Studio, Shop, Office"
          },
          "count": {
            "type": "integer",
            "description": "units of this type, 0 to 10000; leave out to work it out"
          },
          "carpet": {
            "type": "number",
            "description": "carpet area of one unit, m2, 10 to 2000"
          },
          "share": {
            "type": "number",
            "description": "with count left out: this type's share of the carpet area, 0 to 1 or a percentage"
          }
        }
      },
      "description": "the unit mix, one entry per type, e.g. [{\"type\":\"2 BHK\",\"count\":12,\"carpet\":60},{\"type\":\"Shop\",\"count\":4,\"carpet\":25}]; parking takes each type in its own Table 8-B row; a count left out is worked out from the building"
    },
    "flats": {
      "type": "integer",
      "description": "number of flats; with carpet, a one-type unit mix"
    },
    "carpet": {
      "type": "number",
      "description": "carpet area of a flat, m2"
    },
    "polygon": {
      "type": "array",
      "items": {
        "type": "array",
        "items": {
          "type": "number"
        }
      },
      "maxItems": 64,
      "description": "plot corners [x, y] in m, anticlockwise, one per side, side 1 first; needed for plots that are not rectangles"
    },
    "sprinklers": {
      "type": "boolean",
      "description": "mixed building fully sprinklered (1.3(93)(xiv) note)"
    },
    "power_line_kv": {
      "type": "number",
      "description": "voltage of an overhead line near the plot, kV, for its clearance"
    },
    "tod": {
      "type": "boolean",
      "description": "plot inside a TOD zone (14.2.1)"
    },
    "road_widening_side": {
      "type": "integer",
      "description": "side number (1-based) that the road widening strip comes off; default the first road side"
    },
    "plot_origin": {
      "type": "string",
      "enum": [
        "layout",
        "unauthorised",
        "gunthewari"
      ],
      "description": "layout: sanctioned layout or sub-division; unauthorised: sub-divided after 11.01.1967 without permission; gunthewari: regularised under the Gunthewari Act"
    },
    "asr_rate": {
      "type": "number",
      "description": "land rate of the plot in the Annual Statement of Rates, Rs a m2; gives premiums in rupees and the DRC to debit"
    },
    "sale_rate": {
      "type": "number",
      "description": "sale rate, Rs a sq ft of carpet area; with build_cost and tdr_rate gives an appraisal: sales value, construction, premiums, TDR and the surplus before land"
    },
    "build_cost": {
      "type": "number",
      "description": "construction cost, Rs a sq ft of built-up area"
    },
    "tdr_rate": {
      "type": "number",
      "description": "price of TDR, Rs a sq ft"
    },
    "margin": {
      "type": "number",
      "description": "margin the developer needs, % of sales value; with the rates, gives the most to pay for the land and the largest share of the flats for the landowner in a joint development"
    },
    "other_costs": {
      "type": "number",
      "description": "other costs (fees, finance, marketing), % of construction cost"
    },
    "parking_cost": {
      "type": "number",
      "description": "construction cost of the stilt floor, Rs a sq ft; the stilt is free of FSI but built; default build_cost"
    },
    "land_price": {
      "type": "number",
      "description": "asking price of the land when it is being bought, Rs for the whole plot; with the rates, gives the profit at that price and how far it sits from the most to pay for the land"
    },
    "prepared_for": {
      "type": "string",
      "maxLength": 80,
      "description": "who the study is for, as it should appear on its cover, e.g. the landowner or client"
    },
    "prepared_by": {
      "type": "string",
      "maxLength": 80,
      "description": "who is giving the study, as it should appear on its cover, e.g. a broker or developer"
    },
    "carpet_share": {
      "type": "number",
      "description": "carpet area as a share of the built-up, 0.3 to 0.95 or 30 to 95 (default 0.8); sets the unit counts left out and so the sales value"
    },
    "tdr_generating_rate": {
      "type": "number",
      "description": "ASR land rate of the TDR's generating plot, Rs a m2 (11.2.6)"
    },
    "use_carpet": {
      "type": "number",
      "description": "carpet area of a non-residential use, or of the shops below flats, m2, for its parking and water; default the built-up that fits"
    },
    "rooms": {
      "type": "integer",
      "description": "guest rooms, for hotel parking and sanitation"
    },
    "beds": {
      "type": "integer",
      "description": "beds: for hospitals, parking, water, sanitation and grey water; for hotels, water"
    },
    "seats": {
      "type": "integer",
      "description": "seats, for assembly parking"
    },
    "bathrooms": {
      "type": "boolean",
      "description": "factories: whether bath-rooms are provided, for water (Table 12-A)"
    },
    "use": {
      "type": "string",
      "enum": [
        "flats",
        "mix",
        "bung",
        "row",
        "shop",
        "office",
        "it",
        "hotel",
        "fuel",
        "school",
        "college",
        "hospital",
        "public",
        "assembly",
        "mangal",
        "parking",
        "warehouse",
        "factory"
      ]
    },
    "proposed": {
      "type": "object",
      "properties": {
        "built_up": {
          "type": "number"
        },
        "height": {
          "type": "number"
        },
        "upper_floors": {
          "type": "integer"
        },
        "margins": {
          "type": "array",
          "items": {
            "type": "number"
          },
          "maxItems": 64
        }
      }
    }
  },
  "required": [
    "town",
    "area",
    "use",
    "proposed"
  ]
}
🟢clause(ref)

Use this when someone asks what a specific UDCPR regulation or table says. Returns the UDCPR text of a regulation or table by its number, such as '6.2.6', '11.2.4' or 'Table 6-G'.

輸入結構描述

{
  "type": "object",
  "properties": {
    "ref": {
      "type": "string"
    }
  },
  "required": [
    "ref"
  ]
}
🟢search_udcpr(words)

Use this when someone asks where UDCPR deals with a topic, such as refuge areas or rainwater harvesting. Returns lines of UDCPR that contain all the given words, with their chapter; a regulation's own heading first.

輸入結構描述

{
  "type": "object",
  "properties": {
    "words": {
      "type": "string"
    }
  },
  "required": [
    "words"
  ]
}
🟢towns(query)

Use this when the town or planning authority of a plot is unclear or spelt differently. Returns Maharashtra towns and authorities with their kind and class; every one when no query is given.

輸入結構描述

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string"
    }
  }
}
🟢draw_plot(sides, unit, angles, diagonals, right_angles, ...)

Use this when a plot's shape is given as measurements rather than as one area: side lengths with the angles at the corners, or with diagonals, as on a hand-drawn sketch, a measurement sheet or a survey; or the corners themselves. Works out the exact corners, checks every measurement that is given twice (closing side, angle sum, spare diagonals, stated area) and reports any misfit, and returns the polygon and sides to pass to feasibility, a link that opens the plot drawn in Citiwise, and, when town and use are given, the feasibility with its report. Do not use for a plot described only by its area and road width; call feasibility directly.

輸入結構描述

{
  "type": "object",
  "properties": {
    "sides": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "length": {
            "type": "number",
            "description": "length of the side, in the unit given"
          },
          "beyond": {
            "type": "string",
            "enum": [
              "road",
              "plot",
              "open",
              "nallah",
              "river",
              "rail"
            ],
            "description": "what lies beyond the side; plot for a neighbour"
          },
          "width": {
            "type": "number",
            "description": "for a road: its width, in the unit given"
          },
          "name": {
            "type": "string",
            "description": "label, e.g. east"
          }
        },
        "required": [
          "length"
        ]
      },
      "maxItems": 64,
      "description": "every side in order round the plot, either direction; at least one is a road"
    },
    "unit": {
      "type": "string",
      "enum": [
        "m",
        "ft"
      ],
      "description": "unit of every length and road width; default m"
    },
    "angles": {
      "type": "array",
      "items": {
        "type": "number"
      },
      "description": "interior angle in degrees at each corner; corner i is where side i begins"
    },
    "diagonals": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "from": {
            "type": "integer"
          },
          "to": {
            "type": "integer"
          },
          "length": {
            "type": "number"
          }
        },
        "required": [
          "from",
          "to",
          "length"
        ]
      },
      "description": "corner-to-corner distances; a plot of n sides needs n - 3, e.g. from corner 1 to each corner it does not touch"
    },
    "right_angles": {
      "type": "boolean",
      "description": "true when every corner of a four-sided plot is square"
    },
    "polygon": {
      "type": "array",
      "items": {
        "type": "array",
        "items": {
          "type": "number"
        }
      },
      "description": "the corners [x, y] instead of lengths and angles, one per side"
    },
    "stated_area": {
      "type": "number",
      "description": "the area on the 7/12 or measurement sheet, in m2 (or sq ft with unit ft), to check against"
    },
    "town": {
      "type": "string",
      "description": "with use: also run the feasibility"
    },
    "use": {
      "type": "string",
      "enum": [
        "flats",
        "mix",
        "bung",
        "row",
        "shop",
        "office",
        "it",
        "hotel",
        "fuel",
        "school",
        "college",
        "hospital",
        "public",
        "assembly",
        "mangal",
        "parking",
        "warehouse",
        "factory"
      ]
    },
    "zone": {
      "type": "string",
      "enum": [
        "nc",
        "c"
      ]
    }
  },
  "required": [
    "sides"
  ]
}
🟢search(query)

Use this to find UDCPR regulations and tables, or a town's page, on any topic: refuge area, marginal distance on a 12 m road, Table 6-G, parking for flats, Kolhapur. Returns results, each with an id to pass to fetch, a title and a url to cite.

輸入結構描述

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "words, a regulation number such as 6.2.6, a table such as Table 8-B, or a town"
    }
  },
  "required": [
    "query"
  ]
}
🟢fetch(id)

Use this to read one result of search in full: a UDCPR regulation or table in its own words as notified, or what a town is under UDCPR with the figures for a common plot there. Returns id, title, text, url to cite, and metadata.

輸入結構描述

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "an id from search, such as udcpr/6-2-6, udcpr/table-6-g or towns/kolhapur"
    }
  },
  "required": [
    "id"
  ]
}

社群

為此伺服器評分

證據

近期觀測

已驗證未記錄版本9 個工具