Świadectwo Energetyczne 24

Agent zamówień świadectw energetycznych — dane, wycena, dokumenty, płatność.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
91%
Integridad del esquema
95%
Calidad de los nombres
98%
Riesgo de envenenamiento
100%
Coincidencia de permisos
90%
Cumplimiento del protocolo
100%

Hallazgos (4)

  • LOWTool 'get_certificate_information' description lacks action verben get_certificate_information
  • LOWTool 'calculate_certificate_price' description lacks action verben calculate_certificate_price
  • LOWTool 'get_certificate_order_requirements' name length outside 3-30 rangeen get_certificate_order_requirements
  • LOWTool 'create_document_upload_url' suggests web access but openWorldHint=falseen create_document_upload_url

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~4,773Tokens (definiciones de herramientas)
~3.4 KBTamaño de respuesta típico
Impacto significativo en la atención (3.73% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "zamowienia": {
      "url": "https://swiadectwo-energetyczne24.pl/api/mcp"
    }
  }
}

Puntos de conexión remotos

https://swiadectwo-energetyczne24.pl/api/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (11)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢get_certificate_options(property_type)

Oferta: typy nieruchomości, dla których wystawiamy świadectwo (z ceną bazową brutto PLN), płatne dodatki (Express 8H, 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ą.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "property_type": {
      "type": "string",
      "enum": [
        "mieszkanie",
        "dom",
        "lokal-uzytkowy",
        "budynek-nieogrzewany"
      ],
      "description": "Zawęź listę typów nieruchomości do jednego typu."
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_certificate_information(topics)

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.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "topics": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "overview",
          "property_types",
          "pricing",
          "process",
          "lead_time",
          "documents",
          "legal",
          "faq",
          "contact"
        ]
      },
      "maxItems": 9,
      "description": "Zawęź odpowiedź do wybranych tematów. Domyślnie zwracane są wszystkie."
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡create_certificate_order(property_type, customer, address, property, options, ...)

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.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "property_type": {
      "type": "string",
      "enum": [
        "mieszkanie",
        "dom",
        "lokal-uzytkowy",
        "budynek-nieogrzewany"
      ],
      "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."
    },
    "customer": {
      "type": "object",
      "properties": {
        "first_name": {
          "type": "string",
          "maxLength": 100
        },
        "last_name": {
          "type": "string",
          "maxLength": 100
        },
        "email": {
          "type": "string",
          "maxLength": 200
        },
        "phone": {
          "type": "string",
          "maxLength": 40
        }
      },
      "additionalProperties": false,
      "description": "Dane kontaktowe klienta."
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string",
          "maxLength": 200
        },
        "building_number": {
          "type": "string",
          "maxLength": 30
        },
        "apartment_number": {
          "type": "string",
          "maxLength": 30
        },
        "postal_code": {
          "type": "string",
          "maxLength": 10
        },
        "city": {
          "type": "string",
          "maxLength": 120
        }
      },
      "additionalProperties": false,
      "description": "Adres nieruchomości."
    },
    "property": {
      "type": "object",
      "properties": {
        "area_m2": {
          "type": "number",
          "exclusiveMinimum": 0,
          "maximum": 10000
        },
        "height_m": {
          "type": "number",
          "exclusiveMinimum": 0,
          "maximum": 20
        },
        "year_built": {
          "type": "integer",
          "minimum": 1800,
          "maximum": 2100
        }
      },
      "additionalProperties": false,
      "description": "Podstawowe parametry: powierzchnia użytkowa, wysokość pomieszczeń, rok oddania do użytkowania."
    },
    "options": {
      "type": "object",
      "properties": {
        "express_24h": {
          "type": "boolean",
          "description": "Dodatek Express 8H – realizacja w 8 godzin roboczych (nazwa pola historyczna)."
        },
        "paper_version": {
          "type": "boolean"
        }
      },
      "additionalProperties": false,
      "description": "Płatne dodatki: express_24h (Express 8H – 8 godzin roboczych; nazwa pola historyczna), paper_version."
    },
    "fields": {
      "type": "array",
      "items": {
        "type": "object",
        "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."
          }
        },
        "required": [
          "path",
          "value"
        ],
        "additionalProperties": false
      },
      "maxItems": 80,
      "description": "Pola specyficzne dla typu nieruchomości, w formie ścieżka → wartość."
    },
    "windows": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "width_cm": {
            "type": "number",
            "exclusiveMinimum": 0,
            "maximum": 1000
          },
          "height_cm": {
            "type": "number",
            "exclusiveMinimum": 0,
            "maximum": 1000
          },
          "count": {
            "type": "integer",
            "minimum": 1,
            "maximum": 50
          }
        },
        "required": [
          "width_cm",
          "height_cm",
          "count"
        ],
        "additionalProperties": false
      },
      "maxItems": 30,
      "description": "Tylko dla `dom`: wymiary okien. Jednakowe okna podaje się raz z liczbą sztuk."
    },
    "doors": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "material": {
            "type": "string",
            "enum": [
              "Stalowe",
              "Aluminiowe",
              "PVC",
              "Drewniane",
              "Nie wiem"
            ]
          },
          "width_cm": {
            "type": "number",
            "exclusiveMinimum": 0,
            "maximum": 1000
          },
          "height_cm": {
            "type": "number",
            "exclusiveMinimum": 0,
            "maximum": 1000
          },
          "count": {
            "type": "integer",
            "minimum": 1,
            "maximum": 50
          }
        },
        "required": [
          "material",
          "count"
        ],
        "additionalProperties": false
      },
      "maxItems": 20,
      "description": "Tylko dla `dom`: drzwi zewnętrzne i bramy w ogrzewanej bryle."
    },
    "idempotency_key": {
      "type": "string",
      "minLength": 8,
      "maxLength": 200,
      "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."
    }
  },
  "required": [
    "property_type"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_certificate_order_requirements(order_id, access_token)

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.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "order_id": {
      "type": "string",
      "format": "uuid",
      "description": "order_id zwrócony przez create_certificate_order"
    },
    "access_token": {
      "type": "string",
      "minLength": 20,
      "maxLength": 200,
      "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."
    }
  },
  "required": [
    "order_id",
    "access_token"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡update_certificate_order(order_id, access_token, customer, address, property, ...)

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.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "order_id": {
      "type": "string",
      "format": "uuid",
      "description": "order_id zwrócony przez create_certificate_order"
    },
    "access_token": {
      "type": "string",
      "minLength": 20,
      "maxLength": 200,
      "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."
    },
    "customer": {
      "type": "object",
      "properties": {
        "first_name": {
          "type": "string",
          "maxLength": 100
        },
        "last_name": {
          "type": "string",
          "maxLength": 100
        },
        "email": {
          "type": "string",
          "maxLength": 200
        },
        "phone": {
          "type": "string",
          "maxLength": 40
        }
      },
      "additionalProperties": false,
      "description": "Dane kontaktowe klienta."
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string",
          "maxLength": 200
        },
        "building_number": {
          "type": "string",
          "maxLength": 30
        },
        "apartment_number": {
          "type": "string",
          "maxLength": 30
        },
        "postal_code": {
          "type": "string",
          "maxLength": 10
        },
        "city": {
          "type": "string",
          "maxLength": 120
        }
      },
      "additionalProperties": false,
      "description": "Adres nieruchomości."
    },
    "property": {
      "type": "object",
      "properties": {
        "area_m2": {
          "type": "number",
          "exclusiveMinimum": 0,
          "maximum": 10000
        },
        "height_m": {
          "type": "number",
          "exclusiveMinimum": 0,
          "maximum": 20
        },
        "year_built": {
          "type": "integer",
          "minimum": 1800,
          "maximum": 2100
        }
      },
      "additionalProperties": false,
      "description": "Podstawowe parametry: powierzchnia użytkowa, wysokość pomieszczeń, rok oddania do użytkowania."
    },
    "options": {
      "type": "object",
      "properties": {
        "express_24h": {
          "type": "boolean",
          "description": "Dodatek Express 8H – realizacja w 8 godzin roboczych (nazwa pola historyczna)."
        },
        "paper_version": {
          "type": "boolean"
        }
      },
      "additionalProperties": false,
      "description": "Płatne dodatki: express_24h (Express 8H – 8 godzin roboczych; nazwa pola historyczna), paper_version."
    },
    "fields": {
      "type": "array",
      "items": {
        "type": "object",
        "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."
          }
        },
        "required": [
          "path",
          "value"
        ],
        "additionalProperties": false
      },
      "maxItems": 80,
      "description": "Pola specyficzne dla typu nieruchomości, w formie ścieżka → wartość."
    },
    "windows": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "width_cm": {
            "type": "number",
            "exclusiveMinimum": 0,
            "maximum": 1000
          },
          "height_cm": {
            "type": "number",
            "exclusiveMinimum": 0,
            "maximum": 1000
          },
          "count": {
            "type": "integer",
            "minimum": 1,
            "maximum": 50
          }
        },
        "required": [
          "width_cm",
          "height_cm",
          "count"
        ],
        "additionalProperties": false
      },
      "maxItems": 30,
      "description": "Tylko dla `dom`: wymiary okien. Jednakowe okna podaje się raz z liczbą sztuk."
    },
    "doors": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "material": {
            "type": "string",
            "enum": [
              "Stalowe",
              "Aluminiowe",
              "PVC",
              "Drewniane",
              "Nie wiem"
            ]
          },
          "width_cm": {
            "type": "number",
            "exclusiveMinimum": 0,
            "maximum": 1000
          },
          "height_cm": {
            "type": "number",
            "exclusiveMinimum": 0,
            "maximum": 1000
          },
          "count": {
            "type": "integer",
            "minimum": 1,
            "maximum": 50
          }
        },
        "required": [
          "material",
          "count"
        ],
        "additionalProperties": false
      },
      "maxItems": 20,
      "description": "Tylko dla `dom`: drzwi zewnętrzne i bramy w ogrzewanej bryle."
    }
  },
  "required": [
    "order_id",
    "access_token"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_certificate_order(order_id, access_token)

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.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "order_id": {
      "type": "string",
      "format": "uuid",
      "description": "order_id zwrócony przez create_certificate_order"
    },
    "access_token": {
      "type": "string",
      "minLength": 20,
      "maxLength": 200,
      "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."
    }
  },
  "required": [
    "order_id",
    "access_token"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_certificate_order_status(order_id, access_token)

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).

