Citiwise
by tejasdgurav · remote · no sign-in to list tools · v1.4.0 · published by GitHub user tejasdgurav
UDCPR 2020 (Maharashtra) feasibility for a plot, with the clause behind every number.
9 tools: 5 change things and 4 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things5Claude Code: ask: see these tools
- Only reads4Claude Code: allow: see these tools
No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http citiwise https://citiwise.in/mcpTools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
9 tools
Changes things 5Claude Code: ask
check_designUse this when someone has a proposed building on a plot in Maharashtra and wants to know whether it meets UDCPR.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it 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.
Annotations the server declares
- title: Check a design
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
clauseUse this when someone asks what a specific UDCPR regulation or table says.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it 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'.
Annotations the server declares
- title: UDCPR clause text
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
draw_plotUse 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, or both, as on a hand-drawn sketch, a…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it 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, or both, as on a hand-drawn sketch, a measurement sheet, a survey or a photo of any of them; or the corners themselves. Read the figures as written (feet and inches such as 40'6", the area as on the 7/12 in guntha, acre or H.R.); a side left unmeasured may be null where the rest fix it. Works out the exact corners, fitting every figure by least squares when more are given than needed, reports how far each sits from the plot (closing side, angle sum, spare diagonals, stated area), refuses a misfit no tape makes, and returns the polygon and sides to pass to feasibility, the statement of area by the triangulation method (UDCPR 2.2.3(iii): lettered triangles, each by Heron from its sides as printed, the polygon rebuilt from the same lengths), 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.
Annotations the server declares
- title: Draw a plot from its measurements
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
feasibilityUse this when someone asks what they can build on a plot or piece of land in Maharashtra, wherever UDCPR 2020 applies (outside Greater Mumbai and the other areas regulation 1.1(i) …No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Use this when someone asks what they can build on a plot or piece of land in Maharashtra, wherever UDCPR 2020 applies (outside Greater Mumbai and the other areas regulation 1.1(i) leaves out; towns says which): FSI or FAR, built-up area, setbacks (margins), height, how many floors, parking or approvals under UDCPR 2020. 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 (and, where its floor is not a rectangle, the largest regular building inside it: building.regular), 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.
Annotations the server declares
- title: UDCPR feasibility
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
townsUse this when the town or planning authority of a plot is unclear or spelt differently.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it 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.
Annotations the server declares
- title: Towns and authorities
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
Only reads 4Claude Code: allow
compare_usesUse 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.No findings
Why it is in this group
- The name "compare_uses" says "compare": a word for reading.
Description, as the server wrote it 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.
Annotations the server declares
- title: Compare uses
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
fetchUse this to read one result of search in full: a UDCPR regulation or table in its own words as notified, what a town is under UDCPR with the figures for a common plot there, or a t…Reads private dataNo findings
Why it is in this group
- The name "fetch" says "fetch": a word for reading.
What it can reach
- private-dataThe description's first sentence says "read" and "table": it reads databases.
Description, as the server wrote it Use this to read one result of search in full: a UDCPR regulation or table in its own words as notified, what a town is under UDCPR with the figures for a common plot there, or a term in plain language with UDCPR's own definition. Returns id, title, text, url to cite, and metadata.
Annotations the server declares
- title: Read a UDCPR regulation or town
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
searchUse this to find UDCPR regulations and tables, a town's page, or what a term means, on any topic: refuge area, marginal distance on a 12 m road, Table 6-G, parking for flats, Kolha…Reads private dataNo findings
Why it is in this group
- The name "search" says "search": a word for reading.
What it can reach
- private-dataThe description's first sentence says "find" and "table": it reads databases.
Description, as the server wrote it Use this to find UDCPR regulations and tables, a town's page, or what a term means, on any topic: refuge area, marginal distance on a 12 m road, Table 6-G, parking for flats, Kolhapur, what carpet area or TDR is. Returns results, each with an id to pass to fetch, a title and a url to cite.
Annotations the server declares
- title: Search UDCPR and towns
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
search_udcprUse this when someone asks where UDCPR deals with a topic, such as refuge areas or rainwater harvesting.No findings
Why it is in this group
- The name "search_udcpr" says "search": a word for reading.
Description, as the server wrote it 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.
Annotations the server declares
- title: Search UDCPR
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Exfil surface
Which tools read private data, which read text someone else can write, and which can send data out. One of each is a path a prompt injection can use.
No private-data, untrusted-input, outbound path in this server alone: no tool is tagged untrusted-input or outbound.
- Reads private data2
- Reads files, mail, messages, databases, secrets, calendars or repositories.
- Reads text others write0
- Brings in text someone else can write: web pages, inbound email, messages, issues and comments.
- Can send data out0
- Can carry data to people or systems: it sends, posts or publishes, or takes a recipient, channel or URL.
Other servers in the same agent add their own tools to these paths. Audit your whole setup to see them together.
Install
Pinned to version 1.4.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http citiwise https://citiwise.in/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change or a way out, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__citiwise__compare_uses",
"mcp__citiwise__search_udcpr",
"mcp__citiwise__search",
"mcp__citiwise__fetch"
],
"ask": [
"mcp__citiwise__feasibility",
"mcp__citiwise__check_design",
"mcp__citiwise__clause",
"mcp__citiwise__towns",
"mcp__citiwise__draw_plot"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. A read that can send data out (it takes a URL, say) asks first too. It assumes the server is installed as citiwise. Review it before you use it.
Capability tags behind 2 rules
- mcp__citiwise__search private-data
- mcp__citiwise__fetch private-data
