saightly

Svensk marknadsplats för lokala tjänster från verifierade företag — sök, boka och begär offert.

我該用這個嗎

品質與安全性

A
說明品質
77%
結構描述完整度
100%
命名品質
80%
汙染風險
100%
權限相符程度
100%
協定合規性
100%

發現項目(2)

  • LOWTool 'las_tjanst' description lacks action verb在 las_tjanst 中
  • LOWTool 'avropa_tjanst' description lacks action verb在 avropa_tjanst 中

根據工具定義與協定合規性的自動化分析。

上下文成本

~2,281Token(工具定義)
~1.7 KB典型回應大小
中等的注意力影響(128k 上下文的 1.78%)

這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。

安裝

一鍵安裝

將以下內容加入你的 `claude_desktop_config.json` 檔案:

{
  "mcpServers": {
    "saightly": {
      "url": "https://saightly.com/api/mcp"
    }
  }
}

遠端端點

https://saightly.com/api/mcpstreamable-http

它能做什麼

工具清單

工具(8)

🟢 唯讀🟡 寫入🔴 刪除⚪ 未知
⚪sok_tjanster(query)

Sök lokala tjänster i fritext (t.ex. "snickare i Vara asap"). Tolkar kategori, ort och brådska och returnerar rankade leverantörer. tips listar smarta alternativ utanför den exakta träffbilden (annan ort, högre omdöme eller lägre pris) med skälet i klartext — bra att vidarebefordra till användaren.

