{
  "markdown": "# MeteoControl MCP Server\n\nA Model Context Protocol (MCP) server for the MeteoControl VCOM API v2. This extension allows you to monitor solar arrays, retrieve energy production data, and perform system health checks using natural language via the Gemini CLI.\n\n## Features\n\n- **System Discovery:** List all solar systems associated with your account.\n- **Energy Monitoring:** Retrieve historical energy production data (Wh/kWh/MWh).\n- **Asset Information:** Get technical details about panels, inverters, and site capacity.\n- **Real-time Power:** Check instantaneous AC power output.\n- **Multi-Transport Support:** Run locally via Stdio or host remotely via SSE.\n- **Multi-Tenant (BYOC):** Support for \"Bring Your Own Credentials\" in a shared environment.\n\n## Installation\n\n### Via Gemini CLI (Recommended)\n\nTo install the extension directly from GitHub:\n\n```bash\ngemini extensions add https://github.com/your-org/meteocontrol-mcp\n```\n\n### Manual Installation\n\n1.  Clone the repository:\n    ```bash\n    git clone https://github.com/your-org/meteocontrol-mcp.git\n    cd meteocontrol-mcp\n    ```\n2.  Install dependencies and build:\n    ```bash\n    npm install\n    npm run build\n    ```\n\n## Usage\n\nOnce installed, you can ask Gemini about your solar systems:\n\n- \"List my solar systems.\"\n- \"What is the energy production for system [systemKey] for the last 24 hours?\"\n- \"Show me the technical details for INV1 in system [systemKey].\"\n\n### Multi-Tenant Usage (BYOC)\nIf you are using a shared MCP server, you can provide your own credentials directly in your prompts or configure them locally. The tools accept optional `apiKey`, `user`, and `password` arguments.\n\n### Pre-configured Commands\n\n- `/health [systemKey]`: Perform a comprehensive site health check.\n- `/yield [systemKey]`: Retrieve and summarize energy production data.\n\n## Deployment & Hosting\n\nThe server supports multiple modes of operation:\n\n### 1. Local Mode (Stdio)\nThis is the default mode used by the Gemini CLI.\n- **Command:** `node dist/index.js`\n- **Setup:** Defined in `gemini-extension.json` using `command` and `args`.\n\n### 2. Remote Mode (SSE)\nUse this mode to host the MCP server on a central server for multiple users.\n\n#### Security: Generating an Access Token\nRemote mode requires a mandatory `MCP_SERVER_TOKEN` for security. You can generate a secure token using:\n```bash\nopenssl rand -base64 32\n```\n\n#### Server Configuration\n- **Environment Variables:**\n  - `MCP_TRANSPORT=sse`\n  - `MCP_SERVER_TOKEN=your_generated_token` (Required)\n  - `PORT=3000` (optional, defaults to 3000)\n- **Run Command:**\n  ```bash\n  MCP_TRANSPORT=sse MCP_SERVER_TOKEN=your_token node dist/index.js\n  ```\n\n### 3. Docker Mode\nYou can run the server as a container for easy deployment.\n\n#### For Stdio Mode (CLI use):\n```bash\ndocker run -i --rm \\\n  -e METEOCONTROL_API_KEY=your_key \\\n  -e METEOCONTROL_USER=your_user \\\n  -e METEOCONTROL_PASSWORD=your_password \\\n  ghcr.io/your-org/meteocontrol-mcp:latest\n```\n\n#### For SSE Mode (Hosted use):\n```bash\ndocker run -d \\\n  -p 3000:3000 \\\n  -e MCP_TRANSPORT=sse \\\n  -e MCP_SERVER_TOKEN=your_token \\\n  -e METEOCONTROL_API_KEY=your_key \\\n  -e METEOCONTROL_USER=your_user \\\n  -e METEOCONTROL_PASSWORD=your_password \\\n  ghcr.io/your-org/meteocontrol-mcp:latest\n```\n\n#### Client Configuration (for SSE)\nIn your local `.gemini/settings.json`, add the `url` and the `Authorization` header:\n```json\n{\n  \"mcpServers\": {\n    \"meteocontrol\": {\n      \"url\": \"https://your-mcp-server.com/sse\",\n      \"headers\": {\n        \"Authorization\": \"Bearer your_generated_token\"\n      }\n    }\n  }\n}\n```\n\n## Configuration\n\nThe following environment variables are required for the server to talk to MeteoControl (unless credentials are provided per request):\n\n- `METEOCONTROL_API_KEY`: Your VCOM API key.\n- `METEOCONTROL_USER`: Your VCOM username (email).\n- `METEOCONTROL_PASSWORD`: Your VCOM password.\n\n## License\n\nApache License 2.0\n",
  "bytes": 3904,
  "sha": "39ee8e2fe9e113599cbfcaba86cfd5e738e0785008f146c899b75047758a7d8d",
  "repo_slug": "nielsvbrecht/meteocontrol-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/plg_nielsvbrecht_meteocontrol_mcp_44e33b8c/readme"
}