Koskamo

Świadectwo Energetyczne 24 MCP

Official MCP server for Świadectwo Energetyczne 24, a Polish service for ordering energy performance certificates. It allows AI agents to fetch form fields, check pricing, and draft orders for residential and commercial properties, facilitating the legal requirement for energy certificates in Poland.

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.

Świadectwo Energetyczne 24 MCP logo, by BRIL BROTHERS INNOVATION LABS sp. z o.o.Vendor evidenceStreamable HTTPNo sign-inEndpoint checked 2026-11-07Operated by BRIL BROTHERS INNOVATION LABS sp. z o.o.
MCP endpoint (Streamable HTTP)
https://swiadectwo-energetyczne24.pl/api/mcp
Vendor documentation

What its tools do

11 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.

11 of 11 have a description · 11 of 11 declare behavior hints · 8 of 11 with parameters document them all

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 swiadectwo-energetyczne24.pl ·
  • Passed Endpoint is on the registry namespace domain ·
  • Availability 1 of 1 checks passed in 30 days

What you can do with it

  • Fetch available form fields for energy certificate applications
  • Check current pricing for apartments, houses, and commercial spaces
  • Draft an order for an energy performance certificate

Source and maintenance

Vendor evidenceRegistry 1.2.0
Maintenance checked

Protocol and capabilities

Server
swiadectwo-energetyczne24 1.2.0
MCP protocol negotiated in check
2025-11-25
Tools
11 advertised
Resources
5 advertised
Resource templates
1 advertised
Prompts
1 advertised
Server-advertised capabilities
{
  "tools": {
    "listChanged": true
  },
  "prompts": {
    "listChanged": true
  },
  "resources": {
    "listChanged": true
  }
}

Server-provided instructions

Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.

Energy performance certificates (świadectwa charakterystyki energetycznej) for properties in Poland, from swiadectwo-energetyczne24.pl. All form values and all messages for the end user are in Polish. Order flow: 1. get_certificate_options / get_certificate_information — answer questions about the offer (property types, base prices, add-ons, process, lead times) from our data, never from your own knowledge. 2. create_certificate_order — create the order as soon as you know the property type. Always pass idempotency_key. KEEP the returned access_token: it is the only key to that order and every other order tool needs it. Never show it to the user. 3. get_certificate_order_requirements — the backend decides what is still missing and gives you a ready Polish question plus the allowed values for each field. Ask ONE question at a time; never guess technical parameters. 4. update_certificate_order — send the answers. Enum values must match the allowed options verbatim. 5. calculate_certificate_price — the only source of prices. Never compute or recall a price yourself. 6. get_payment_link — ONLY after you showed the price and the user explicitly agreed to it. Returns a secure link to our payment page; the user adds the building photo, accepts the terms and pays there. Never ask for card data and never collect legal consents yourself. 7. get_certificate_order_status — progress of a placed order (no personal data). get_certificate_order returns the full stored data when you need to read back what was collected. Documents: create_document_upload_url then add_property_document. This server never downloads files from URLs you provide. Unpaid orders expire after 30 days.

Tools

11 advertised

get_certificate_options — Opcje świadectwa
Advertised by the server during the last successful anonymous check.
Advertised read-only

Oferta: typy nieruchomości, dla których wystawiamy świadectwo (z ceną bazową brutto PLN), płatny dodatek (wersja papierowa), obsługiwane typy dokumentów i listy dozwolonych wartości (ogrzewanie, CWU, wentylacja, okna, drzwi). Wywołaj jako pierwsze, jeśli użytkownik nie określił typu nieruchomości. Ceny tu są cennikowe — cenę konkretnego zamówienia liczy calculate_certificate_price. Wartości enum podawaj później DOKŁADNIE tak, jak tu wyglądają.

get_certificate_options input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "property_type": {
      "enum": [
        "mieszkanie",
        "dom",
        "lokal-uzytkowy",
        "budynek-nieogrzewany"
      ],
      "type": "string",
      "description": "Zawęź listę typów nieruchomości do jednego typu."
    }
  },
  "additionalProperties": false
}
get_certificate_options annotations
{
  "readOnlyHint": true,
  "openWorldHint": false
}
get_certificate_information — Informacje o usłudze
Advertised by the server during the last successful anonymous check.
Advertised read-only

