Skip to main content
Glama

CSolar Energia

Server Details

Solar power estimates from the electricity bill, and the service area check, for São Paulo, Brazil.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4/5.0

Scored across 2 tools

Disambiguation5/5

The two tools have completely distinct purposes: one checks geographic service eligibility and the other performs a solar system calculation. There is no plausible way to confuse or misselect between them.

Naming Consistency5/5

Both names follow the same clear verb_noun snake_case convention (check_service_area, estimate_solar_system). The pattern is fully predictable.

Tool Count3/5

Only two tools for a solar company's surface feels thin, even if each is well-defined. The scope is narrow but there is little room for the agent to do anything beyond these two actions.

Completeness4/5

The surface covers a sensible eligibility-to-estimate flow, which is the core lead-gen lifecycle for this domain. The main gap is the absence of any quote/contact or next-step tool, though the stated no-personal-data policy suggests this is intentional.

Available Tools

2 tools
check_service_areaConferir área atendidaA
Read-only
Inspect

Diz se um município está na área atendida pela CSolar Energia para instalação de energia solar. A área atendida é o estado de São Paulo (645 municípios). Informe o município e, se souber, a UF. Não pede nem guarda dados pessoais.

ParametersJSON Schema
NameRequiredDescriptionDefault
ufNoUF do município, opcional (ex.: SP). Ajuda quando há municípios com o mesmo nome em outros estados.
cidadeYesNome do município, por exemplo Sorocaba.

Output Schema

ParametersJSON Schema
NameRequiredDescription
ufYes
mensagemYes
situacaoYes
municipioYesNome oficial do município, quando está na lista do site.
saiba_maisYesPágina do município no site, quando está na área atendida.
area_atendidaYes
fale_com_a_csolarYesContato com a equipe; null quando é de fora da área.

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile (readOnly, non-destructive, closed-world). The description adds genuinely useful behavioral context beyond that: the coverage boundary is strictly São Paulo, and the tool 'não pede nem guarda dados pessoais', which reassures on privacy handling for a lookup that takes a place name.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences, front-loaded with what the tool determines and the scope boundary, then input guidance, then the privacy note. Every sentence carries information an agent can act on; no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple boolean coverage check with an output schema and full annotation coverage, the description supplies purpose, business-rule scope, input guidance, and privacy behavior. The only omission is the relationship to the sibling tool, which is a minor gap given the low complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does 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, including why uf is optional and helpful for disambiguation. The description's 'se souber, a UF' merely restates that optionality, adding no syntax or format detail beyond the schema. Baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Diz se um município está na área atendida pela CSolar Energia') and even defines the scope of that area (state of São Paulo, 645 municipalities). It does not explicitly name or contrast with the sibling estimate_solar_system, but the function is unambiguously different from an estimation tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use it (to check coverage for solar installation) and instructs on inputs ('Informe o município e, se souber, a UF'), but it never states when NOT to use it or routes the agent to estimate_solar_system as the follow-up. Usage is implied rather than spelled out.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

estimate_solar_systemEstimar sistema de energia solarA
Read-only
Inspect

Estima um sistema de energia solar com microinversores a partir do consumo mensal em kWh ou do valor mensal da conta de luz em reais. Devolve potência em kWp, número de módulos, geração mensal, economia mensal, preço instalado e tempo de retorno, pela tabela de preços da CSolar Energia (setembro/2026). O cálculo usa a irradiação da região de Sorocaba/SP; fora da área atendida (estado de São Paulo), os números são só referência. É estimativa, não orçamento. Não pede nem guarda dados pessoais.

ParametersJSON Schema
NameRequiredDescriptionDefault
ufNoUF do município, opcional (ex.: SP).
cidadeNoMunicípio da instalação, opcional. Não muda o cálculo; serve para dizer se fica na área atendida.
consumo_kwh_mesNoConsumo mensal de energia em kWh, como aparece na conta de luz. Aceito de 50 a 20.000 kWh.
valor_conta_mesNoValor mensal da conta de luz em reais. Use quando não souber o consumo em kWh.

Output Schema

ParametersJSON Schema
NameRequiredDescription
areaYesSituação do município informado; null quando não veio cidade.
avisoYes
modulosYes
saiba_maisYesPágina do site sobre preço de energia solar.
potencia_kwpYes
retorno_anosYesTempo aproximado para a economia pagar o sistema.
base_do_calculoYes
consumo_kwh_mesYesConsumo usado no cálculo, em kWh por mês.
tabela_de_precosYes
fale_com_a_csolarYesContato com a equipe; null quando o município é de fora da área.
geracao_mensal_kwhYes
potencia_do_modulo_wYes
tarifa_reais_por_kwhYesTarifa usada para converter a conta em consumo.
economia_mensal_reaisYes
preco_instalado_reaisYesPreço do sistema instalado, pela tabela da CSolar.
consumo_calculado_pela_contaYestrue quando o consumo veio do valor da conta.

TDQS

A4.1/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare it read-only, non-destructive and closed-world, and the description adds substantial behavior beyond that: the CSolar price table with its date (setembro/2026), the Sorocaba/SP irradiation basis, the geographic validity caveat, the estimate-not-quote disclaimer, and an explicit statement that no personal data is requested or stored.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loads the purpose, then the outputs, then the geographic caveat and disclaimers, with no filler sentences. The enumeration of return values is mildly redundant given an output schema exists, which keeps it from a perfect score, but every sentence still earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, the description does not need to detail return fields yet still summarizes them, and it supplies the pricing basis, geographic scope, disclaimer and privacy note an agent needs to call and interpret this correctly. Nothing material is missing for a zero-required-parameter estimation tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all four parameters, including the 'use when you don't know kWh' note for valor_conta_mes and the 'does not change the calculation' note for cidade. The description adds only a high-level restatement of the two input modes, which is the expected baseline when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource (estimates a microinverter solar system) and enumerates exactly what it returns (kWp, module count, generation, savings, installed price, payback). It is very clear, but it never names or explicitly differentiates from its sibling check_service_area, which covers the same 'served area' concern the description raises.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives clear usage context: accepts either monthly kWh consumption or the monthly bill value, is an estimate rather than a quote, and outside São Paulo the numbers are reference only. It stops short of an explicit alternative (e.g. 'to verify coverage, use check_service_area') or an exclusion on required inputs, so it is good but not complete.

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.

  1. 2 tool updates
    • First observedcheck_service_area
    • First observedestimate_solar_system

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    MCP server for downloading and extracting text via OCR from Enel São Paulo electricity bills. Read-only with magic-link authentication and pre-paid credit usage.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    MCP server for consulting and downloading electricity account data from Enel São Paulo from official sources. Read-only, supports any MCP client over HTTP, uses magic-link login and pay-per-use credits.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Consulta em fonte oficial da Enel SP para gestão imobiliária, com ferramenta somente leitura e pagamento por uso via créditos pré-pagos.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Read-only MCP server for consulting official DER SP data, pay-per-use with prepaid credits.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources