Server Details
California Solar Cost Calculator: the site's own MCP server — calculator, enquiry (enquiry = a...
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Available Tools
5 toolscalculateCalifornia solar cost calculatorCInspect
Run the California solar cost calculator calculator: Electricity you buy each year (kWh); System size that covers it (kW); Solar panels installed; Home battery installed. Missing inputs fall back to their documented defaults.
| Name | Required | Description | Default |
|---|---|---|---|
| ppw | No | Price per watt for the panels | |
| bill | No | Average monthly electricity bill | |
| rate | No | Your electricity rate | |
| orient | No | Roof the panels would go on | 1 |
| battery | No | Include home battery storage | 1 |
| battCost | No | Battery price |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral disclosure burden. It does disclose one useful trait: missing inputs fall back to documented defaults. It does not explicitly state that this is a pure read-only calculation or what it returns, though the calculator nature makes that reasonably evident from the name.
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?
The description is a single short sentence with the main action front-loaded. But the typo 'calculator calculator' and the misleading input enumeration are waste, and the list does not earn its place because it conflicts with the schema.
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 six parameters, no output schema, and no annotations, the description should at least clarify what the calculator computes, what the expected output is, and how it relates to calculator_describe. None of that is present, and the mismatched input list increases confusion rather than reducing it.
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?
The schema covers all six parameters with descriptions and defaults (100% coverage), which normally establishes a baseline of 3. The description actively detracts, however, by listing inputs ('Electricity you buy each year', 'System size that covers it') that do not correspond to the schema's ppw, bill, rate, orient, battery, and battCost, potentially misleading an agent about what to pass.
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 names a specific action ('Run...') and resource ('California solar cost calculator'), so an agent can roughly tell what it does. However, the redundant 'calculator calculator' phrasing and an input list (kWh, kW, panels) that does not match the actual schema (ppw, bill, rate, orient, battery, battCost) muddle the statement. It also does not differentiate this from the sibling calculator_describe.
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?
No guidance is given on when to use this tool versus the siblings (calculator_describe, submit_enquiry, etc.). The only usage hint is that missing inputs fall back to their documented defaults, which is useful but does not address alternative selection or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculator_describeWhat California solar cost calculator computesAInspect
The inputs this calculator takes (with units, ranges and defaults), the outputs it returns, and the assumptions and tables behind it.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden of disclosing behavior. It indicates the tool returns a description of inputs, outputs, and assumptions, which implies a read-only informational operation, but it does not explicitly state that no calculation is performed or that there are no side effects.
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?
The description is a single, well-structured sentence that names the three major content areas: inputs, outputs, and assumptions/tables. It is concise, front-loaded, and every part 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?
For a simple informational tool with no parameters and no output schema, the description covers the essential content scope. It could be slightly more explicit about being a read-only reference and about not performing the calculation, but overall the agent can correctly understand what this tool offers.
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?
The tool has zero parameters, and the input schema is empty. The baseline for a zero-parameter tool is 4, and the description appropriately does not need to explain parameters. It promises details about inputs, but those are content described by the tool, not calling parameters.
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 that the tool describes the calculator's inputs, outputs, and underlying assumptions/tables. This differentiates it from the sibling 'calculate' tool, which presumably executes the calculation, though the description does not explicitly name the alternative.
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?
No guidance is given about when to use this tool versus the sibling 'calculate' or 'enquiry_describe' tools. The intended use is implied by the name and title, but the description does not state conditions such as 'use this before calculating' or 'use calculate to run the calculator.'
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
enquiry_describeWhat you get: an ENQUIRY with a human (not a purchase, not a guaranteed quote)AInspect
Read first. States plainly what submit_enquiry does on California Solar Cost Calculator: it starts an enquiry with human providers who quote directly. Nothing is bought, ordered or paid; no quote is guaranteed; it is free. Also returns who receives the details, the consent wording, and how the person confirms.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It explains exactly what the tool does (returns a plain-language explanation of submit_enquiry), what it does not do (nothing is bought, ordered, paid, or guaranteed), and what information is returned (who receives details, consent wording, and confirmation method). This is thorough for a read-only informational tool.
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?
The description is three sentences, front-loaded with the most important instruction ('Read first'), and every sentence earns its place: it states the tool's purpose, clarifies what it is not, and summarizes the return value. There is no fluff or redundant repetition.
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 simple nature of the tool (zero parameters, no output schema), the description is fully complete. It explains what the tool does, why an agent should read it first, what the returned information covers, and the key caveats about submit_enquiry. Nothing essential is missing for an agent to decide when and how to invoke this 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?
The input schema has zero parameters, so the baseline is 4. The description correctly focuses on the tool's informational output rather than parameter syntax, and no additional parameter details are needed. It fully compensates for the absence of parameter information by explaining the tool's behavior.
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 states a specific verb ('States plainly') and resource ('what submit_enquiry does on California Solar Cost Calculator'), and clearly differentiates the tool from its sibling submit_enquiry by emphasizing it is informational rather than an action. It also clarifies that no purchase, order, payment, or guaranteed quote is involved, leaving no ambiguity about the tool's role.
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 opening 'Read first' explicitly tells the agent when to use this tool: before engaging with submit_enquiry. It provides clear context that this is a prerequisite read, though it does not explicitly mention exclusions or alternatives beyond the implied distinction from submit_enquiry. This is strong guidance for a describe-style tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
enquiry_fieldsThe questions the enquiry asksAInspect
Every field of the California Solar Cost Calculator enquiry: key, label, type, whether required, help text and the allowed options where there are any. Pass answers to submit_enquiry keyed by field key.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It clearly explains what information is returned: key, label, type, required flag, help text, and allowed options. It does not explicitly say the operation is read-only, but the content strongly implies a metadata retrieval with no side effects.
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?
The description is two sentences with no wasted words. The first sentence enumerates exactly what the agent will receive, and the second sentence gives direct actionable guidance for the related submission tool.
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?
For a zero-parameter metadata listing tool, the description is sufficiently complete. It identifies the domain, the exact fields returned, and how the output should be used with submit_enquiry. It could mention the output format or whether the result is a list, but that is a minor gap.
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?
The tool has zero parameters, so there is no parameter semantics burden on the description. The baseline of 4 applies because there is nothing to document and the description appropriately avoids inventing unnecessary parameter details.
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 states the tool returns every field of the California Solar Cost Calculator enquiry along with their metadata, which names a clear resource and distinguishes it from the sibling tools like submit_enquiry and calculate. It does not use a strong verb like 'list' or 'get', but the meaning is unambiguous.
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 gives clear context: use this tool to discover enquiry fields and pass answers keyed by field key to submit_enquiry. It does not explicitly exclude other tools or state when to prefer enquiry_describe, but the relationship to submit_enquiry is clearly implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
submit_enquirySubmit an ENQUIRY to human providers (two steps; not a purchase)AInspect
Submits an enquiry to California Solar Cost Calculator — NOT a purchase, NOT a guaranteed quote. Step 1: call with the answers (keyed by field key from enquiry_fields) and consent=true; it validates and returns a summary, the consent line and a confirmation token — show the person the summary and the consent line. Step 2: only if the person agrees, call again with the same answers, consent=true and the confirmation token; the enquiry is then submitted, and the person receives an email with a link they must click before any provider sees it. Consent means the person has read and agreed to: "Happy for my details to go to a licensed California solar installer, who'll contact me directly."
| Name | Required | Description | Default |
|---|---|---|---|
| answers | Yes | the person's answers, keyed by field key | |
| consent | Yes | true only when the person has agreed to: Happy for my details to go to a licensed California solar installer, who'll contact me directly. | |
| confirmation | No | the confirmation token from step 1, after the person has approved the summary |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full disclosure burden, and it does so thoroughly. It reveals that the tool is two-staged, that validation produces an intermediate summary, that a confirmation token is needed for final submission, and that the person must click an emailed link before any provider sees the enquiry. It also discloses the exact consent text, eliminating ambiguity about what 'consent' means.
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?
The description is dense but every sentence earns its place. It front-loads the core purpose and the crucial 'not a purchase' caveat, then organizes the two-step flow clearly. The quoted consent line is necessary verbatim text, not padding.
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?
For a tool with no annotations and no output schema, the description is remarkably complete. It explains all three parameters, the two required invocation patterns, the intermediate output (summary, consent line, token), and the post-submission email behavior. An agent has everything needed to call the tool correctly and avoid the common mistake of treating it as a single-step purchase.
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?
Although schema coverage is 100%, the description adds significant semantic value beyond the raw schema. It explains that answers must be keyed by enquiry_fields keys, that consent must reflect the exact quoted agreement, and that confirmation is the token returned from Step 1 and reused in Step 2. These details transform the parameter names from generic placeholders into a coherent workflow.
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 opens with a specific verb and resource: 'Submits an enquiry to California Solar Cost Calculator.' It immediately distinguishes itself from related actions with 'NOT a purchase, NOT a guaranteed quote,' and clearly frames the tool as a two-step human-provider submission process. This separates it from sibling tools like calculate or enquiry_describe without ambiguity.
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 gives explicit step-by-step usage instructions: Step 1 requires answers plus consent=true and returns a summary and confirmation token; Step 2 is only invoked if the person agrees and requires the same answers, consent=true, and the confirmation token. It also references enquiry_fields for the answer keys, providing concrete orientation to the sibling tool that supplies the required field structure.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
5 tool updates
- First observed
calculate - First observed
calculator_describe - First observed
enquiry_describe - First observed
enquiry_fields - First observed
submit_enquiry
Frequently Asked Questions
Claiming proves that you control a remote MCP connector. It does not move, proxy, or interrupt the server.
Open the connector listing, choose Claim ownership, and sign in to Glama.
Complete one verification method:
GitHub identity — fastest for official registry listings. For a namespace such as
io.github.alice/server, link the matching GitHub user, then choose Claim with GitHub. An organization namespace such asio.github.acme/serveralso needs that organization to have installed the Glama AI GitHub App and approved its permissions, because GitHub discloses organization membership only to apps it has installed. Use HTTP or DNS when it has not.HTTP challenge — works when you can deploy a public file. Generate a token, publish the exact JSON Glama shows at
/.well-known/glama.jsonon the same origin as the connector, then choose Check HTTP challenge.DNS challenge — works when you control DNS but cannot change the server. Generate a token, create the exact TXT record Glama shows, wait for it to propagate, then choose Check DNS challenge.
After verification, Glama sends a confirmation email and gives you access to listing details, thumbnails, health checks, and analytics. Keep the HTTP file or DNS record in place: Glama periodically checks it and ownership remains verified while the token is discoverable.
The HTTP ownership file has this structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"claim": "glama_claim_..."
}Claim tokens are opaque, stable, and bound to the signed-in Glama account. They contain no email address or other personal information. If Glama can no longer discover a verified HTTP or DNS token, it starts a seven-day grace period before removing claim-based access. Restore the same token during that period to keep ownership verified. Never publish an email address, Glama session token, GitHub token, or connector credential as ownership proof.
If verification fails, confirm that you copied the current token exactly. The HTTP file must be public, return valid JSON with a successful HTTP response, and stay on the connector's origin. DNS changes may need more time to propagate. A claim cannot transfer to a different origin or hostname: if the connector target changes, Glama starts the grace period and the new target must be claimed separately after the previous claim is released.
For a connector linked to the official MCP Registry, registry updates continue to replace its name, description, and URL by default. After claiming, open Manage connector and enable Use Glama listing details as the source of truth if edits made on Glama should be preserved. Categories and thumbnails are always managed on Glama; registry linkage and technical connection settings continue to sync.
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
To improve your MCP server's ranking:
Claim ownership of the server listing
Complete the server profile with an accurate description and thumbnail
Provide a test profile so Glama can connect to and evaluate the server
Keep tool definitions clear and complete to earn a high Tool Definition Quality Score (TDQS)
Route real usage through the Glama Gateway; more recorded successful server uses also improve the ranking
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!
Related MCP Connectors
Florida Solar Cost Calculator: the site's own MCP server — calculator, enquiry (enquiry = a...
Arizona Solar Cost Calculator: the site's own MCP server — calculator, enquiry (enquiry = a...
Texas Solar Cost Calculator: the site's own MCP server — calculator, enquiry (enquiry = a human...
IT Support Cost Calculator: the site's own MCP server — calculator, enquiry (enquiry = a human...
Related MCP Servers
- AlicenseNot gradedqualityCmaintenancePublic, no-login MCP server exposing SmartMoney77's financial calculators: compound interest, FIRE number, credit-card payoff, emergency fund, inflation, fees and the cost of waiting. Also computes historical "what if I had invested" returns from real yearly price data, and builds deep links and share packs for calculators in 6 localized editions.MIT
- AlicenseNot gradedqualityBmaintenanceA calculator MCP server built as part of a step-by-step tutorial that demonstrates core MCP primitives—tools, resources, and prompts—and can be upgraded to a live weather server.MIT
- AlicenseNot gradedqualityBmaintenanceMortgage Calculator AI - MCP server providing AI-powered tools and automation by MEOK AI Labs16MIT
- AlicenseAqualityCmaintenanceThe most comprehensive everyday calculator MCP server — 501 tools across 22 categories covering 8 countries' tax systems (FR, BE, CH, CA, US, UK, MA, SN). Finance, health, math, science, construction, conversions, education, sport, cooking, travel, and more. Free, no API key required. Streamable HTTP transport.15191MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.
TDQS
Each tool has a distinct focus: calculate runs the cost model, calculator_describe explains the model, enquiry_describe explains the submission process, enquiry_fields defines the input schema, and submit_enquiry completes the workflow. There is no functional overlap despite some similar naming.
The names mix standalone verbs (calculate, submit_enquiry), noun_verb descriptors (calculator_describe, enquiry_describe), and a noun_noun data tool (enquiry_fields). This is readable but does not follow a consistent verb_noun pattern.
Five tools is well-scoped for a calculator-plus-enquiry server: two calculator tools, two enquiry information tools, and one submission action. Each tool earns its place and the count stays within the ideal range.
The surface covers the full flow: understand the calculator, run it, understand the enquiry, get its fields, and submit with consent confirmation. No critical lifecycle gap exists for the stated purpose.