readypermit-mcp
Server Quality Checklist
Latest release: v1.0.0
- Disambiguation4/5
The tools are mostly distinct, with each focusing on a specific aspect of property analysis (zoning, ADU eligibility, flood risk, comparison, and buildability). However, 'analyze_property' and 'what_can_i_build' have some overlap, as both address buildability and development constraints, which could cause minor confusion for an agent.
Naming Consistency5/5All tool names follow a consistent verb_noun pattern (e.g., analyze_property, check_adu_eligibility, check_flood_risk, compare_parcels, what_can_i_build). The naming is clear and predictable, with no deviations in style or convention.
Tool Count5/5With 5 tools, the set is well-scoped for a property analysis server. Each tool serves a distinct purpose related to real estate development, and the count is neither too sparse nor overwhelming, fitting typical expectations for a focused domain.
Completeness4/5The tool surface covers key aspects of property analysis, including zoning, ADU eligibility, flood risk, and buildability, with a useful comparison tool. A minor gap exists in lacking direct tools for permit application or cost estimation, but core workflows are well-supported for the domain.
Average 4/5 across 5 of 5 tools scored.
See the Tool Scores section below for per-tool breakdowns.
- No community issues in the last 6 months
- 0 commits in the last 12 weeks
- No stable releases found
- No critical vulnerability alerts
- No high-severity vulnerability alerts
- No code scanning findings
- CI status not available
This repository is licensed under MIT License.
This repository includes a README.md file.
No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.
Tip: use the "Try in Browser" feature on the server page to seed initial usage.
Add a glama.json file to provide metadata about your server.
If you are the author, simply .
If the server belongs to an organization, first add
glama.jsonto the root of your repository:{ "$schema": "https://glama.ai/mcp/schemas/server.json", "maintainers": [ "your-github-username" ] }Then . Browse examples.
Add related servers to improve discoverability.
How to sync the server with GitHub?
Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.
To manually sync the server, click the "Sync Server" button in the MCP server admin interface.
How is the quality score calculated?
The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).
Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.
Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).
Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.
Tool Scores
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint=true, indicating a safe read operation. The description adds context by specifying the types of ADUs considered (backyard cottage, garage conversion, or addition), which is useful beyond annotations. However, it does not disclose other behavioral traits like rate limits, error handling, or what 'eligible' entails (e.g., regulatory compliance).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the purpose without unnecessary details. Every word earns its place by clearly stating what the tool does and the scope of ADUs, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (one parameter, read-only, no output schema), the description is complete enough for basic use. It specifies the tool's purpose and ADU types, but lacks details on output format or eligibility criteria, which could be helpful given the absence of an output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with the parameter 'address' fully documented as 'Full U.S. property address'. The description does not add any meaning beyond this, such as format examples or validation rules, so it meets the baseline for high schema coverage without compensating further.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific verb ('Check if a property is eligible') and resource ('ADU - backyard cottage, garage conversion, or addition'), distinguishing it from sibling tools like 'check_flood_risk' or 'what_can_i_build' by focusing on ADU eligibility rather than general property analysis or flood risk assessment.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for checking ADU eligibility, but it does not explicitly state when to use this tool versus alternatives like 'analyze_property' or 'what_can_i_build'. No exclusions or prerequisites are mentioned, leaving the agent to infer context from tool names alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, indicating a safe read operation. The description adds value by specifying the data sources (FEMA, EPA, wildfire zones) and scope (U.S. property), which are useful contextual details beyond annotations. However, it does not disclose behavioral traits like rate limits, error handling, or response format, keeping it at a baseline level with annotations covering safety.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is highly concise and front-loaded, using a single sentence that efficiently states the tool's purpose and scope without unnecessary words. Every part of the description earns its place by directly contributing to understanding the tool's function.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (single parameter, read-only operation) and lack of output schema, the description is reasonably complete. It covers what the tool does and its scope but could improve by mentioning output details or limitations. With annotations handling safety, it's mostly adequate but not fully comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with the parameter 'address' fully documented in the schema. The description adds no additional parameter details beyond implying it's for a U.S. property, which aligns with the schema. This meets the baseline score of 3 since the schema carries the burden, and no extra semantic value is provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with specific verbs ('check', 'covers') and resources ('FEMA flood zone status', 'environmental risk', 'U.S. property'), distinguishing it from siblings like 'analyze_property' or 'check_adu_eligibility' by focusing specifically on flood and environmental risk assessment rather than general analysis or eligibility checks.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for U.S. property risk assessment but does not explicitly state when to use this tool versus alternatives like 'analyze_property' or 'compare_parcels'. It provides context (e.g., 'for a U.S. property') but lacks explicit guidance on exclusions or named alternatives, leaving some ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, so the agent knows this is a safe read operation. The description adds useful context about the comparison scope (zoning, buildability, risk) and target audience (investors), but doesn't disclose behavioral traits like rate limits, authentication needs, or what specific risk factors are considered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is perfectly concise with two sentences that each earn their place: the first states the core functionality, the second provides usage context. It's front-loaded with the essential information and contains zero wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (multi-property comparison), the presence of readOnlyHint annotation, and 100% schema coverage, the description is reasonably complete. However, without an output schema, it doesn't explain what the comparison results look like or the format of returned data, leaving a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already fully documents the single 'addresses' parameter with its constraints (2-5 U.S. property addresses). The description adds no additional parameter semantics beyond what's in the schema, maintaining the baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with specific verbs ('compare') and resources ('U.S. properties'), and distinguishes it from siblings by specifying the multi-property comparison scope. It explicitly mentions the comparison dimensions: zoning, buildability, and risk.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use this tool ('for investors screening deals') and implies it's for comparing multiple properties (2-5). However, it doesn't explicitly state when NOT to use it or name specific alternatives among the sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, indicating a safe read operation. The description adds useful context by specifying the scope of project types covered (ADUs, expansions, etc.), but it does not disclose additional behavioral traits such as rate limits, data sources, or response format. With annotations covering safety, a 3 is appropriate as the description adds some value but not rich behavioral details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose and lists covered project types without unnecessary words. Every part earns its place, making it appropriately sized and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (2 parameters, no output schema) and good annotations (readOnlyHint), the description is mostly complete. It covers the purpose and scope well, but it could improve by hinting at output format or data sources. Without an output schema, some gaps remain, but it's adequate for a read-only query tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters thoroughly. The description mentions 'project_type' and 'any' in its coverage list, but it does not add meaningful semantics beyond what the schema provides, such as explaining parameter interactions or usage nuances. Baseline 3 is correct when schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('Answer') and resource ('What can I build on this property?'), and it distinguishes itself from siblings by focusing on permitted uses and project types rather than eligibility analysis, risk assessment, or comparisons.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for determining buildable options on a property, but it does not explicitly state when to use this tool versus alternatives like 'check_adu_eligibility' or 'analyze_property'. It provides clear context but lacks explicit exclusions or named alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint=true, indicating this is a safe read operation. The description adds valuable behavioral context beyond annotations by specifying the analysis scope (zoning, buildability, constraints), the instant nature of results, and that it returns a link to a full report. No contradictions with annotations exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is perfectly concise with two sentences that front-load the core functionality and follow with return details. Every word earns its place with no redundancy or unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity, rich annotations (readOnlyHint), and 100% schema coverage, the description provides good completeness. It covers purpose, scope, and return format. The main gap is no output schema, but the description adequately describes what's returned (zoning designation, constraints, report link).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the schema already documents both parameters thoroughly. The description doesn't add significant parameter semantics beyond what's in the schema, though it reinforces the U.S. address scope. Baseline 3 is appropriate when schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with specific verbs ('Get instant zoning analysis, buildability assessment, and development constraints') and resource ('any U.S. property address'). It distinguishes from siblings by focusing on comprehensive property analysis rather than specific checks like flood risk or ADU eligibility.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context ('for any U.S. property address') and implies usage for property development analysis, but doesn't explicitly state when to use this tool versus alternatives like 'check_adu_eligibility' or 'what_can_i_build'. It mentions tailoring by persona but doesn't provide exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
GitHub Badge
Glama performs regular codebase and documentation scans to:
- Confirm that the MCP server is working as expected.
- Confirm that there are no obvious security issues.
- Evaluate tool definition quality.
Our badge communicates server capabilities, safety, and installation instructions.
Card Badge
Copy to your README.md:
Score Badge
Copy to your README.md:
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Galax-ai/readypermit-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server