Fakty o usłudze pochodzące z naszego systemu: dla jakich nieruchomości wystawiamy świadectwo, przebieg procesu, czasy realizacji, wymagane dokumenty, podstawa prawna, FAQ i kontakt. Używaj tego zamiast odpowiadać z własnej wiedzy.

get_certificate_information input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "topics": {
      "type": "array",
      "items": {
        "enum": [
          "overview",
          "property_types",
          "pricing",
          "process",
          "lead_time",
          "documents",
          "legal",
          "faq",
          "contact"
        ],
        "type": "string"
      },
      "maxItems": 9,
      "description": "Zawęź odpowiedź do wybranych tematów. Domyślnie zwracane są wszystkie."
    }
  },
  "additionalProperties": false
}
get_certificate_information annotations
{
  "readOnlyHint": true,
  "openWorldHint": false
}
create_certificate_order — Utwórz zamówienie świadectwa
Advertised by the server during the last successful anonymous check.

Tworzy zamówienie świadectwa charakterystyki energetycznej. NIE musisz mieć wszystkich danych — podaj, co już wiesz; odpowiedź zawiera brakujące pola i pytanie, które zadać jako następne. Zwrócony access_token jest jedynym kluczem do tego zamówienia: zapamiętaj go i przekazuj do pozostałych narzędzi. Zamówienie nie jest opłacone dopóki użytkownik nie przejdzie przez link z get_payment_link.

create_certificate_order input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "property_type"
  ],
  "properties": {
    "doors": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "material",
          "count"
        ],
        "properties": {
          "count": {
            "type": "integer",
            "maximum": 50,
            "minimum": 1
          },
          "material": {
            "enum": [
              "Stalowe",
              "Aluminiowe",
              "PVC",
              "Drewniane",
              "Nie wiem"
            ],
            "type": "string"
          },
          "width_cm": {
            "type": "number",
            "maximum": 1000,
            "exclusiveMinimum": 0
          },
          "height_cm": {
            "type": "number",
            "maximum": 1000,
            "exclusiveMinimum": 0
          }
        },
        "additionalProperties": false
      },
      "maxItems": 20,
      "description": "Tylko dla `dom`: drzwi zewnętrzne i bramy w ogrzewanej bryle."
    },
    "fields": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "path",
          "value"
        ],
        "properties": {
          "path": {
            "type": "string",
            "maxLength": 200,
            "description": "Ścieżka pola z get_certificate_order_requirements, np. \"heating.heating\"."
          },
          "value": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 2000
              },
              {
                "type": "number"
              },
              {
                "type": "boolean"
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "maxLength": 200
                },
                "maxItems": 20
              }
            ],
            "description": "Wartość pola. Dla pól enum użyj DOKŁADNIE jednej z wartości z `options` — inna wartość jest odrzucana błędem INVALID_FIELD_VALUE."
          }
        },
        "additionalProperties": false
      },
      "maxItems": 80,
      "description": "Pola specyficzne dla typu nieruchomości, w formie ścieżka → wartość."
    },
    "address": {
      "type": "object",
      "properties": {
        "city": {
          "type": "string",
          "maxLength": 120
        },
        "street": {
          "type": "string",
          "maxLength": 200
        },
        "postal_code": {
          "type": "string",
          "maxLength": 10
        },
        "building_number": {
          "type": "string",
          "maxLength": 30
        },
        "apartment_number": {
          "type": "string",
          "maxLength": 30
        }
      },
      "description": "Adres nieruchomości.",
      "additionalProperties": false
    },
    "options": {
      "type": "object",
      "properties": {
        "express_24h": {
          "type": "boolean",
          "description": "Wycofany (13.10.2026) — ignorowany, nie zmienia ceny."
        },
        "paper_version": {
          "type": "boolean"
        }
      },
      "description": "Płatne dodatki: paper_version (wersja papierowa).",
      "additionalProperties": false
    },
    "windows": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "width_cm",
          "height_cm",
          "count"
        ],
        "properties": {
          "count": {
            "type": "integer",
            "maximum": 50,
            "minimum": 1
          },
          "width_cm": {
            "type": "number",
            "maximum": 1000,
            "exclusiveMinimum": 0
          },
          "height_cm": {
            "type": "number",
            "maximum": 1000,
            "exclusiveMinimum": 0
          }
        },
        "additionalProperties": false
      },
      "maxItems": 30,
      "description": "Tylko dla `dom`: wymiary okien. Jednakowe okna podaje się raz z liczbą sztuk."
    },
    "customer": {
      "type": "object",
      "properties": {
        "email": {
          "type": "string",
          "maxLength": 200
        },
        "phone": {
          "type": "string",
          "maxLength": 40
        },
        "last_name": {
          "type": "string",
          "maxLength": 100
        },
        "first_name": {
          "type": "string",
          "maxLength": 100
        }
      },
      "description": "Dane kontaktowe klienta.",
      "additionalProperties": false
    },
    "property": {
      "type": "object",
      "properties": {
        "area_m2": {
          "type": "number",
          "maximum": 10000,
          "exclusiveMinimum": 0
        },
        "height_m": {
          "type": "number",
          "maximum": 20,
          "exclusiveMinimum": 0
        },
        "year_built": {
          "type": "integer",
          "maximum": 2100,
          "minimum": 1800
        }
      },
      "description": "Podstawowe parametry: powierzchnia użytkowa, wysokość pomieszczeń, rok oddania do użytkowania.",
      "additionalProperties": false
    },
    "property_type": {
      "enum": [
        "mieszkanie",
        "dom",
        "lokal-uzytkowy",
        "budynek-nieogrzewany"
      ],
      "type": "string",
      "description": "Typ nieruchomości. mieszkanie = apartment, dom = house, lokal-uzytkowy = commercial unit, budynek-nieogrzewany = unheated building up to 70 m² (summer cabin, outbuilding, workshop) with no heating or air conditioning."
    },
    "idempotency_key": {
      "type": "string",
      "maxLength": 200,
      "minLength": 8,
      "description": "Dowolny stały identyfikator tej próby zamówienia. Ponowne wywołanie z tym samym kluczem zwraca istniejące zamówienie zamiast tworzyć duplikat. Ustawiaj zawsze."
    }
  },
  "additionalProperties": false
}
create_certificate_order annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
get_certificate_order_requirements — Czego brakuje w zamówieniu
Advertised by the server during the last successful anonymous check.
Advertised read-only