輸入結構描述

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Sökfråga i naturligt språk."
    }
  },
  "required": [
    "query"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪las_tjanst(slug)

Hämtar detaljer för en specifik tjänst via dess slug (från sok_tjanster).

輸入結構描述

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "description": "Tjänstens slug, t.ex. \"koksrenovering-vara\"."
    }
  },
  "required": [
    "slug"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪las_foretag(orgnr)

Hämtar grunduppgifter för ett organisationsnummer (namn, status, adress, SNI) från Bolagsverket.

輸入結構描述

{
  "type": "object",
  "properties": {
    "orgnr": {
      "type": "string",
      "description": "Organisationsnummer (10 siffror, med eller utan bindestreck)."
    }
  },
  "required": [
    "orgnr"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪lediga_tider(orgnr, slug, resurs, antal)

Direktbokning är PAUSAD — verktyget svarar med tom slots-lista och en förklaring. Förmedla i stället kontakt: las_foretag ger företagets uppgifter, och avropa_tjanst (utan bekraftad_tid) skickar en förfrågan som Saightly förmedlar. Bokningen sker sedan direkt hos företaget.

輸入結構描述

{
  "type": "object",
  "properties": {
    "orgnr": {
      "type": "string",
      "description": "Leverantörens organisationsnummer."
    },
    "slug": {
      "description": "Tjänstens slug (styr passlängd och utförare). Utelämnad: företagets första aktiva tjänst.",
      "type": "string"
    },
    "resurs": {
      "description": "Filtrera på en specifik utförare (resurs-id från ett tidigare svar).",
      "type": "string"
    },
    "antal": {
      "description": "Antal tider att returnera (standard 5, max 120).",
      "type": "number"
    }
  },
  "required": [
    "orgnr"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡avropa_tjanst(orgnr, slug, typ, ordervarde, onskad_tid, ...)

Skickar en FÖRFRÅGAN till en leverantör — Saightly förmedlar kontakten (gratis, avgift_kr är alltid 0). Direktbokning är pausad: bekraftad_tid/pass avvisas (409). Ange kundens behov i kontakt.meddelande och gärna onskad_tid. KRÄVER kundens RIKTIGA e-post i kontakt.epost: kunden får ett bekräftelsemejl och förfrågan förmedlas FÖRST när kunden klickat länken — hitta ALDRIG på en adress, och meddela kunden att kolla sin inkorg.

輸入結構描述

{
  "type": "object",
  "properties": {
    "orgnr": {
      "type": "string",
      "description": "Leverantörens organisationsnummer."
    },
    "slug": {
      "description": "Tjänstens slug (från sok_tjanster/las_tjanst) — VÄLJ RÄTT tjänst när företaget har flera. Utelämnad: företagets första aktiva tjänst.",
      "type": "string"
    },
    "typ": {
      "description": "Typ av avrop. Standard: forfragan.",
      "type": "string",
      "enum": [
        "forfragan",
        "bokning",
        "forsaljning"
      ]
    },
    "ordervarde": {
      "description": "Ordervärde i kr (ger värdebaserad avgift för bokning/försäljning).",
      "type": "number"
    },
    "onskad_tid": {
      "description": "Önskad tid (ISO 8601) för en förfrågan.",
      "type": "string"
    },
    "bekraftad_tid": {
      "description": "Vald ledig tid (ISO 8601) från lediga_tider → direktbokning som blockerar slotten. Kräver kontakt med namn, epost och telefon.",
      "type": "string"
    },
    "langd_minuter": {
      "description": "Bokningens längd i minuter — sätt till summan av flera INTILLIGGANDE pass för en längre bokning (annars ärvs tjänstens standardlängd).",
      "type": "number"
    },
    "pass": {
      "description": "DELAD bokning: flera tillfällen (även spridda över dagar, t.ex. mån 14–16 + ons 08–12) som EN bokning med samma status och kund. Varje pass: start (ledig tid enligt lediga_tider, ISO 8601) + langd_minuter. Ersätter bekraftad_tid/langd_minuter.",
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "start": {
            "type": "string"
          },
          "langd_minuter": {
            "type": "number"
          }
        },
        "required": [
          "start"
        ]
      }
    },
    "tillval": {
      "description": "Id:n på tjänstens tillval som kunden vill boka till (t.ex. färgning, webbmaster). Extra tid läggs på bokningen; namn och pris snapshotas på avropet.",
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "kontakt": {
      "description": "Kundens kontaktuppgifter. Vid bokning krävs namn, epost och telefon; adress krävs dessutom när tjänstens platstyp är hos_kund (se lediga_tider).",
      "type": "object",
      "properties": {
        "namn": {
          "type": "string"
        },
        "epost": {
          "type": "string"
        },
        "telefon": {
          "type": "string"
        },
        "adress": {
          "type": "string"
        },
        "meddelande": {
          "type": "string"
        }
      }
    }
  },
  "required": [
    "orgnr"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪skapa_offertforfragan(profil, beskrivning, ort, kontakt, plats)

Skickar en GENERELL förfrågan (t.ex. "bygga ut altan i Skara"). AI strukturerar briefen; förfrågan tas emot av emils.design — företaget bakom Saightly — som återkommer till kunden med förslag eller kontakt till rätt verifierat bolag. För att nå ETT specifikt företag direkt, använd avropa_tjanst. KRÄVER kundens RIKTIGA e-post: kunden får ett bekräftelsemejl och förfrågan förmedlas FÖRST när adressen bekräftats — hitta ALDRIG på en adress, och meddela kunden att kolla sin inkorg. Giltiga branscher (profil): bygg, stad, it, konsult, transport, gront, kreativt, vard, generisk.

輸入結構描述

{
  "type": "object",
  "properties": {
    "profil": {
      "type": "string",
      "enum": [
        "bygg",
        "stad",
        "it",
        "konsult",
        "transport",
        "gront",
        "kreativt",
        "vard",
        "generisk"
      ],
      "description": "Bransch/profil för jobbet."
    },
    "beskrivning": {
      "type": "string",
      "description": "Kundens beskrivning av jobbet i naturligt språk (minst 15 tecken)."
    },
    "ort": {
      "description": "Ort där jobbet ska utföras (styr geografisk matchning).",
      "type": "string"
    },
    "kontakt": {
      "type": "object",
      "properties": {
        "namn": {
          "type": "string"
        },
        "epost": {
          "type": "string",
          "description": "Kundens e-post — dit offertsvaren skickas (krävs)."
        },
        "telefon": {
          "type": "string"
        }
      },
      "required": [
        "epost"
      ],
      "description": "Kundens kontaktuppgifter."
    },
    "plats": {
      "description": "Var uppdraget ska utföras. Utelämnad: företagen får fråga kunden.",
      "type": "object",
      "properties": {
        "typ": {
          "type": "string",
          "enum": [
            "pa_plats",
            "hos_foretaget",
            "distans"
          ],
          "description": "Var uppdraget utförs: hos kunden (pa_plats), hos företaget (t.ex. frisör/studio) eller på distans."
        },
        "adress": {
          "description": "Adress vid pa_plats (valfritt — visas bara för företagen).",
          "type": "string"
        }
      },
      "required": [
        "typ"
      ]
    }
  },
  "required": [
    "profil",
    "beskrivning",
    "kontakt"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪las_offertforfragan(token)

Status och inkomna offerter för en tidigare skapad offertförfrågan (token från skapa_offertforfragan). Varje offert bär företag, verifiering, betyg, summa och pristyp (fastpris = bindande; budget = riktpris som stäms av innan start). Använd valj_offert för att välja vinnare.

輸入結構描述

{
  "type": "object",
  "properties": {
    "token": {
      "type": "string",
      "description": "Förfrågningstoken (returnerades av skapa_offertforfragan)."
    }
  },
  "required": [
    "token"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪valj_offert(token, offert_id)

Väljer vinnande offert på en offertförfrågan (id från las_offertforfragan). Vald → accepterad och företaget får kundens kontaktuppgifter; övriga avböjs vänligt och förfrågan stängs. Idempotent.

輸入結構描述

{
  "type": "object",
  "properties": {
    "token": {
      "type": "string",
      "description": "Förfrågningstoken."
    },
    "offert_id": {
      "type": "string",
      "description": "Offertens id (från las_offertforfragan)."
    }
  },
  "required": [
    "token",
    "offert_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

社群

為此伺服器評分

證據

近期觀測

已驗證未記錄版本8 個工具
已驗證未記錄版本8 個工具
已驗證未記錄版本8 個工具