Open-Source · Self-Hosted · MIT Licenca

Dajte glas svom
biznisu uz Siri

Instalirajte Keryx na vaš sajt i omogućite korisnicima neverovatno iskustvo. Pitajte Siri: "Koja su mi dugovanja?" ili "Koliko imam nepročitanih vesti?" — a Keryx će im trenutno, putem apsolutno sigurnog protokola, odgovoriti podacima sa vašeg sajta.

Signal Bridge · Glas → Keryx → Vaš sajt
🎤
Siri
Glas
🌐
Vaš sajt
API
ChatGPTOpenAI Actions SiriApple Shortcuts GeminiFunction Calling ClaudeModel Context Protocol ChatGPTOpenAI Actions SiriApple Shortcuts GeminiFunction Calling ClaudeModel Context Protocol
Ključne funkcionalnosti

Sve što vam treba, na jednom mestu

Keryx objedinjuje dva modula — Next-Gen za LLM integraciju i Legacy za Apple Siri Shortcuts — u jedinstven, modularan sistem sa deljenim registrom alata.

01
🤖

MCP Server

Model Context Protocol endpoint za direktnu komunikaciju sa Claude, ChatGPT i drugim LLM agentima. Streamable HTTP transport u stateless režimu — idealan za load balancing.

02
📋

OpenAPI 3.1 Šema

Automatski generisana OpenAPI šema iz Zod definicija. LLM agenti je čitaju da otkriju dostupne funkcije i kako da komuniciraju sa vašom platformom.

03
📱

Siri Shortcuts

Generisanje Apple .shortcut fajlova iz URL-a i tokena. iOS korisnici preuzimaju prečicu koja izvršava HTTP zahtev sa Authorization header-om jednim tapom.

04
🔐

Bezbednost

Timing-safe autentifikacija, CORS politika, rate limiting (100 req/min), validacija ulaza Zod šemom, i ScPL injection zaštita.

05
🐳

Docker-Ready

Multi-stage Dockerfile, non-root korisnik, healthcheck endpoint. Pokreće se jednom komandom: docker-compose up. Optimizovano za WSL2 i Proxmox.

06
⚙️

REST API

Svaki registrovani alat automatski dobija REST endpoint na /api/tools/<ime>. Standardni JSON request/response sa validacijom i detaljnim greškama.

Arhitektura

Jedan registar, tri površine

Srce Keryx-a je deljeni registar alata. Svaki alat se definiše JEDNOM kao Zod šema + handler, a iz njega se automatski generišu sve tri API površine.