Zwraca listę pól, których brakuje, żeby zamówienie było gotowe do płatności — razem z gotowym pytaniem po polsku i dozwolonymi wartościami. To backend decyduje, czego brakuje; nie zgaduj i nie pytaj o pola spoza tej listy.

get_certificate_order_requirements input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "order_id",
    "access_token"
  ],
  "properties": {
    "order_id": {
      "type": "string",
      "format": "uuid",
      "description": "order_id zwrócony przez create_certificate_order"
    },
    "access_token": {
      "type": "string",
      "maxLength": 200,
      "minLength": 20,
      "description": "access_token zwrócony JEDEN RAZ przez create_certificate_order. Bez niego zamówienie jest niedostępne — zachowaj go na czas rozmowy i nigdy nie pokazuj użytkownikowi."
    }
  },
  "additionalProperties": false
}
get_certificate_order_requirements annotations
{
  "readOnlyHint": true,
  "openWorldHint": false
}
update_certificate_order — Uzupełnij zamówienie
Advertised by the server during the last successful anonymous check.

Częściowa aktualizacja zamówienia — podajesz tylko te pola, które chcesz ustawić lub zmienić; reszta zostaje nienaruszona. Zwraca aktualny status i pozostałe braki. Jeśli którakolwiek wartość jest spoza dozwolonej listy, NIC nie zostaje zapisane i dostajesz błąd INVALID_FIELD_VALUE.

