AcreLens
Server Details
US land due-diligence MCP server. Returns structured reports covering solar potential, groundwater depth, flood zones, building codes, and county regulations for any US property address. Mode-aware across off-grid, rural residential, recreational, and investment use cases. 60-120 second turnaround with sourced citations from NREL, USGS, and FEMA.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.5/5 across 5 of 5 tools scored.
Each tool targets a clearly distinct purpose: analyze_land for full property analysis, compare_properties for batch comparison, get_land_quick_score for quick screening, get_solar_potential for solar estimates, and get_state_land_profile for state-level context. No overlap or ambiguity.
All tool names follow a consistent verb_noun pattern in snake_case: analyze_land, compare_properties, get_land_quick_score, get_solar_potential, get_state_land_profile. Naming is uniform and predictable.
5 tools is well-scoped for the land analysis domain. Each tool provides a distinct, necessary function without redundancy. The count is appropriate and not excessive.
The tool set covers core workflows: full analysis, comparison, quick screening, solar potential, and state context. Minor gaps exist (e.g., water access, soil data, or zoning details) but these are not essential for typical use cases.
Available Tools
5 toolsanalyze_landAInspect
Generates a comprehensive land analysis report for a US property through one of four analytical lenses: off_grid, rural_residential, recreational, or investment. Call this when the user asks for a full analysis of a specific property. If the user's intent is unclear, ask which mode to use before calling. Returns a report ID and poll URL — the final structured report (scores, confidence ratings, narrative summary, source citations) is delivered asynchronously via polling or webhook. Consumes one analysis credit from your AcreLens account.
| Name | Required | Description | Default |
|---|---|---|---|
| lat | No | Latitude (skip geocoding if provided). | |
| lng | No | Longitude (skip geocoding if provided). | |
| mode | Yes | Analysis lens: off_grid, rural_residential, recreational, or investment. | |
| state | Yes | 2-letter US state code (e.g. "NM"). | |
| county | No | County name (recommended for better regulation research). | |
| acreage | No | Total acreage of the parcel. | |
| address | Yes | Full street address of the US property (e.g. "123 Cabin Rd, Taos, NM"). |
Output Schema
| Name | Required | Description |
|---|---|---|
| mode | Yes | The analysis lens that was applied (echoed from the request). |
| status | Yes | Report status. Initially "authorized" or "processing"; transitions to "completed" or "failed" once analysis finishes. |
| poll_url | Yes | Absolute URL to GET the report. Returns 202 while processing, 200 with full body once completed. |
| report_id | Yes | Unique ID for the report. Use this with the poll URL to retrieve the final structured report. |
| estimated_completion_seconds | Yes | Approximate seconds until the report is ready. Use as a hint for when to first poll. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses key behaviors: generates report asynchronously returning a report ID and poll URL, consumes one analysis credit. Annotations (readOnlyHint false, openWorldHint true) are consistent and description adds value beyond them (credit consumption, async delivery).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each packed with essential information: core function, usage guidance, async behavior, and credit usage. No redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 7 parameters, async output, credit consumption, and siblings, the description covers all crucial aspects: purpose, invocation, behavior, and constraints. It mentions output content (scores, confidence ratings) without duplicating the output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline 3. The description adds context: explains mode as 'analysis lens' and mentions lat/lng skip geocoding. This enriches the schema definitions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it generates a comprehensive land analysis report for a US property through four specific lenses, distinguishing it from siblings like get_land_quick_score or get_solar_potential. It specifies when to call (full analysis request) and the four modes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit when-to-call ('Call this when the user asks for a full analysis') and how to handle unclear intent ('ask which mode to use before calling'). Does not explicitly state when not to use or direct to siblings, but it's clear enough for an agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare_propertiesAInspect
Compare 2–5 US properties side by side using the same analysis mode. Call this when the user is evaluating multiple parcels or listings and wants a comparative view. Kicks off the analyses asynchronously and returns a batch ID plus one report ID per property (in input order) to poll — scored results arrive via polling or the batch webhook, not inline. Consumes one analysis credit per property from your AcreLens account.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | Yes | Analysis lens to apply to every property. | |
| properties | Yes | Array of 2–5 properties to compare. |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | Batch status. Initially "processing"; transitions to "completed" once all per-property reports terminate. |
| batch_id | Yes | Unique batch ID grouping the report jobs created by this call. |
| report_ids | Yes | Per-property report IDs in the same order as the input properties array. Poll each individually or wait for the batch.completed webhook. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses asynchronous execution, polling mechanism, batch ID and report IDs, and credit consumption per property. Adds significant value beyond annotations, which only note readOnlyHint=false, openWorldHint=true, idempotentHint=false, destructiveHint=false.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences: (1) purpose, (2) when to use, (3) async behavior and cost. No redundancy, front-loaded, every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given output schema exists (implied), description need not detail return but adds async polling and credit context. Covers input constraints, behavior, and resource usage completely for a comparison tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description does not add extra meaning for 'mode' or 'properties' beyond what the schema provides. No parameter details beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Compare 2–5 US properties side by side using the same analysis mode', specifying the verb (compare), resource (properties), and constraints (2-5, US, same mode). It distinguishes from sibling tools like 'analyze_land' which handles single properties.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear use context: 'Call this when the user is evaluating multiple parcels or listings and wants a comparative view.' It implies not for single property analysis or immediate results. Lacks explicit exclusions or Alternatives, but sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_land_quick_scoreAInspect
Get a fast suitability score (0-100) for a US property without generating a full report. Call this when the user wants a quick go/no-go assessment or an initial screening before committing to a full analysis. Returns a single score with confidence level and one-sentence rationale. Consumes a partial (0.25) analysis credit from your AcreLens account.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | Yes | Analysis lens: off_grid, rural_residential, recreational, or investment. | |
| state | Yes | 2-letter US state code (e.g. "NM"). | |
| address | Yes | Full street address of the US property. |
Output Schema
| Name | Required | Description |
|---|---|---|
| score | Yes | Overall suitability score 0-100. Null while still processing. |
| status | Yes | "completed" when the score is ready; "processing" if the poll timed out and the caller should retry the report later. |
| summary | Yes | One-sentence rationale for the score. Null while still processing or if no summary was generated. |
| report_id | Yes | Unique ID for the underlying quick-mode report. |
| confidence | Yes | Aggregate confidence level derived from per-category confidences. Null while still processing. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that it consumes a partial analysis credit (0.25), returns a score with confidence and rationale, and does not generate a full report. Annotations do not contradict.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, no wasted words, essential information front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given output schema exists, description adequately covers usage, behavior, credit consumption, and differentiates from siblings. Complete for a simple tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with good descriptions; the tool description adds no extra semantic value beyond the schema, meeting baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets a fast suitability score (0-100) for a US property without generating a full report, distinguishing it from sibling 'analyze_land'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says to call for quick go/no-go assessment or initial screening before full analysis, providing clear when-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_solar_potentialARead-onlyIdempotentInspect
Estimate solar energy production potential for a US address using NREL PVWatts data. Call this when the user asks about solar power viability, off-grid energy, or panel sizing. Returns estimated annual production and a typical installed-cost bracket for the system size you specify (default 5 kW).
| Name | Required | Description | Default |
|---|---|---|---|
| lat | No | Latitude of the location. | |
| lng | No | Longitude of the location. | |
| address | No | US street address (used for geocoding fallback). | |
| system_size_kw | No | System size in kilowatts (default 5). |
Output Schema
| Name | Required | Description |
|---|---|---|
| latitude | Yes | Latitude used for the calculation. Will be the resolved geocoded value if address was provided instead of lat/lng. |
| longitude | Yes | Longitude used for the calculation. Will be the resolved geocoded value if address was provided instead of lat/lng. |
| annual_kwh | Yes | Estimated annual AC electricity production in kilowatt-hours, from NREL PVWatts. |
| cost_bracket | Yes | Typical installed-cost range (USD) for a system of this size. Indicative only; varies by region and installer. |
| system_size_kw | Yes | System nameplate capacity in kilowatts (echoed from the request, default 5). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint, idempotentHint, and non-destructive nature. The description adds behavioral context: uses NREL PVWatts data, returns estimated annual production and cost bracket for a specified system size (default 5 kW). No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no wasted words. The first sentence states the purpose, the second provides usage guidance and expected output. Efficient and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the annotations and schema coverage, the description is complete. It explains the data source, output (annual production and cost bracket), default parameter, and use case. No gaps for a simple estimation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for all 4 parameters. The description only adds the default system size of 5 kW and clarifies the address is for the US, but otherwise repeats schema info. Baseline 3 is appropriate since schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool estimates solar energy production potential for a US address using NREL PVWatts data. It specifies the verb 'estimate' and resource 'solar potential for US address', and distinguishes from sibling tools like analyze_land and compare_properties which focus on land/property analysis.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'Call this when the user asks about solar power viability, off-grid energy, or panel sizing', providing clear context for use. While it doesn't specify when not to use or list alternatives, the sibling tools are sufficiently different, so the guidance is adequate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_state_land_profileARead-onlyIdempotentInspect
Retrieve state-level land intelligence data covering regulation, climate, solar potential, water access, and building codes. Call this when the user wants general context about a US state before drilling into a specific property. Returns structured multi-mode profiles.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Optional mode filter. If omitted, returns all 4 modes. | |
| state_code | Yes | 2-letter US state code (e.g. "NM"). |
Output Schema
| Name | Required | Description |
|---|---|---|
| modes | Yes | Per-mode profile data, keyed by mode name (off_grid, rural_residential, recreational, investment). Contains the requested mode if a filter was provided, otherwise all four. |
| state_code | Yes | 2-letter US state code echoed from the request. |
| shared_facts | No | Cross-mode state-level facts (statute citations, agency names, etc.) that apply across all modes. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the description adds context about returning 'structured multi-mode profiles' and the kinds of data covered, which is useful but not critical.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each adding value: purpose, usage guidance, and output nature. No fluff, front-loaded with the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists and the tool has only two parameters, the description sufficiently covers the data categories and behavior. Minor gap: no mention of state_code validation constraints (minLength/maxLength), but these are in the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters already well-described. The description does not add new semantic information beyond the schema, so baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves state-level land intelligence data, listing specific categories like regulation and solar potential. It distinguishes itself from sibling tools like analyze_land and get_solar_potential by focusing on general state context before property-level analysis.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says to call this 'when the user wants general context about a US state before drilling into a specific property,' providing clear when-to-use guidance and implying alternative tools for property-specific needs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!