Solar MCP
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Solar MCPEstimate solar production for a 6kW system at 123 Maple St, Austin, TX"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Solar MCP
A community-sponsored open-source MCP server that wraps solar industry APIs as tools for AI assistants. Built with FastMCP and hosted as a public endpoint at api.ontologic.co/solar-mcp.
Solar MCP gives AI assistants the ability to look up permitting authorities, estimate solar production, and retrieve solar resource data — making it easy to build solar-aware AI workflows.
Available Tools
lookup_ahj
Look up the Authority Having Jurisdiction (AHJ) for a solar installation site.
Parameter | Type | Required | Description |
| string | One of address or lat/lon | Street address |
| float | One of address or lat/lon | Latitude |
| float | One of address or lat/lon | Longitude |
Returns: ahj_name, ahj_id, building_code, electrical_code, fire_code, permit_authority, inspection_body, contact_name, contact_email, contact_phone, website
lookup_ahj_requirements
Look up detailed permitting requirements for a specific AHJ.
Parameter | Type | Required | Description |
| string | Yes | AHJ ID from |
Returns: nec_version, ibc_version, irc_version, special_requirements (list), permit_process_notes, online_submission (bool), typical_turnaround_days
lookup_pvwatts
Get a PVWatts v8 solar production estimate.
Parameter | Type | Required | Default | Description |
| string | One of address or lat/lon | — | Street address |
| float | One of address or lat/lon | — | Latitude |
| float | One of address or lat/lon | — | Longitude |
| float | Yes | — | System size in kW |
| float | No | 20 | Panel tilt angle |
| float | No | 180 | Panel azimuth (180 = south) |
| int | No | 1 | 0=fixed ground, 1=fixed open rack, 2=1-axis, 3=1-axis backtrack, 4=2-axis |
| int | No | 0 | 0=standard, 1=premium, 2=thin film |
| float | No | 14 | System losses (%) |
Returns: ac_annual_kwh, ac_monthly_kwh (12 values), solrad_annual, capacity_factor, station_info
lookup_solar_resource
Get solar resource data (irradiance) for a location.
Parameter | Type | Required | Description |
| string | One of address or lat/lon | Street address |
| float | One of address or lat/lon | Latitude |
| float | One of address or lat/lon | Longitude |
Returns: avg_dni, avg_ghi, avg_lat_tilt, nearest_station_name, station_distance_miles
Related MCP server: MeteoControl MCP Server
Connect in Claude Desktop
Add this to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"solar-mcp": {
"url": "https://api.ontologic.co/solar-mcp/mcp"
}
}
}Or to run locally:
{
"mcpServers": {
"solar-mcp": {
"url": "http://localhost:8000/solar-mcp/mcp"
}
}
}Run Locally
With Docker
docker build -t solar-mcp .
docker run -p 8000:8000 \
-e NREL_API_KEY=your_key_here \
-e SUNSPEC_API_TOKEN=your_token_here \
solar-mcpWithout Docker
pip install -e ".[dev]"
cp .env.example .env
# Edit .env with your API keys
python server.pyEnvironment Variables
Variable | Required | Description |
| Yes | NREL API key (get one free) |
| No | SunSpec AHJ Registry token (mock data used until available) |
| No | Server port (default: 8000) |
Running Tests
pip install -e ".[dev]"
pytest tests/ -vAttribution
NREL — PVWatts v8 API and Solar Resource Data API. This tool uses the NREL Developer Network API but is not endorsed or certified by NREL.
SunSpec Alliance — AHJ Registry API. AHJ data is currently mocked based on publicly available information; real API integration is pending token access.
Contributing
Contributions are welcome! To add a new tool:
Add Pydantic schemas in
models/schemas.pyAdd a client in
clients/(keep API interaction separate from tool logic)Add the tool function in
tools/Register the tool in
server.pyAdd tests in
tests/Update this README
Please open an issue first to discuss new tools or significant changes.
License
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP server connecting AI agents to 100+ apps (Gmail, Slack, Notion, GitHub) via one-click OAuth.
MCP server that lets AI assistants use all OneSchema features exposed via the public API.
MCP server for secureFlows: token-free URL builders and integration-linting tools for AI agents.
- ZapierOAuthcom.zapier
Hosted MCP server connecting AI assistants to 9,000+ apps and 40,000+ actions via Zapier.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn MCP server that provides AI assistants with access to documentation, schemas, and operations for over 535 n8n workflow automation nodes. It enables models to understand, create, and manage n8n workflows through natural language by connecting to the n8n API.77,070 npmMIT
- AlicenseCqualityDmaintenanceAn MCP server that enables natural language interaction with the MeteoControl VCOM API v2 for monitoring solar array installations. It allows users to retrieve real-time and historical energy data, system alerts, and detailed asset configuration metrics.4Apache 2.0
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol (MCP) server that provides comprehensive access to Tigo Energy solar system data and analytics. It enables AI assistants to interact with your Tigo solar monitoring system to retrieve production data, performance metrics, system health information, and maintenance insights.MIT
- AlicenseAqualityCmaintenanceA lean Model Context Protocol (MCP) server that gives AI assistants like Claude structured access to a SolarEdge PV installation via the official SolarEdge Monitoring API.4MIT