update_certificate_order input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "order_id",
    "access_token"
  ],
  "properties": {
    "doors": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "material",
          "count"
        ],
        "properties": {
          "count": {
            "type": "integer",
            "maximum": 50,
            "minimum": 1
          },
          "material": {
            "enum": [
              "Stalowe",
              "Aluminiowe",
              "PVC",
              "Drewniane",
              "Nie wiem"
            ],
            "type": "string"
          },
          "width_cm": {
            "type": "number",
            "maximum": 1000,
            "exclusiveMinimum": 0
          },
          "height_cm": {
            "type": "number",
            "maximum": 1000,
            "exclusiveMinimum": 0
          }
        },
        "additionalProperties": false
      },
      "maxItems": 20,
      "description": "Tylko dla `dom`: drzwi zewnętrzne i bramy w ogrzewanej bryle."
    },
    "fields": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "path",
          "value"
        ],
        "properties": {
          "path": {
            "type": "string",
            "maxLength": 200,
            "description": "Ścieżka pola z get_certificate_order_requirements, np. \"heating.heating\"."
          },
          "value": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 2000
              },
              {
                "type": "number"
              },
              {
                "type": "boolean"
              },
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "maxLength": 200
                },
                "maxItems": 20
              }
            ],
            "description": "Wartość pola. Dla pól enum użyj DOKŁADNIE jednej z wartości z `options` — inna wartość jest odrzucana błędem INVALID_FIELD_VALUE."
          }
        },
        "additionalProperties": false
      },
      "maxItems": 80,
      "description": "Pola specyficzne dla typu nieruchomości, w formie ścieżka → wartość."
    },
    "address": {
      "type": "object",
      "properties": {
        "city": {
          "type": "string",
          "maxLength": 120
        },
        "street": {
          "type": "string",
          "maxLength": 200
        },
        "postal_code": {
          "type": "string",
          "maxLength": 10
        },
        "building_number": {
          "type": "string",
          "maxLength": 30
        },
        "apartment_number": {
          "type": "string",
          "maxLength": 30
        }
      },
      "description": "Adres nieruchomości.",
      "additionalProperties": false
    },
    "options": {
      "type": "object",
      "properties": {
        "express_24h": {
          "type": "boolean",
          "description": "Wycofany (13.10.2026) — ignorowany, nie zmienia ceny."
        },
        "paper_version": {
          "type": "boolean"
        }
      },
      "description": "Płatne dodatki: paper_version (wersja papierowa).",
      "additionalProperties": false
    },
    "windows": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "width_cm",
          "height_cm",
          "count"
        ],
        "properties": {
          "count": {
            "type": "integer",
            "maximum": 50,
            "minimum": 1
          },
          "width_cm": {
            "type": "number",
            "maximum": 1000,
            "exclusiveMinimum": 0
          },
          "height_cm": {
            "type": "number",
            "maximum": 1000,
            "exclusiveMinimum": 0
          }
        },
        "additionalProperties": false
      },
      "maxItems": 30,
      "description": "Tylko dla `dom`: wymiary okien. Jednakowe okna podaje się raz z liczbą sztuk."
    },
    "customer": {
      "type": "object",
      "properties": {
        "email": {
          "type": "string",
          "maxLength": 200
        },
        "phone": {
          "type": "string",
          "maxLength": 40
        },
        "last_name": {
          "type": "string",
          "maxLength": 100
        },
        "first_name": {
          "type": "string",
          "maxLength": 100
        }
      },
      "description": "Dane kontaktowe klienta.",
      "additionalProperties": false
    },
    "order_id": {
      "type": "string",
      "format": "uuid",
      "description": "order_id zwrócony przez create_certificate_order"
    },
    "property": {
      "type": "object",
      "properties": {
        "area_m2": {
          "type": "number",
          "maximum": 10000,
          "exclusiveMinimum": 0
        },
        "height_m": {
          "type": "number",
          "maximum": 20,
          "exclusiveMinimum": 0
        },
        "year_built": {
          "type": "integer",
          "maximum": 2100,
          "minimum": 1800
        }
      },
      "description": "Podstawowe parametry: powierzchnia użytkowa, wysokość pomieszczeń, rok oddania do użytkowania.",
      "additionalProperties": false
    },
    "access_token": {
      "type": "string",
      "maxLength": 200,
      "minLength": 20,
      "description": "access_token zwrócony JEDEN RAZ przez create_certificate_order. Bez niego zamówienie jest niedostępne — zachowaj go na czas rozmowy i nigdy nie pokazuj użytkownikowi."
    }
  },
  "additionalProperties": false
}
update_certificate_order annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
get_certificate_order — Pobierz zamówienie
Advertised by the server during the last successful anonymous check.
Advertised read-only

Pełny stan zamówienia: zebrane wartości pól, dołączone dokumenty, cena, status i braki. Używaj, gdy musisz odczytać, co już zapisano; do samego postępu realizacji wystarczy get_certificate_order_status. Dane osobowe zwracamy tylko posiadaczowi access_token.