Esquema de entrada

{
  "type": "object",
  "properties": {
    "order_id": {
      "type": "string",
      "format": "uuid",
      "description": "order_id zwrócony przez create_certificate_order"
    },
    "access_token": {
      "type": "string",
      "minLength": 20,
      "maxLength": 200,
      "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."
    }
  },
  "required": [
    "order_id",
    "access_token"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢calculate_certificate_price(order_id, access_token, property_type, options, discount_code)

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.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "order_id": {
      "type": "string",
      "format": "uuid",
      "description": "order_id zwrócony przez create_certificate_order"
    },
    "access_token": {
      "type": "string",
      "minLength": 20,
      "maxLength": 200,
      "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."
    },
    "property_type": {
      "type": "string",
      "enum": [
        "mieszkanie",
        "dom",
        "lokal-uzytkowy",
        "budynek-nieogrzewany"
      ],
      "description": "Wymagane, gdy nie podajesz order_id."
    },
    "options": {
      "type": "object",
      "properties": {
        "express_24h": {
          "type": "boolean",
          "description": "Dodatek Express 8H – realizacja w 8 godzin roboczych (nazwa pola historyczna)."
        },
        "paper_version": {
          "type": "boolean"
        }
      },
      "additionalProperties": false
    },
    "discount_code": {
      "type": "string",
      "maxLength": 40,
      "description": "Kod rabatowy podany przez użytkownika. Sam go nie wymyślaj ani nie proponuj."
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_payment_link(order_id, access_token)

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.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "order_id": {
      "type": "string",
      "format": "uuid",
      "description": "order_id zwrócony przez create_certificate_order"
    },
    "access_token": {
      "type": "string",
      "minLength": 20,
      "maxLength": 200,
      "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."
    }
  },
  "required": [
    "order_id",
    "access_token"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡create_document_upload_url(order_id, access_token, document_type, filename, mime, ...)

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.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "order_id": {
      "type": "string",
      "format": "uuid",
      "description": "order_id zwrócony przez create_certificate_order"
    },
    "access_token": {
      "type": "string",
      "minLength": 20,
      "maxLength": 200,
      "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": {
      "type": "string",
      "enum": [
        "property_photo",
        "floor_plan",
        "building_project",
        "technical_project",
        "energy_document",
        "other"
      ]
    },
    "filename": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    },
    "mime": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "image/jpeg, image/png, image/webp lub application/pdf (HEIC nie przyjmujemy)"
    },
    "size_bytes": {
      "type": "integer",
      "exclusiveMinimum": 0
    }
  },
  "required": [
    "order_id",
    "access_token",
    "document_type",
    "filename",
    "mime",
    "size_bytes"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡add_property_document(order_id, access_token, document_type, file_id, filename)

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.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "order_id": {
      "type": "string",
      "format": "uuid",
      "description": "order_id zwrócony przez create_certificate_order"
    },
    "access_token": {
      "type": "string",
      "minLength": 20,
      "maxLength": 200,
      "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": {
      "type": "string",
      "enum": [
        "property_photo",
        "floor_plan",
        "building_project",
        "technical_project",
        "energy_document",
        "other"
      ]
    },
    "file_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 500,
      "description": "file_id zwrócony przez create_document_upload_url"
    },
    "filename": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    }
  },
  "required": [
    "order_id",
    "access_token",
    "document_type",
    "file_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada11 herramientas
verificadoversión no registrada18 herramientas
verificadoversión no registrada18 herramientas