Sloj 1 — Definicija
Registar alata
src/core/registry.ts — centralno skladište. Svaki alat ima ime, Zod šemu ulaza, opis i handler funkciju. Moduli registruju alate pri inicijalizaciji.
Sloj 2 — Generisanje
Automatsko izlaganje
Iz registra se generišu: OpenAPI 3.1 šema (GET /openapi.json), MCP tool lista (POST /mcp), i REST rute (POST /api/tools/*).
Sloj 3 — Moduli
Next-Gen + Legacy
Svaki modul živi u svom direktorijumu i registruje alate nezavisno. Dodavanje novog alata = nova Zod šema + handler, bez diranja core koda.
Sloj 4 — Transport
Express HTTP server
Express 4 sa CORS, rate limit, timing-safe auth middleware. Graceful shutdown (SIGTERM/SIGINT) za Docker/Kubernetes.
Princip
Jedan izvor istine
OpenAPI šema i MCP server se grade iz istih definicija — nikada ne mogu da se raziđu.
registry.ts // Definiši alat jednom... const myTool = { name: "create_shortcut", input: z.object({ url: z.string().url(), token: z.string().min(1), }), handler: async (input) => { // ...generisi shortcut } }; // ...registruj jednom... registry.register(myTool); // ...pojavi se SVUDA: // ✓ GET /openapi.json // ✓ POST /mcp // ✓ POST /api/tools/create_shortcut
Struktura fajlova
src/
├── config/env.ts
├── core/
│   ├── registry.ts ← izvor istine
│   └── openapi.ts
├── modules/
│   ├── nextgen/ (MCP, echo, status)
│   └── legacy/ (Siri Shortcuts)
├── server.ts
└── index.ts
API Endpointi

Kompletna API mapa

Metoda Putanja Auth Opis
GET /healthz Javno Health check za Docker / load balancer
GET /openapi.json Javno OpenAPI 3.1 šema za Claude / ChatGPT
POST /mcp Token MCP Streamable HTTP (stateless)
POST /api/tools/gateway_status Token Status gateway-a i lista alata
POST /api/tools/echo Token Echo poruke (test konekcije)
POST /api/tools/create_shortcut Token Generiši Apple Siri prečicu
GET /api/shortcuts/:id Javno Download .shortcut fajla (capability URL)
Kako to izgleda u praksi

Od klika na sajtu do iPhone prečice

Kako ovo zapravo izgleda vašim korisnicima? Ako niste programer, evo kako ceo proces teče — glatko i bez instaliranja posebnih aplikacija.

01

Klik na vašem sajtu

Korisnik je ulogovan u vašu web aplikaciju. Vi postavite obično dugme "Dodaj na moj iPhone". Kada klikne, vaša aplikacija u pozadini pošalje Keryx-u instrukciju i token korisnika.

02

Keryx pravi magiju

U deliću sekunde, Keryx pakuje te instrukcije i generiše nativni Apple fajl za prečice (.shortcut). Keryx zatim vraća vašem sajtu bezbedan link za preuzimanje tog fajla.

03

Dodavanje na telefon

Korisnikov telefon automatski preuzima taj fajl. Otvara se ugrađena Shortcuts (Prečice) aplikacija na iPhone-u. Korisnik samo potvrdi sa "Add Shortcut" i to je to.

🎤
Završni rezultat: Kontrola glasom

Sada vaš korisnik može da kaže: "Hej Siri, uradi to i to". Njegov telefon će tajno u pozadini pozvati vaš sajt, koristeći njegov sigurni token. Korisnik nije morao ništa da podešava, ništa da instalira iz App Store-a, niti da unosi šifre!

Ko koristi Keryx

Napravljen za razne potrebe

🧑‍💻

Web developeri

Koji žele da izlože funkcionalnost svoje platforme AI agentima bez pisanja MCP servera od nule. Registruj alat — i Claude ga odmah koristi.

🏢

Firme sa internim alatima

Self-hosted: podaci ne napuštaju vašu infrastrukturu. Idealno za interne API-je koji treba da budu dostupni glasovnim asistentima i LLM-ovima.

📱

iOS korisnici i automatizatori

Generišite Siri prečice koje pozivaju vaš API jednim tapom. Bearer token se ugrađuje u prečicu — ne treba kucati nikakve podatke.

🏠

Homelab entuzijasti

Docker kontejner od 50MB, healthcheck ugrađen, radi na Proxmox/WSL2. Pokrenite na svom NAS-u ili mini serveru i povežite sa AI alatima.

Cenovnik

Fleksibilni planovi za svaki biznis

Izgrađen na super-brzoj tehnologiji, Keryx nam omogućava da vam ponudimo vrhunsku uslugu uz minimalne troškove. Počnite besplatno i platite tek kada vaš biznis poraste.

Free The Hook
$0 / mesečno

Savršeno za startape i male biznise da testiraju integraciju.

  • Sve funkcije Keryx-a
  • Do 1.000 AI interakcija mesečno
  • Integracija sa sajtom (MCP + Siri)
  • Diskretan "Powered by Keryx.ai" logo
Započni besplatno
Enterprise
Custom

Za velike e-commerce sajtove i sisteme sa stotinama hiljada poseta.

  • Sve iz Pro paketa
  • Dedicated infrastruktura
  • 99.99% SLA garancija dostupnosti
  • Maksimalna bezbednost i enkripcija podataka
  • 24/7 Premium podrška
Kontaktiraj prodaju
🔓

Zašto je Keryx Open-Source?

Igramo na kartu transparentnosti i sigurnosti. Pošto sistem barata vašim API tokenima, naš kod je uvek 100% javan na GitHub-u kako biste bili sigurni da nema skrivenih radnji. Mi ne prodajemo tajni kod — mi prodajemo "Keryx kao servis" onima koji žele bezbrižno, potpuno održavano i gotovo rešenje koje radi 24/7.

Najčešća pitanja

Pitanja i odgovori

Keryx je open-source, self-hosted API gateway koji služi kao most između vaše web platforme i AI asistenata (Claude, ChatGPT, Siri). Umesto da za svakog AI agenta pišete posebnu integraciju, registrujete alat jednom u Keryx — i on se automatski pojavljuje kao MCP tool, OpenAPI operacija i REST endpoint.
Ne. Keryx je potpuno self-hosted — pokrećete ga na svom serveru, NAS-u, ili čak Raspberry Pi-ju. Vaši podaci nikada ne prolaze kroz treće strane. Sve što vam treba je Docker ili Node.js ≥ 20.
MCP je otvoreni protokol koji omogućava LLM agentima (kao Claude) da otkrivaju i pozivaju spoljne alate. Keryx implementira MCP server preko Streamable HTTP transporta u stateless režimu — agent šalje JSON-RPC zahtev na /mcp i dobija listu alata ili izvršava operaciju.
Šaljete POST zahtev sa URL-om i Bearer tokenom na /api/tools/create_shortcut. Keryx generiše Apple .shortcut fajl (binary property list) koji sadrži ugrađeni HTTP zahtev. Dobijate download link — iOS korisnik ga otvori, doda prečicu, i jednim tapom (ili glasovnom komandom) poziva vaš API.
Token koji se ugrađuje u prečicu je token vašeg ciljnog API-ja, ne Keryx gateway token. On je vidljiv svakome ko preuzme .shortcut fajl — to je po dizajnu, jer prečica mora da radi autonomno. Preporučujemo korišćenje tokena sa ograničenim dozvolama i kratkim rokom trajanja. Download link ističe nakon 10 minuta i sadrži 128-bitni nepogodljiv ID.
Kreirajte fajl u src/modules/, definišite Zod šemu za ulaz, napišite handler funkciju, i pozovite registry.register(mojAlat). Keryx automatski generiše OpenAPI šemu, MCP tool i REST rutu. Ne trebate dirati core kod — pogledajte src/modules/nextgen/tools.ts kao primer.
Nema tehničkog ograničenja. Registar je in-memory Map koji se popuni pri pokretanju. Sa 100 alata, OpenAPI šema je svega nekoliko KB. MCP lista se generiše iz istog registra. Bottleneck bi bio samo memorija za shortcut store (konfiguriše se kroz KERYX_SHORTCUT_STORE_MAX).
Najjednostavniji način: cp .env.example .env, podesite KERYX_API_TOKEN i PUBLIC_BASE_URL, pa pokrenite docker-compose up -d. Kontejner koristi Node.js 20 Alpine, radi kao non-root korisnik, sa ugrađenim healthcheck-om.
MCP transport koristi Streamable HTTP koji internalno može koristiti SSE za streaming odgovora. Međutim, Keryx radi u stateless režimu — svaki zahtev je nezavisan, bez dugotrajnih konekcija. Za real-time funkcije, alat može integrisati WebSocket u svom handler-u.
Node.js ≥ 20 (ESM, "type": "module"). TypeScript 5.7+ u strict modu. Za razvoj se koristi tsx (watch mode), a za produkciju se kompajlira u JavaScript sa npm run build.
Deljeni registar je centralno mesto gde se svaki alat definiše tačno jednom. Iz njega se generišu OpenAPI šema, MCP alati i REST rute. To znači da je nemoguće da se ove tri površine raziđu — ako dodate parametar u Zod šemu, on se automatski pojavljuje svuda. To eliminše celu kategoriju bagova.
Download link ističe nakon KERYX_SHORTCUT_TTL_MS (podrazumevano 10 minuta). Nakon toga, GET /api/shortcuts/:id vraća 404 sa porukom „Prečica nije pronađena ili je istekla." Korisnik može zatražiti novu prečicu. Ovo sprečava nakupljanje fajlova u memoriji.
Da, za lokalni razvoj. Ako ostavite KERYX_API_TOKEN praznim u .env, autentifikacija je isključena. U produkciji, obavezno postavite token — svi zaštićeni endpointi zahtevaju Authorization: Bearer <token> header.
Da. Keryx je dizajniran za WSL2 i Proxmox okruženja. Docker kontejner koristi Alpine Linux i nema platformski-specifičnih zavisnosti. Može se pokrenuti i direktno kroz Node.js na Windows-u, ali Docker pristup je preporužen.
Keryx je MIT licenciran i otvoren za doprinose. Fork-ujte repozitorijum, dodajte modul ili alat prateći obrazac iz src/modules/nextgen/tools.ts, pokrenite npm run typecheck da proverite tipove, i otvorite Pull Request. Pogledajte TODO.md za planirane funkcije.
Apsolutno ne. Keryx radi na vašem serveru i procesira zahteve u deliću sekunde. Zato što je stateless i napisan u Node.js-u sa asinhronim tokovima, može da izdrži ogroman broj zahteva istovremeno bez blokiranja vašeg glavnog sajta.
Ne! To je i najveća prednost Keryx-a. Prečice (Shortcuts) su ugrađene u svaki iPhone. Vaš korisnik može da komunicira sa vašim sajtom koristeći samo telefon i glas, a da vi nikada niste morali da napravite i objavite aplikaciju na App Store-u.
Vaš glavni Keryx API token je sakriven na vašem serveru. Ali token vašeg korisnika (koji on koristi da bi dokazao ko je kada Siri pošalje zahtev) je ugrađen u prečicu na njegovom telefonu. To je njegov lični token, tako da on njime kontroliše samo svoj nalog.
Keryx je 100% besplatan i open-source projekat pod MIT licencom. Nema mesečnih pretplata, nema ograničenja funkcija, a možete ga menjati i koristiti u komercijalnim projektima.
Next-Gen modul (MCP i OpenAPI) radi svuda — na svakom LLM asistentu (Claude, ChatGPT). Ali Legacy modul je specifično dizajniran za generisanje .shortcut fajlova koji rade isključivo na iOS, iPadOS i macOS uređajima.
Treba vam samo server na kom možete da pokrenete Docker (što je većina modernih servera). Alternativno, možete ga pokrenuti i bez Dockera ako imate instaliran Node.js verzije 20 ili novije.
Sistemi poput Zapier-a naplaćuju po broju obavljenih zadataka, čuvaju podatke vaših korisnika na svojim serverima i zahtevaju podešavanje od strane korisnika. Keryx živi na vašem serveru, potpuno je besplatan neograničeno, i prečice se generišu automatski za svakog korisnika.
Ne. Keryx uopšte nema bazu podataka (stateless je). Generisane prečice se čuvaju samo trenutno u radnoj memoriji (RAM) dok ih korisnik ne preuzme (maksimalno 10 minuta), a zatim se nepovratno brišu. Vaši podaci ostaju vaši.
Minimalno. Naš "shared registry" sistem vas vodi kroz kreiranje alata. Dovoljno je da znate malo TypeScript/JavaScript-a, definišete koja polja vaša operacija traži koristeći Zod biblioteku, i Keryx sam obavlja svu tešku arhitekturu izlaganja.
To je razlog zašto Keryx i postoji kao posrednik (middleware)! Ako dođe do promena, naš open-source tim će ažurirati kod Keryx-a. Vi samo ažurirate Keryx instalaciju na svom serveru, dok kod vašeg glavnog sajta ostaje apsolutno netaknut.