get_certificate_order input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "order_id",
    "access_token"
  ],
  "properties": {
    "order_id": {
      "type": "string",
      "format": "uuid",
      "description": "order_id zwrócony przez create_certificate_order"
    },
    "access_token": {
      "type": "string",
      "maxLength": 200,
      "minLength": 20,
      "description": "access_token zwrócony JEDEN RAZ przez create_certificate_order. Bez niego zamówienie jest niedostępne — zachowaj go na czas rozmowy i nigdy nie pokazuj użytkownikowi."
    }
  },
  "additionalProperties": false
}
get_certificate_order annotations
{
  "readOnlyHint": true,
  "openWorldHint": false
}
get_certificate_order_status — Status zamówienia
Advertised by the server during the last successful anonymous check.
Advertised read-only

Skrócony status zamówienia — bez danych osobowych i bez wartości pól. Używaj do informowania użytkownika o postępie realizacji (płatność, przygotowanie świadectwa, wysyłka).

get_certificate_order_status input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "order_id",
    "access_token"
  ],
  "properties": {
    "order_id": {
      "type": "string",
      "format": "uuid",
      "description": "order_id zwrócony przez create_certificate_order"
    },
    "access_token": {
      "type": "string",
      "maxLength": 200,
      "minLength": 20,
      "description": "access_token zwrócony JEDEN RAZ przez create_certificate_order. Bez niego zamówienie jest niedostępne — zachowaj go na czas rozmowy i nigdy nie pokazuj użytkownikowi."
    }
  },
  "additionalProperties": false
}
get_certificate_order_status annotations
{
  "readOnlyHint": true,
  "openWorldHint": false
}
calculate_certificate_price — Oblicz cenę
Advertised by the server during the last successful anonymous check.
Advertised read-only

Wiążąca cena wyliczona przez nasz backend. Podaj order_id + access_token dla ceny konkretnego zamówienia albo samo property_type dla wyceny orientacyjnej. NIGDY nie licz ceny samodzielnie i nie podawaj kwot z pamięci.

calculate_certificate_price input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "options": {
      "type": "object",
      "properties": {
        "express_24h": {
          "type": "boolean",
          "description": "Wycofany (13.10.2026) — ignorowany, nie zmienia ceny."
        },
        "paper_version": {
          "type": "boolean"
        }
      },
      "additionalProperties": false
    },
    "order_id": {
      "type": "string",
      "format": "uuid",
      "description": "order_id zwrócony przez create_certificate_order"
    },
    "access_token": {
      "type": "string",
      "maxLength": 200,
      "minLength": 20,
      "description": "access_token zwrócony JEDEN RAZ przez create_certificate_order. Bez niego zamówienie jest niedostępne — zachowaj go na czas rozmowy i nigdy nie pokazuj użytkownikowi."
    },
    "discount_code": {
      "type": "string",
      "maxLength": 40,
      "description": "Kod rabatowy podany przez użytkownika. Sam go nie wymyślaj ani nie proponuj."
    },
    "property_type": {
      "enum": [
        "mieszkanie",
        "dom",
        "lokal-uzytkowy",
        "budynek-nieogrzewany"
      ],
      "type": "string",
      "description": "Wymagane, gdy nie podajesz order_id."
    }
  },
  "additionalProperties": false
}
calculate_certificate_price annotations
{
  "readOnlyHint": true,
  "openWorldHint": false
}
get_payment_link — Link do płatności
Advertised by the server during the last successful anonymous check.

Zwraca bezpieczny link do strony płatności dla kompletnego zamówienia. Na tej stronie użytkownik widzi podsumowanie i cenę, może dodać zdjęcie budynku (jeśli go jeszcze nie ma — da się je też dosłać po płatności), akceptuje regulamin i płaci u operatora płatności. WYWOŁUJ WYŁĄCZNIE po tym, jak pokażesz użytkownikowi cenę i dostaniesz od niego wyraźną zgodę. MCP nigdy nie przyjmuje danych karty.

