Tool reference
SolarSENS MCP exposes 4 read-only tools today. The assistant selects a tool from your question. Every read uses the access scope of the connected account.
Tool catalog
| Tool | Title | Description | Parameters |
|---|---|---|---|
list_accessible_plants | List Accessible Plants | List every Plant currently authorized for the signed-in SolarSens account. Read-only. | None. |
search_plants | Search Plants | Find accessible SolarSens Plants by name or code. Read-only. | query (string, required, 1-120 characters) |
get_plant_overview | Get Plant Overview | Read the caller-scoped Plant identity and catalog summary. Live telemetry is not included. | plantId (UUID, required) |
get_performance | Get Plant Performance | Read bounded date-level performance for one accessible Plant. | See get_performance parameters below. |
No other tool is available. If a question needs devices, alarms, work orders, portfolios, metric catalogs, or DataHub values, the assistant cannot answer it through this connector today.
get_performance parameters
| Parameter | Type | Required | Notes |
|---|---|---|---|
plantId | UUID | Yes | Use the canonical Plant ID returned by discovery. |
start | Date or date-time (see below) | Yes | Start of the window. |
end | Date or date-time (see below) | Yes | Must be after start. |
timezone | IANA time zone name | No | Defaults to Asia/Kuala_Lumpur. |
interval | daily or 5min | No | Defaults to daily. Only daily works today. A request with interval: "5min" fails with INVALID_QUERY, even though the field accepts the value. |
start and end accept three formats, all read in the timezone field:
- an ISO 8601 date-time with a UTC offset, for example
2026-09-22T00:00:00+08:00; - a date-time with no offset, for example
2026-09-22T00:00:00; - a plain date, for example
2026-09-22.
A plain-date start begins at 00:00:00. A plain-date end covers the whole day, through 23:59:59.
Example request:
{
"plantId": "00000000-0000-0000-0000-000000000000",
"start": "2026-09-01T00:00:00+08:00",
"end": "2026-09-08T00:00:00+08:00",
"timezone": "Asia/Kuala_Lumpur",
"interval": "daily"
}
Each returned row carries date, yieldKwh, performanceRatio,
availability, and irradiationKwhM2. Any of the value fields can be
null when the source has no reading for that date; a null value is not
the same as zero production.
The demo Plant DEMO-AI-P001 has no telemetry. A get_performance call for
it returns a response with no populated rows for the requested window. Do
not treat that empty result as evidence that a real Plant produced nothing;
check the response coverage and warnings first.
Response fields
Every successful response can include:
- a request ID;
- the Plant or other entities used by the result;
- the resolved date window and timezone, when the tool accepts one;
- metric definitions, when relevant; and
- coverage, warnings, and truncation metadata.
Missing values remain missing. An unavailable upstream is not reported as a successful empty result.
Shared limits
- A query accepts at most 1,000 returned rows and 1 MB of serialized data.
search_plantsaccepts a query string of 1-120 characters.- Use the canonical Plant ID returned by discovery for later reads. A Plant name is a search input, not an authorization method.
See Limits and errors for the full table and error codes.
Read-only boundary
The connector does not provide tools to:
- list devices, inverters, meters, or weather stations;
- read or list alarms or work orders;
- create, edit, assign, resolve, or delete anything;
- read portfolios, management summaries, metric catalogs, or DataHub values;
- run arbitrary SQL, HTTP, storage, or backend requests; or
- start export jobs.
These capabilities are absent from the connector today, not merely non-mutating. Calling a tool never changes SolarSENS data.