Kanban MCP-szerver ChatGPT-hez, Claude-hoz, Cursorhoz és Codexhez
Írta: Andrei Finogeev, a Weft alapítója ·
A Weft egy hosztolt kanban tábla — Backlog, Todo, Doing, Done, opcionális sprintekkel —, és az MCP-szervere a https://letsweft.com/api/mcp címen érhető el. Add hozzá ezt az URL-t az AI-kliensedhez, és jelentkezz be egyszer OAuth-tal; semmit nem kell telepíteni vagy helyben futtatni. Ettől kezdve az asszisztens olvassa a táblát, kártyákat hoz létre és mozgat, munka előtt lefoglalja a kártyát, hogy két ügynök soha ne vegye fel ugyanazt, jelenti a haladást, megkérdez, ha a döntés a tiéd, és azzal zárja le a kártyát, amit csinált. Ingyenes 50 feladatig és havi 200 AI-hívásig.
https://letsweft.com/api/mcpStreamable HTTP · OAuth vagy személyes hozzáférési token · 32 eszköz
Add hozzá az AI-kliensedhez
ChatGPT
Weft megnyitása a ChatGPT-ben — vagy állítsd be kézzel:
- 1Nyisd meg a Pluginokat a ChatGPT oldalsávjában — vagy Settings → Plugins.
- 2Keress rá a „Weft” szóra, és nyisd meg a listázást.
- 3Kattints a „Connect” gombra, és nézd át, mihez férhet hozzá a Weft.
- 4Jelentkezz be a Weft-fiókoddal a megnyíló felugró ablakban.
@-említsd a plugint bármelyik csevegésben: „@Weft mi van a táblámon?” — vagy válaszd a Weftet a + menüből. Ha kihagytad a beállítást, a ChatGPT felajánlja az összekötést helyben.
Claude Desktop
- 1Nyisd meg: Claude Desktop → Settings → Connectors.
- 2Kattints az „Add custom connector” gombra.
- 3Illeszd be az alábbi Weft MCP-URL-t, és mentsd.
- 4Fejezd be az OAuth-ot a megnyíló böngészőablakban.
Kezdj új csevegést, és kérdezd: „mi van a Weft-táblámon?”. A Claude a Weft-konnektoron át kéri le a tábla állapotát.
Claude Code
claude mcp add --transport http weft https://letsweft.com/api/mcpFuttasd a `claude` parancsot bármelyik projektben, majd kérdezd: „mi van a táblámon?”. Első alkalommal böngészőablak nyílik az OAuth befejezéséhez.
Cursor
Hozzáadás a Cursorhoz — vagy állítsd be kézzel:
{
"mcpServers": {
"weft": {
"url": "https://letsweft.com/api/mcp"
}
}
}Nyisd meg: Cursor → Settings → MCP. A „weft” szervernek zöld jelzéssel kell megjelennie, miután befejezted az OAuth-ot.
Codex CLI
[mcp_servers.weft]
url = "https://letsweft.com/api/mcp"Futtasd a `codex mcp login weft` parancsot a böngészős bejelentkezéshez, majd indítsd a `codex` parancsot, és kérdezd: „mi van a táblámon?”. A `/mcp` listázza az összekötött szervert és az eszközeit.
VS Code
A Weft-bővítmény telepítése — vagy állítsd be kézzel:
{
"servers": {
"weft": {
"type": "http",
"url": "https://letsweft.com/api/mcp"
}
}
}Nyisd meg a Chatet, kapcsold a módválasztót Agentre, és kérdezd: „mi van a táblámon?”. Első alkalommal böngészőablak nyílik az OAuth-hoz. Az „MCP: List Servers” parancsnak Running állapotban kell mutatnia a weftet.
Windsurf
- 1Nyisd meg: Windsurf → Settings → Cascade → MCP servers.
- 2Kattints az „Add server” gombra, és válaszd a Remote (HTTP) lehetőséget.
- 3Illeszd be az alábbi Weft MCP-URL-t, és mentsd.
- 4Fejezd be az OAuth-ot a megnyíló böngészőablakban.
Nyisd meg a Cascade-et, és kérdezd: „mi van a táblámon?”. A Cascade megjelöli azokat a válaszokat, amelyek a Weft-szervert használták.
Gemini CLI
gemini extensions install https://github.com/AndreiFinogeev/weft-gemini-extensionFuttasd a `gemini` parancsot, és kérdezd: „mi van a weft-táblámon?”. Első használatkor böngésző nyílik az OAuth-hoz. A `gemini extensions list` kimenetében meg kell jelennie a „weft” bejegyzésnek.
Ügynököknek készült, nem csak neked
Lefoglalás ütközések helyett
A start_task lease-t tesz egy kártyára, mielőtt egy ügynök dolgozni kezd rajta. Egy második ügynök, amely munkát kér, másik kártyát kap, és az a kártya, amelynek az ügynöke elhallgatott, a lease lejártakor újra felkínálásra kerül.
Haladás és nyugták
A report_progress életben tartja a lefoglalást, amíg az ügynök dolgozik; a complete_task azzal zárja le a kártyát, mi készült el, mi nem, és ellenőrizhető linkeket ad.
A kérdések rád várnak
A request_input opciókkal együtt kérdést tesz az Inboxodba — a weben és a telefonodon —, ahelyett hogy az ügynök találgatna valamiben, amit csak te dönthetsz el.
A figyelmed szabja meg a tempót
Ha túl sok befejezett munka vár az átnézésedre, az ügynökök nem kezdenek új kártyát. Ez a kanban folyamatban lévő munkára vonatkozó korlátja, rád alkalmazva.
Te döntöd el, mit tehet egy-egy AI
Minden csatlakoztatott asszisztensnek adhatsz teljes, írási vagy csak olvasási hozzáférést, és egy kattintással leválaszthatod. A törölt kártyák a kukába kerülnek, nem tűnnek el azonnal végleg.