get_payment_link input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "order_id",
    "access_token"
  ],
  "properties": {
    "order_id": {
      "type": "string",
      "format": "uuid",
      "description": "order_id zwrócony przez create_certificate_order"
    },
    "access_token": {
      "type": "string",
      "maxLength": 200,
      "minLength": 20,
      "description": "access_token zwrócony JEDEN RAZ przez create_certificate_order. Bez niego zamówienie jest niedostępne — zachowaj go na czas rozmowy i nigdy nie pokazuj użytkownikowi."
    }
  },
  "additionalProperties": false
}
get_payment_link annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
create_document_upload_url — Przygotuj miejsce na dokument
Advertised by the server during the last successful anonymous check.

Zwraca jednorazowy URL do wgrania pliku (metodą PUT) i file_id, którym potem dołączysz plik przez add_property_document. MCP nigdy nie pobiera plików z Internetu — bajty wysyła ten, kto je ma.

create_document_upload_url input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "order_id",
    "access_token",
    "document_type",
    "filename",
    "mime",
    "size_bytes"
  ],
  "properties": {
    "mime": {
      "type": "string",
      "maxLength": 100,
      "minLength": 1,
      "description": "image/jpeg, image/png, image/webp lub application/pdf (HEIC nie przyjmujemy)"
    },
    "filename": {
      "type": "string",
      "maxLength": 255,
      "minLength": 1
    },
    "order_id": {
      "type": "string",
      "format": "uuid",
      "description": "order_id zwrócony przez create_certificate_order"
    },
    "size_bytes": {
      "type": "integer",
      "exclusiveMinimum": 0
    },
    "access_token": {
      "type": "string",
      "maxLength": 200,
      "minLength": 20,
      "description": "access_token zwrócony JEDEN RAZ przez create_certificate_order. Bez niego zamówienie jest niedostępne — zachowaj go na czas rozmowy i nigdy nie pokazuj użytkownikowi."
    },
    "document_type": {
      "enum": [
        "property_photo",
        "floor_plan",
        "building_project",
        "technical_project",
        "energy_document",
        "other"
      ],
      "type": "string"
    }
  },
  "additionalProperties": false
}
create_document_upload_url annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": false,
  "destructiveHint": false
}
add_property_document — Dołącz dokument do zamówienia
Advertised by the server during the last successful anonymous check.

Dołącza wgrany wcześniej plik do zamówienia. file_id musi pochodzić z create_document_upload_url dla TEGO zamówienia. Zdjęcie budynku (property_photo) jest potrzebne do wystawienia świadectwa, ale nie blokuje płatności — jeśli go nie dodasz, użytkownik doda je na stronie płatności albo dośle później na stronie zamówienia.

add_property_document input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "order_id",
    "access_token",
    "document_type",
    "file_id"
  ],
  "properties": {
    "file_id": {
      "type": "string",
      "maxLength": 500,
      "minLength": 1,
      "description": "file_id zwrócony przez create_document_upload_url"
    },
    "filename": {
      "type": "string",
      "maxLength": 255,
      "minLength": 1
    },
    "order_id": {
      "type": "string",
      "format": "uuid",
      "description": "order_id zwrócony przez create_certificate_order"
    },
    "access_token": {
      "type": "string",
      "maxLength": 200,
      "minLength": 20,
      "description": "access_token zwrócony JEDEN RAZ przez create_certificate_order. Bez niego zamówienie jest niedostępne — zachowaj go na czas rozmowy i nigdy nie pokazuj użytkownikowi."
    },
    "document_type": {
      "enum": [
        "property_photo",
        "floor_plan",
        "building_project",
        "technical_project",
        "energy_document",
        "other"
      ],
      "type": "string"
    }
  },
  "additionalProperties": false
}
add_property_document annotations
{
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}

Prompts

1 advertised

order_energy_certificate — Zamów świadectwo energetyczne

Advertised by the server during the last successful anonymous check.

Instrukcja prowadzenia rozmowy, w której agent zbiera dane i składa zamówienie na świadectwo charakterystyki energetycznej.

property_type
Typ nieruchomości, jeśli użytkownik już go podał.

Resources

5 advertised

certificate-property-types — Typy nieruchomości z cenami bazowymi

Advertised by the server during the last successful anonymous check.

Typy nieruchomości z cenami bazowymi

certificate-property-types URI
certificate://property-types

MIME type: application/json

certificate-heating-options — Dozwolone wartości pola heating.heating

Advertised by the server during the last successful anonymous check.

Dozwolone wartości pola heating.heating

certificate-heating-options URI
certificate://heating-options

MIME type: application/json

