PlanElec MCP
Provides read-only access to PlanElec's public tools including AREI/RGIE regulation search, cable sizing, LED strip calculation, and Synergrid inverter data checks without requiring an account.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://planelec.be/mcp/publicWhat its tools do
8 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.
Checks and signals
Each line is separate evidence, not a trust score.
- Passed Endpoint answered the live check ·
- Passed Official MCP Registry namespace is tied to planelec.be ·
- Passed Endpoint is on the registry namespace domain ·
- Availability 1 of 1 checks passed in 30 days
What you can do with it
- Search AREI/RGIE regulations
- Size cables for Belgian circuits
- Calculate LED strip requirements
- Check inverter compatibility
Source and maintenance
Protocol and capabilities
- Server
- planelec 0.2.0
- MCP protocol negotiated in check
- 2025-11-25
- Tools
- 8 advertised
- Resources
- Not advertised
- Resource templates
- Not advertised
- Prompts
- Not advertised
{
"tools": {
"listChanged": true
}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
8 advertised
check_inverter_c10_26 — Check an inverter against Synergrid C10/26
Checks whether a PV inverter, battery inverter or other power-generating unit (PGU) is on the Synergrid C10/26 list of devices homologated for connection to the Belgian grid. Returns the outcome (found, found_with_limitations, expired, not_found, brand), matching devices with homologation dates, limitations and firmware versions, and homologated alternatives when nothing matches. Where available, each match also carries a separate "datasheet" object with manufacturer datasheet values (DC voltage, MPPT data, links, source URLs, status, last verified date); these are NOT checked by Synergrid and are not part of the approval. Search by brand and model, for example "Huawei SUN2000-10KTL".
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"description": "Brand and/or model, 2–80 characters."
},
"locale": {
"enum": [
"nl",
"fr",
"de",
"en"
],
"type": "string",
"description": "Language of source titles and links (nl, fr, de, en). Defaults to the server setting."
},
"phases": {
"enum": [
1,
3
],
"type": "number",
"description": "Optional: 1 or 3 phases, improves alternative suggestions."
},
"smaxVa": {
"type": "number",
"description": "Optional: apparent power in VA, improves alternative suggestions."
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"outcome",
"dataDate",
"matches",
"alternatives",
"source",
"officialSource",
"nextSteps"
],
"properties": {
"source": {
"type": "object",
"required": [
"title",
"url"
],
"properties": {
"url": {
"type": "string"
},
"title": {
"type": "string"
}
},
"additionalProperties": false
},
"matches": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {}
}
},
"outcome": {
"enum": [
"found",
"found_with_limitations",
"expired",
"not_found",
"brand"
],
"type": "string"
},
"dataDate": {
"type": [
"string",
"null"
]
},
"nextSteps": {
"type": "array",
"items": {
"type": "object",
"required": [
"label",
"url"
],
"properties": {
"url": {
"type": "string"
},
"label": {
"type": "string"
}
},
"additionalProperties": false
}
},
"alternatives": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {}
}
},
"officialSource": {
"type": "object",
"required": [
"title",
"url"
],
"properties": {
"url": {
"type": "string"
},
"title": {
"type": "string"
}
},
"additionalProperties": false
}
},
"additionalProperties": {}
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true
}suggest_inverter_c10_26 — Suggest brands or models from the Synergrid C10/26 list
Typeahead for the Synergrid C10/26 list: given a partial brand or model name, returns matching brands with device counts or, once a brand is recognised, its homologated models. Use this to resolve an ambiguous device name before calling check_inverter_c10_26.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"description": "Partial brand or model name, 1–80 characters."
},
"locale": {
"enum": [
"nl",
"fr",
"de",
"en"
],
"type": "string",
"description": "Language of source titles and links (nl, fr, de, en). Defaults to the server setting."
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"brands",
"models",
"matchedBrand",
"source"
],
"properties": {
"brands": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {}
}
},
"models": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {}
}
},
"source": {
"type": "object",
"required": [
"title",
"url"
],
"properties": {
"url": {
"type": "string"
},
"title": {
"type": "string"
}
},
"additionalProperties": false
},
"matchedBrand": {
"type": [
"string",
"null"
]
}
},
"additionalProperties": {}
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true
}get_inverter_datasheet — Get inverter datasheet data
Returns manufacturer datasheet data for an inverter from the Synergrid C10/26 list: maximum DC voltage, MPPT count and range, current limits per MPPT, start voltage, maximum PV power, battery capability, optimizer architecture, links to the datasheet and installation manual, the product photo URL, source URL and page per value, status (verified = stated in the datasheet, secondary = unconfirmed) and the date last verified. These are manufacturer statements and are NOT part of the Synergrid approval; use check_inverter_c10_26 for the approval status. Look up by Synergrid reference (GLV…) or by brand and model.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"brand": {
"type": "string",
"description": "Brand, e.g. Huawei. Use together with model."
},
"model": {
"type": "string",
"description": "Model designation, e.g. SUN2000-5KTL-M1. Use together with brand."
},
"locale": {
"enum": [
"nl",
"fr",
"de",
"en"
],
"type": "string",
"description": "Language of source titles and links (nl, fr, de, en). Defaults to the server setting."
},
"reference": {
"type": "string",
"description": "Synergrid reference, e.g. GLV073-06-0020. Alternative to brand and model."
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"datasheet",
"note",
"source"
],
"properties": {
"note": {
"type": "string"
},
"source": {
"type": "object",
"required": [
"title",
"url"
],
"properties": {
"url": {
"type": "string"
},
"title": {
"type": "string"
}
},
"additionalProperties": false
},
"datasheet": {
"type": "object",
"properties": {},
"additionalProperties": {}
}
},
"additionalProperties": {}
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true
}size_cable_arei — Size a cable per AREI/RGIE
Calculates the required copper or aluminium cable cross-section for a residential circuit under the Belgian AREI/RGIE: design current, voltage drop per cross-section, protection check against the breaker rating and the recommended cross-section. Provide the load (A, W, kW or kVA), one-way cable length in metres, the network (1x230V, 3x230V, 3x400V) and the breaker rating; other fields use the defaults for a typical socket circuit. The response includes a shareable link that opens the same calculation on planelec.be.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"mode": {
"enum": [
"check",
"plan"
],
"type": "string",
"description": "‘plan’ recommends a cross-section; ‘check’ evaluates selectedCrossSectionMm2."
},
"cosPhi": {
"type": "number",
"maximum": 1,
"description": "Power factor 0–1. Default: 0.95.",
"exclusiveMinimum": 0
},
"locale": {
"enum": [
"nl",
"fr",
"de",
"en"
],
"type": "string",
"description": "Language of source titles and links (nl, fr, de, en). Defaults to the server setting."
},
"lengthM": {
"type": "number",
"description": "One-way cable length in metres. Default: 30.",
"exclusiveMinimum": 0
},
"network": {
"enum": [
"1x230V",
"3x230V",
"3x400V"
],
"type": "string",
"description": "Supply network. Default: 1x230V."
},
"loadUnit": {
"enum": [
"A",
"W",
"kW",
"kVA"
],
"type": "string",
"description": "Unit of loadValue. Default: A."
},
"material": {
"enum": [
"CU",
"AL"
],
"type": "string",
"description": "Conductor material. Default: CU."
},
"loadValue": {
"type": "number",
"description": "Load magnitude in loadUnit. Default: 16.",
"exclusiveMinimum": 0
},
"breakerAmps": {
"type": "number",
"description": "Circuit-breaker rating in A. Default: 16.",
"exclusiveMinimum": 0
},
"circuitKind": {
"enum": [
"lighting",
"other"
],
"type": "string",
"description": "‘lighting’ applies the 3% voltage-drop limit, ‘other’ 5%."
},
"circuitPhases": {
"enum": [
"single",
"three"
],
"type": "string",
"description": "Circuit type; three-phase requires a 3x network."
},
"nominalVoltage": {
"type": "number",
"maximum": 1000,
"description": "Optional override of the nominal voltage (≤ 1000 V).",
"exclusiveMinimum": 0
},
"selectedCrossSectionMm2": {
"enum": [
1.5,
2.5,
4,
6,
10,
16,
25,
35,
50
],
"type": "number",
"description": "Cross-section to evaluate in ‘check’ mode."
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"currentAmps",
"activePowerW",
"nominalVoltage",
"maxVoltageDropPercent",
"comparison",
"overallStatus",
"input",
"source",
"nextSteps"
],
"properties": {
"input": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"source": {
"type": "object",
"required": [
"title",
"url"
],
"properties": {
"url": {
"type": "string"
},
"title": {
"type": "string"
}
},
"additionalProperties": false
},
"nextSteps": {
"type": "array",
"items": {
"type": "object",
"required": [
"label",
"url"
],
"properties": {
"url": {
"type": "string"
},
"label": {
"type": "string"
}
},
"additionalProperties": false
}
},
"comparison": {
"type": "array",
"items": {
"type": "object",
"required": [
"crossSectionMm2",
"dropVolts",
"dropPercent",
"maxLengthM"
],
"properties": {
"dropVolts": {
"type": "number"
},
"maxLengthM": {
"type": "number"
},
"dropPercent": {
"type": "number"
},
"crossSectionMm2": {
"type": "number"
}
},
"additionalProperties": {}
}
},
"currentAmps": {
"type": "number"
},
"activePowerW": {
"type": "number"
},
"overallStatus": {
"enum": [
"pass",
"fail",
"not_evaluated"
],
"type": "string"
},
"nominalVoltage": {
"type": "number"
},
"maxVoltageDropPercent": {
"type": "number"
}
},
"additionalProperties": {}
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true
}calculate_led_strip — Calculate an LED strip: current, power supply, feed points
Calculates power, current (total and per channel), required feed points, power-supply size and the extra-low-voltage feed cable for an analogue LED strip (5/12/24/48 V DC; single colour, CCT, RGB, RGBW, RGB+CCT). Provide the strip length in metres and either a preset or the datasheet values (voltage, colour channels, watts per metre at full load). Optional: cut unit, maximum length per feed, number of feeds, power-supply reserve, feed-cable length, material and cross-section, and voltage-drop limit. Planning values from datasheet data, not a manufacturer guarantee; current-carrying capacity, heat and AREI/RGIE rules for SELV, bathrooms and outdoor areas are not checked. The response includes a shareable link that opens the calculation on planelec.be.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lengthM"
],
"properties": {
"feeds": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Planned number of feed points; defaults to the minimum."
},
"locale": {
"enum": [
"nl",
"fr",
"de",
"en"
],
"type": "string",
"description": "Language of source titles and links (nl, fr, de, en). Defaults to the server setting."
},
"preset": {
"enum": [
"12v_mono_4_8",
"24v_mono_9_6",
"24v_mono_14_4",
"24v_cob_10",
"24v_cct_19_2",
"24v_rgb_14_4",
"24v_rgbw_19_2",
"48v_mono_10"
],
"type": "string",
"description": "Typical strip class as starting values; explicit fields override it."
},
"lengthM": {
"type": "number",
"maximum": 500,
"description": "Strip length in metres.",
"exclusiveMinimum": 0
},
"maxRunM": {
"type": "number",
"maximum": 100,
"description": "Manufacturer's maximum strip length per feed in m. Default: 5.",
"exclusiveMinimum": 0
},
"voltage": {
"enum": [
5,
12,
24,
48
],
"type": "number",
"description": "Strip nominal voltage in V DC. Default: 24."
},
"colorMode": {
"enum": [
"mono",
"cct",
"rgb",
"rgbw",
"rgbcct"
],
"type": "string",
"description": "Colour channels: mono, cct, rgb, rgbw or rgbcct. Default: mono."
},
"cutUnitMm": {
"type": "number",
"maximum": 1000,
"description": "Cut unit in mm; the length is rounded down to it.",
"exclusiveMinimum": 0
},
"feedLengthM": {
"type": "number",
"maximum": 1000,
"description": "One-way feed-cable length from power supply to strip in m. Default: 5.",
"exclusiveMinimum": 0
},
"feedMaterial": {
"enum": [
"CU",
"AL"
],
"type": "string",
"description": "Feed-cable conductor material. Default: CU."
},
"powerPerMeterW": {
"type": "number",
"maximum": 200,
"description": "Power per metre in W with all channels at full brightness. Default: 14.4.",
"exclusiveMinimum": 0
},
"psuReservePercent": {
"type": "number",
"maximum": 100,
"minimum": 0,
"description": "Power-supply reserve in percent. Default: 20."
},
"maxFeedDropPercent": {
"type": "number",
"maximum": 20,
"description": "Feed-cable voltage-drop limit in percent (planning assumption). Default: 3.",
"exclusiveMinimum": 0
},
"feedCrossSectionMm2": {
"enum": [
0.5,
0.75,
1,
1.5,
2.5,
4,
6,
10
],
"type": "number",
"description": "Planned feed-cable cross-section in mm²; omit for a recommendation only."
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"channels",
"powerW",
"currentA",
"requiredFeeds",
"feeds",
"psuRequiredW",
"feedComparison",
"warnings",
"overallStatus",
"input",
"source",
"nextSteps"
],
"properties": {
"feeds": {
"type": "number"
},
"input": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"powerW": {
"type": "number"
},
"source": {
"type": "object",
"required": [
"title",
"url"
],
"properties": {
"url": {
"type": "string"
},
"title": {
"type": "string"
}
},
"additionalProperties": false
},
"channels": {
"type": "number"
},
"currentA": {
"type": "number"
},
"warnings": {
"type": "array",
"items": {
"type": "string"
}
},
"nextSteps": {
"type": "array",
"items": {
"type": "object",
"required": [
"label",
"url"
],
"properties": {
"url": {
"type": "string"
},
"label": {
"type": "string"
}
},
"additionalProperties": false
}
},
"psuRequiredW": {
"type": "number"
},
"overallStatus": {
"enum": [
"pass",
"warn",
"fail"
],
"type": "string"
},
"requiredFeeds": {
"type": "number"
},
"feedComparison": {
"type": "array",
"items": {
"type": "object",
"required": [
"crossSectionMm2"
],
"properties": {
"crossSectionMm2": {
"type": "number"
}
},
"additionalProperties": {}
}
}
},
"additionalProperties": {}
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true
}search_help_guides — Search the PlanElec help center
Searches the PlanElec guides about getting started, automatic planning, document exports, AREI self-check coverage, floor plan import, symbols and circuits in the visitor’s current language. Returns up to five guides with title, summary, category and a link to the full article; the article text itself is not returned.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"query": {
"type": "string",
"description": "Keywords matched against title, summary and tags. Empty lists all guides."
},
"locale": {
"enum": [
"nl",
"fr",
"de",
"en"
],
"type": "string",
"description": "Language of source titles and links (nl, fr, de, en). Defaults to the server setting."
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"results",
"source"
],
"properties": {
"source": {
"type": "object",
"required": [
"title",
"url"
],
"properties": {
"url": {
"type": "string"
},
"title": {
"type": "string"
}
},
"additionalProperties": false
},
"results": {
"type": "array",
"items": {
"type": "object",
"required": [
"title",
"description",
"source"
],
"properties": {
"title": {
"type": "string"
},
"source": {
"type": "object",
"required": [
"title",
"url"
],
"properties": {
"url": {
"type": "string"
},
"title": {
"type": "string"
}
},
"additionalProperties": false
},
"description": {
"type": "string"
}
},
"additionalProperties": {}
}
}
},
"additionalProperties": {}
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true
}search_regelwerk — Search the Belgian AREI/RGIE regulations
Searches Book 1 of the Belgian AREI/RGIE (Royal Decree on electrical installations) in the language of the text: Dutch, French or German; English uses the German text. Returns up to ten articles with number, title, an excerpt, the edition in force today and a link to the article in the PlanElec reader; the full article text is not returned, use get_regelwerk_article for it. Search by keywords or by article number such as 4.2.4.3. Results are planning aids, not an official inspection.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 10,
"minimum": 1,
"description": "Maximum number of articles, 1–10. Default: 5."
},
"query": {
"type": "string",
"description": "Keywords or an article number such as 5.2.2.1 or 4.2.4.3, 2–120 characters."
},
"locale": {
"enum": [
"nl",
"fr",
"de",
"en"
],
"type": "string",
"description": "Language of source titles and links (nl, fr, de, en). Defaults to the server setting."
},
"version": {
"type": "string",
"pattern": "^v\\d{2}$",
"description": "Optional edition, e.g. v06 or v07. Default: the edition in force today (v06 until 31/10/2026, v07 from 01/11/2026)."
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"results",
"source"
],
"properties": {
"source": {
"type": "object",
"required": [
"title",
"url"
],
"properties": {
"url": {
"type": "string"
},
"title": {
"type": "string"
}
},
"additionalProperties": false
},
"edition": {
"type": "object",
"required": [
"version",
"sourceVersion",
"language",
"phase",
"applicableFrom",
"officialTranslationPending"
],
"properties": {
"phase": {
"type": "string"
},
"version": {
"type": "string"
},
"language": {
"enum": [
"nl",
"fr",
"de"
],
"type": "string"
},
"sourceVersion": {
"type": "string"
},
"applicableFrom": {
"type": "string"
},
"applicableUntil": {
"type": "string"
},
"officialTranslationPending": {
"type": "boolean"
}
},
"additionalProperties": {}
},
"results": {
"type": "array",
"items": {
"type": "object",
"required": [
"article",
"title",
"part",
"excerpt",
"source"
],
"properties": {
"part": {
"type": "number"
},
"title": {
"type": "string"
},
"source": {
"type": "object",
"required": [
"title",
"url"
],
"properties": {
"url": {
"type": "string"
},
"title": {
"type": "string"
}
},
"additionalProperties": false
},
"article": {
"type": "string"
},
"excerpt": {
"type": "string"
}
},
"additionalProperties": {}
}
}
},
"additionalProperties": {}
}{
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true
}get_regelwerk_article — Read an AREI/RGIE article
Returns the text of one article of Book 1 of the Belgian AREI/RGIE by its number (for example 4.2.4.3 or "AREI 7.1.4.3"), in the language of the text (Dutch, French or German; English uses the German text), with the edition, change notices of amending decrees, the titles of its sub-articles and a link to the article in the PlanElec reader. Cite the article number and edition when you pass the content on. Use search_regelwerk to find the number.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"article"
],
"properties": {
"locale": {
"enum": [
"nl",
"fr",
"de",
"en"
],
"type": "string",
"description": "Language of source titles and links (nl, fr, de, en). Defaults to the server setting."
},
"article": {
"type": "string",
"description": "Article number such as 4.2.4.3; a prefix such as \"AREI\" or \"RGIE\" is accepted."
},
"version": {
"type": "string",
"pattern": "^v\\d{2}$",
"description": "Optional edition, e.g. v06 or v07. Default: the edition in force today (v06 until 31/10/2026, v07 from 01/11/2026)."
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"source"
],
"properties": {
"text": {
"type": "string"
},
"title": {
"type": "string"
},
"source": {
"type": "object",
"required": [
"title",
"url"
],
"properties": {
"url": {
"type": "string"
},
"title": {
"type": "string"
}
},
"additionalProperties": false
},
"article": {
"type": "string"
},
"changes": {
"type": "array",
"items": {
"type": "object",
"required": [
"scope",
"version",
"provision"
],
"properties": {
"scope": {
"type": "string"
},
"version": {
"type": "string"
},
"provision": {
"type": "string"
}
},
"additionalProperties": {}
}
},
"edition": {
"type": "object",
"required": [
"version",
"sourceVersion",
"language",
"phase",
"applicableFrom",
"officialTranslationPending"
],
"properties": {
"phase": {
"type": "string"
},
"version": {
"type": "string"
},
"language": {
"enum": [
"nl",
"fr",
"de"
],
"type": "string"
},
"sourceVersion": {
"type": "string"
},
"applicableFrom": {
"type": "string"
},
"applicableUntil": {
"type": "string"
},
"officialTranslationPending": {
"type": "boolean"
}
},
"additionalProperties": {}
},
"truncated": {
"type": "boolean"
},
"subArticles": {
"type": "array",
"items": {
"type": "object",
"required": [
"article",
"title"
],
"properties": {
"title": {
"type": "string"
},
"article": {
"type": "string"
}
},
"additionalProperties": {}
}
}
},
"additionalProperties": {}
}{
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true
}Prompts
Not advertised
Resources
Not advertised
90-day uptime
A lightweight connection check about every six hours, sampled on hosts with many listings. It shows the server answered, not that its tools work.
- 2026-11-07: 2 of 2 checks answered
30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 712 ms
- 95th percentile latency
- 712 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 712 ms · metadata changed · 8 tool(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http planelec-mcp https://planelec.be/mcp/publicCodex
codex mcp add planelec-mcp --url https://planelec.be/mcp/publicCursor
{
"mcpServers": {
"planelec-mcp": {
"url": "https://planelec.be/mcp/public"
}
}
}Cline
{
"mcpServers": {
"planelec-mcp": {
"type": "streamableHttp",
"url": "https://planelec.be/mcp/public",
"disabled": false
}
}
}VS Code
{
"servers": {
"planelec-mcp": {
"type": "http",
"url": "https://planelec.be/mcp/public"
}
}
}Gemini CLI
gemini mcp add --transport http planelec-mcp https://planelec.be/mcp/publicClaude Desktop
https://planelec.be/mcp/publicWindsurf
{
"mcpServers": {
"planelec-mcp": {
"serverUrl": "https://planelec.be/mcp/public"
}
}
}Let your agent find its tools
Find servers like PlanElec MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.
Other developer tools servers
Do you run PlanElec MCP?
Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.