A(z) 32 eszköz
Minden eszköz jelzi, hogy csak olvas, ír, vagy eltávolít valamit, így a kliensed tudja, mikor kell előbb megkérdeznie téged.
| Eszköz | Mit csinál | Fajta |
|---|---|---|
| search | Kulcsszavas keresés feladatokban, sprintekben, döntésekben és memóriajegyzetekben. Legfeljebb 50 rangsorolt {id, title, url} találatot ad vissza, amelyek fajtaelőtagos azonosítói a fetch bemenetéül szolgálnak. | Olvas |
| fetch | Egyetlen keresési találat teljes tartalmának lekérése — cím, szöveges megjelenítés, forrás-URL és strukturált metaadatok. A search által visszaadott előtagos azonosítót várja. | Olvas |
| initialize_board | Létrehozza az alapértelmezett Backlog, Todo, Doing és Done oszlopot a Weft-tábládon, ha még nincsenek — ez az egyhívásos beállítás, mielőtt egy AI-ügynök feladatokat kezelne. Idempotens. | Ír |
| get_board_state | Tömör összefoglalót ad a felhasználó Scrumban táblájáról: oszlopok, aktív sprint, Doing, lejárt határidejű feladatok és a legutóbbi lezárások, nagyjából 30-szor kisebb egy teljes pillanatképnél. | Olvas |
| list_columns | A tábla összes oszlopát listázza sorrendben — mindegyiknél az azonosítót, a nevet és a pozíciót, így az ügynök pontosan tudja, hová mozgathat egy feladatot. | Olvas |
| list_tasks | A hitelesített felhasználó feladatait adja vissza, opcionálisan oszlop, sprint, projekt (név vagy azonosító), létrehozó (ember vagy AI) vagy felelős (a végrehajtó) szerint szűrve. | Olvas |
| create_task | Új feladatot hoz létre a felhasználó tábláján. Ha nincs megadva oszlop, a Backlogba kerül. A prioritás alapból közepes. Akkor használd, ha a felhasználó feladat hozzáadását kéri. | Ír |
| bulk_create_tasks | Legfeljebb 1000 feladatot hoz létre egyetlen atomi hívásban — Linear/Jira/Notion/Trello exportok vagy bármilyen 3+ feladatos lista importálásához, mindössze egy AI-hívásnyi kvótáért. | Ír |
| update_task | Egy meglévő feladat mezőit módosítja. Csak az átadott mezők változnak; a kihagyottak megmaradnak — egy kivétellel: a requiresReview törlését ügynöknek megtagadja, és a megtagadás az egész módosítást elveti. | Ír |
| move_task | Egy feladatot másik oszlopba és pozícióba mozgat. A semantic='doing' oszlopba mozgatás elindítja a ciklusidő mérését; a semantic='done' oszlopba mozgatás rögzíti a befejezés idejét. | Ír |
| start_task | Az AI abban a pillanatban hívja meg, amikor elkezdi végrehajtani a feladatot — a kártya a Doing oszlopba kerül, így a felhasználó és minden más csatlakoztatott kliens látja, hogy folyamatban van (és nem veszi fel kétszer). Elindítja a ciklusidő mérését; a felelős nélküli feladatot a hívó ügynök foglalja le (a meglévő felelőst soha nem írja felül). Oszlopazonosító nem kell. | Ír |
| report_progress | Jelzi, hogy még dolgozol. A feladat lefoglalása lejár, ha a kliens elhallgat, és ez megújítja. Szívverés nélkül egy hosszan futó feladat elhagyottnak számít, és másnak kínálják fel — szándékosan, mert a futás közben leálló ügynök semmit sem jelent, így a csend az egyetlen jel, ami a táblának rendelkezésére áll. | Ír |
| request_input | Megkérdez valamit az embertől, amit csak ő dönthet el, és a feladat lefoglalásának elvesztése nélkül vár. Ha a kliensénél van, ott megjelenik egy űrlap, és a válasz ugyanabban a hívásban érkezik vissza — az ügynök ugyanabban a kontextusban, ugyanazzal a lefoglalással folytatja. Ha nincs ott, a hívás parkoltatott állapottal tér vissza, és a kérdés a sorában vár; a válasz az ügynök következő start_task vagy get_my_work hívásakor jut el hozzá. A visszafordíthatatlan és a valóban kétértelmű esetekre való, nem arra, hogy „folytathatom?” — minden kérdés ugyanabból a figyelemkeretből fogy, amely az új munkát is korlátozza. | Ír |
| submit_answer | Visszahozza, amit az ember az ügynök kérdésére mondott, és ugyanazzal a runId-vel és lease-szel adja vissza a munkát, így az ugyanabban a próbálkozásban folytatódik, nem kezdődik elölről. Továbbítottként jelöli, soha nem úgy, mintha maga az ember cselekedett volna — az ügynök által hozott válasz és az ember kattintása különböző fajta bizonyíték, és a tábla elkülönítve tartja őket. Ha a kérdésre már válaszoltak a Weft appban, hiba helyett azt a választ adja vissza: az számít, hogy az ügynök a helyes válasszal folytassa. | Ír |
| get_my_work | Megkérdezi, mi a következő teendő, ahelyett hogy az egész táblát végigolvasná és találgatna. Visszaadja az ehhez a klienshez rendelt feladatokat, azt, ami már az emberre vár, és hogy van-e hely a figyelemsorban. Megnevezi azt is, mi késik, és mi esedékes vagy indul a héten, így az ügynök kérdezés nélkül értesül egy határidőről. Ha a sor megtelt, a hasznos lépés a kiürítésében segíteni, nem újat kezdeni — és ezt még azelőtt megmondja, hogy feladatot választanának. | Olvas |
| complete_task | Az AI akkor hívja meg, amikor a munka valóban elkészült — a kártya a Done oszlopba kerül a befejezés idejével, az opcionális eredmény (mi készült el, hol található az eredmény) pedig "Outcome (AI, date)" jegyzetként a kártyához fűződik. Oszlopazonosító nem kell. Az a munka, amelyhez rád van szükség, NEM kerül a Done oszlopba: a sorodba kerül a csatolt nyugtával, és ha az ügynök megmondta, mit tenne ezután, az elfogadás pontosan azt a lépést hagyja jóvá, és visszaadja az ügynöknek. Ha a feladathoz ellenőrzési terv tartozik, a szerver itt helyben lefuttatja az ellenőrzéseit — lekéri az URL-t, megkeresi az idézetet, összeveti a hash-t: az az executable/state_delta terv, amelynek minden blokkoló ellenőrzése sikeres, szerver által ellenőrzötten zárul; egy sikertelen blokkoló ellenőrzés kívül tartja a kártyát a Done oszlopon, és megmutatja az ügynöknek, mit észlelt a szerver. | Ír |
| record_decision | Egy eszköz, két felhasználás, egy nyilvántartási tábla. (1) Továbbít egy ítéletet, amelyet beszélgetésben mondtál egy rád váró befejezett munkáról — jóváhagyva, vissza vele, elvetve, később —, és ezzel kiveszi a kártyát az átnézési sorból; a bejegyzés továbbítottként tárolódik, nem úgy, mintha te cselekedtél volna az appban, és ez a különbség szándékosan látható marad. (2) Rögzít egy önálló, megjegyzésre érdemes döntést — „a Neont választottuk a Supabase helyett”, egy tanulságot — megváltoztathatatlan MADR-lite bejegyzésként a mérlegelt opciókkal és azzal a feltétellel, amelynél újra kell gondolni. A bejegyzéseket soha nem szerkesztik: egy supersedesId-vel rögzített új döntés felváltja a régit, a régi pedig olvasható marad abban a formában, ahogy a meghozatala napján szólt. Ezeket a bejegyzéseket adja vissza a get_context jövő héten minden ügynöknek. | Ír |
| get_context | A munkaterület élő döntései és tanulságai, egy tokenkeretbe csomagolva, a legújabbak elöl — amit egy ügynöknek el kell olvasnia, mielőtt bármi nem triviálisba kezd. A rögzített döntésekből származik, nem dokumentumként íródik, így nem tud elavulni: egy felváltott döntés abban a pillanatban kiesik, amikor az utódját rögzítik, és minden sor viseli a dátumát. Egy projektre vagy feladatra szűkítheted; a keretbe nem férő sorokat megszámolja, soha nem rejti el csendben. | Olvas |
| get_task_history | Mi történt egy feladattal, nem csak a jelenlegi mezői. Három mód: 'summary' (alapértelmezett, ≤500 token — a kártya, a legutóbbi nyugtája, darabszámok), 'decisions' (minden róla rögzített döntés, az ítéletekkel és indoklásukkal együtt — egy átdolgozás oka itt megmarad azután is, hogy egy későbbi elfogadás felülírja a kártyát), 'full' (a nyers napló, legfeljebb 100 eseménnyel, és ezt jelzi is). Azért létezik, mert egy auditnapló túl bőbeszédű ahhoz, hogy közvetlenül olvassák, a feladat sora pedig mindig csak a legutóbbi ítéletet tartja. | Olvas |
| trash_task | Egy feladatot a kukába tesz a Weft-tábládon. 30 napig visszaállítható a restore_task segítségével, utána egy ütemezett feladat véglegesen törli. | Eltávolít |
| restore_task | Visszaállít egy feladatot a kukából a kukába helyezéstől számított 30 napon belül. A feladat sértetlenül visszakerül a táblán oda, ahol volt — így egy egyéni alapító soha nem veszít el munkát egy véletlen törlés miatt. | Ír |
| archive_done_tasks | Kiüríti a Done oszlopot: minden benne lévő feladat lekerül a tábláról az archívumba — a search/fetch továbbra is megtalálja, és a sprintje előzményeiben is megjelenik, soha nem törlődik. Egy sprint lezárása automatikusan archiválja annak befejezett feladatait; ez kezeli a többit. Egyetlen hívásban viszi az egész oszlopot, darabszám nélkül, és az MCP felől nincs visszaút — a restore_task a kukából állít vissza, nem az archívumból —, ezért van rombolóként jelölve: a kliensnek meg kell erősítenie a felhasználóval, mielőtt meghívja. | Eltávolít |
| list_projects | Listázza a tábla projektjeit — könnyű kontextusokat (egy startup, egy ügyfél, személyes), amelyekhez egy feladat tartozhat. Az archivált projekteket kihagyja, hacsak nincs beállítva az includeArchived. | Olvas |
| create_project | Projektkontextust hoz létre. A név táblánként egyedi; a szín alapból egy körbeforgó palettából jön; az url a projekt webhelye, amelynek faviconja a feladatkártyákon jelenik meg. | Ír |
| update_project | Átnevez egy projektet, megváltoztatja a színét vagy a webhely-URL-jét, illetve archiválja vagy visszaállítja az archívumból. Az archivált projektek eltűnnek a választókból; a feladataik megtartják a hozzárendelést. | Ír |
| list_sprints | A felhasználó összes sprintjét listázza (tervezett, aktív, lezárt, archivált), így egy egyéni alapító vagy ügynök az app megnyitása nélkül áttekintheti a sprintek előzményeit és a jelenlegi állapotot. | Olvas |
| get_active_sprint | Visszaadja az éppen aktív sprintet, vagy null értéket, ha nem fut sprint — így egy egyéni alapító vagy ügynök az app megnyitása nélkül ellenőrizheti az aktuális célt. | Olvas |
| create_sprint | Új sprintet hoz létre "planned" állapotban a Weft-tábládon, céllal és dátumokkal ütemezhetően. Ha készen állsz a munkára, külön használd a start_sprint eszközt. | Ír |
| start_sprint | Egy tervezett sprintet aktív állapotba állít. Egyszerre egy sprint lehet aktív, minden csomagban — ha egy másik sprint fut, a hívás sikertelen, és megnevezi azt; előbb azt a sprintet zárd le, aztán próbáld újra. | Ír |
| complete_sprint | Lezárja az aktív sprintet. A befejezett feladatai a sprint előzményeibe archiválódnak — lekerülnek a tábla Done oszlopáról, de kereshetők maradnak, és a sprint oldalán megjelennek. A befejezetlen feladatok a táblán maradnak, a sprinthez csatolva. MCP-n keresztül nem vonható vissza — a klienseknek meg kell erősíteniük, ha a szándék nem egyértelmű. | Eltávolít |
| add_task_to_sprint | Egy meglévő feladatot egy sprinthez rendel, hogy megjelenjen annak terjedelmében és burndown diagramján. Idempotens — a kétszeri hívásnak nincs további hatása, így biztonságosan újrapróbálható. | Ír |
| remove_task_from_sprint | Leválaszt egy feladatot a jelenlegi sprintjéről törlés nélkül — a feladat a táblán marad az oszlopában, csak már nem tartozik a sprint terjedelmébe és burndown diagramjába. | Ír |
Kérdések
Mi az a kanban MCP-szerver?
Egy MCP (Model Context Protocol) szerver, amely egy kanban táblát olyan eszközökként tesz elérhetővé, amelyeket egy AI-asszisztens meghívhat: oszlopok listázása, kártyák olvasása, kártya létrehozása, áthelyezése a Doing vagy a Done oszlopba. A Weft szervere hosztolt, így egy URL-t adsz meg, ahelyett hogy egy folyamatot futtatnál a gépeden.
Kell bármit telepítenem vagy futtatnom?
Nem. Add hozzá a https://letsweft.com/api/mcp címet az AI-kliensedhez, és jelentkezz be OAuth-tal. Az OAuth nélküli kliensek a Beállítások → Hozzáférési tokenek alatt létrehozható személyes hozzáférési tokent használják.
Ingyenes?
Igen, 50 feladatig és havi 200 AI-hívásig. A Pro megszünteti a korlátokat helyenként havi 7 $-ért, vagy helyenként évi 60 $-ért.
Működik a ChatGPT Free-vel?
Igen. A Weft szerepel a ChatGPT Plugin directory-jában, és minden ChatGPT-csomagban működik, a Free-ben is. Nyers MCP-URL hozzáadása a ChatGPT-ben Business, Enterprise és Edu funkció, de a Wefthez nincs rá szükséged.
Megoszthat két ügynök egy táblát?
Igen — erre való a tábla. Minden ügynök a start_task segítségével lefoglal egy kártyát, mielőtt dolgozni kezd rajta, így nem veszik fel ugyanazt a kártyát, és minden kártyán látszik, hogy AI vagy ember hozta létre, illetve fejezte be.
Miben különbözik ez egy helyi kanban MCP-szervertől?
A nyílt forráskódú kanban MCP-szerverek a gépeden futnak, és a táblát helyi fájlban vagy adatbázisban tárolják, így csak az azon a gépen futó ügynökök látják. A Weft közös, hosztolt tábla: ugyanazok a kártyák a ChatGPT-ben, a Claude-ban, a Cursorban, a Codexben, a webappban, valamint az iOS- és Android-appokban, neked és a csapatodnak.