certificate-hot-water-options — Dozwolone wartości pola heating.hotWater

Advertised by the server during the last successful anonymous check.

Dozwolone wartości pola heating.hotWater

certificate-hot-water-options URI
certificate://hot-water-options

MIME type: application/json

certificate-ventilation-options — Dozwolone wartości pola heating.ventilation

Advertised by the server during the last successful anonymous check.

Dozwolone wartości pola heating.ventilation

certificate-ventilation-options URI
certificate://ventilation-options

MIME type: application/json

certificate-document-types — Obsługiwane typy dokumentów

Advertised by the server during the last successful anonymous check.

Obsługiwane typy dokumentów

certificate-document-types URI
certificate://document-types

MIME type: application/json

certificate-order — Zamówienie świadectwa

Advertised by the server during the last successful anonymous check.

Stan zamówienia. URI wymaga access_token, bo zasoby MCP nie mają osobnego kanału autoryzacji.

certificate-order URI template
certificate://order/{orderId}/{accessToken}

MIME type: application/json

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
1447 ms
95th percentile latency
1447 ms

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · probe · passed · 1447 ms · metadata changed · 11 tool(s), 5 resource(s), 1 resource template(s), 1 prompt(s)

Connect from your client

Each snippet registers the same endpoint; pick the client you use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Claude Code

Run this once in a terminal. It registers the remote server. Use --scope project to write .mcp.json for the repo.
Claude Code configuration
claude mcp add --transport http s-wiadectwo-energetyczne-24-mcp-swiadectwo-energetyczne24 https://swiadectwo-energetyczne24.pl/api/mcp

Codex

Run this once. Codex stores MCP servers in ~/.codex/config.toml (or .codex/config.toml in a trusted project).
Codex configuration
codex mcp add s-wiadectwo-energetyczne-24-mcp-swiadectwo-energetyczne24 --url https://swiadectwo-energetyczne24.pl/api/mcp

Cursor

Merge this server into .cursor/mcp.json in your project, then enable s-wiadectwo-energetyczne-24-mcp-swiadectwo-energetyczne24 in your MCP settings.
Cursor configuration
{
  "mcpServers": {
    "s-wiadectwo-energetyczne-24-mcp-swiadectwo-energetyczne24": {
      "url": "https://swiadectwo-energetyczne24.pl/api/mcp"
    }
  }
}

Cline

Merge this into cline_mcp_settings.json (Cline → MCP Servers → Configure).
Cline configuration
{
  "mcpServers": {
    "s-wiadectwo-energetyczne-24-mcp-swiadectwo-energetyczne24": {
      "type": "streamableHttp",
      "url": "https://swiadectwo-energetyczne24.pl/api/mcp",
      "disabled": false
    }
  }
}

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start s-wiadectwo-energetyczne-24-mcp-swiadectwo-energetyczne24 and inspect its tools.
VS Code configuration
{
  "servers": {
    "s-wiadectwo-energetyczne-24-mcp-swiadectwo-energetyczne24": {
      "type": "http",
      "url": "https://swiadectwo-energetyczne24.pl/api/mcp"
    }
  }
}

Gemini CLI

Run this once. It writes .gemini/settings.json in the current project; pass --scope user for ~/.gemini/settings.json.
Gemini CLI configuration
gemini mcp add --transport http s-wiadectwo-energetyczne-24-mcp-swiadectwo-energetyczne24 https://swiadectwo-energetyczne24.pl/api/mcp

Claude Desktop

Open Claude Settings > Connectors > Add custom connector, enter this server URL and enable it for the conversation. This is a manual remote-connector handoff, not a desktop JSON configuration.
Claude Desktop configuration
https://swiadectwo-energetyczne24.pl/api/mcp

Windsurf

Merge this into ~/.codeium/windsurf/mcp_config.json, then refresh MCP in Cascade. Windsurf remote servers use serverUrl, not url.
Windsurf configuration
{
  "mcpServers": {
    "s-wiadectwo-energetyczne-24-mcp-swiadectwo-energetyczne24": {
      "serverUrl": "https://swiadectwo-energetyczne24.pl/api/mcp"
    }
  }
}

Let your agent find its tools

Find servers like Świadectwo Energetyczne 24 MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.

Do you run Świadectwo Energetyczne 24 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.

Claim this listing