githubEdit

Narzędzia SDK Kart

Narzedzia Card SDK pozwalaja tworzyc, walidowac, testowac i zarzadzac niestandardowymi kartami partnerskimi przez MCP. Karty partnerskie rozszerzaja DocFlow o niestandardowa logike biznesowa napisana w Pythonie.

Cykl zycia karty

Create → Validate → Test → Approve → Use in Workflows
  1. Utworz karte za pomoca sdk_create_card lub sdk_import_github

  2. Zwaliduj za pomoca sdk_validate_card (5-etapowa walidacja)

  3. Przetestuj za pomoca sdk_test_card (wykonanie w srodowisku sandbox)

  4. Zatwierdz za pomoca sdk_approve_card (wymagany administrator)

  5. Karta jest teraz dostepna w list_cards i moze byc uzywana w przepływach pracy

Narzedzia deweloperskie

sdk_create_card

Tworzy nowa karte partnerska z kodu zrodlowego i manifestow. Uruchamia pelna 5-etapowa walidacje i zapisuje karte w bazie danych. Karta rozpoczyna w stanie oczekujacym i wymaga zatwierdzenia administratora, aby ja aktywowac.

Parametry:

Parametr
Typ
Wymagany
Opis

app_manifest

object

Tak

Manifest aplikacji z id, name, version, informacjami o partnerze

card_manifest

object

Tak

Manifest karty z id, title, entry_point, class_name, args

card_type

string

Tak

action lub condition

source_code

string

Tak

Kod zrodlowy Python (musi rozszerzac PartnerCard)

test_code

string

Tak

Kod testow Pytest dla karty

locales

object

Nie

Tlumaczenia lokalizacji, np. {"en": {...}, "de": {...}}

Przyklad manifestu aplikacji:

Przyklad manifestu karty:

Przyklad kodu zrodlowego:

Przykladowa odpowiedz:

sdk_validate_card

Uruchamia 5-etapowa walidacje karty partnerskiej bez zapisywania. Dwa tryby:

  • Tryb A — Walidacja istniejacej karty po ID

  • Tryb B — Walidacja nowego kodu zrodlowego inline

Parametry:

Parametr
Typ
Wymagany
Opis

card_id

string

Nie

UUID istniejacej karty (Tryb A)

app_manifest

object

Nie

Manifest aplikacji (Tryb B)

card_manifest

object

Nie

Manifest karty (Tryb B)

card_type

string

Nie

action lub condition (Tryb B)

source_code

string

Nie

Kod zrodlowy Python (Tryb B)

test_code

string

Nie

Kod testow (Tryb B)

circle-info

Podaj albo sam card_id (Tryb A), albo app_manifest + card_manifest + source_code razem (Tryb B).

Etapy walidacji:

  1. Struktura — Weryfikuje uklad plikow, schemat manifestu, wymagane pliki

  2. Analiza AST — Sprawdza skladnie Pythona, hierarchie klas, sygnatury metod

  3. Zaleznosci — Waliduje importy wzgledem dozwolonych modulow

  4. Testy — Uruchamia zestaw testow karty

  5. Behawioralna — Wykonuje karte w srodowisku sandbox, aby sprawdzic zachowanie w czasie wykonania

sdk_test_card

Wykonuje karte partnerska w srodowisku sandbox z symulowanym kontekstem. Uzywa tego samego modelu bezpieczenstwa co produkcja (ograniczone wbudowane funkcje, biala lista importow, limit czasu 10 sekund).

Parametry:

Parametr
Typ
Wymagany
Opis

card_id

string

Nie

UUID istniejacej karty (Tryb A)

source_code

string

Nie

Kod zrodlowy do testowania inline (Tryb B)

class_name

string

Nie

Nazwa klasy do testowania inline (Tryb B)

variables

object

Nie

Zmienne przekazywane do konstruktora karty

mock_context

object

Nie

Symulowany kontekst wykonania

Pola symulowanego kontekstu:

Przykladowa odpowiedz:

sdk_import_github

Importuje aplikacje partnerska z repozytorium GitHub. Klonuje repozytorium, odczytuje app.json i importuje wszystkie karty znalezione w katalogu .docflowcompose.

Parametry:

Parametr
Typ
Wymagany
Opis

github_url

string

Tak

URL HTTPS GitHub (np. https://github.com/org/repo)

branch

string

Nie

Galaz do klonowania (domyslnie: main)

token

string

Nie

Token GitHub dla prywatnych repozytoriow

Oczekiwana struktura repozytorium:

Przykladowa odpowiedz:

Narzedzia zarzadzania

sdk_list_submissions

Wyswietla wszystkie zgloszenia kart partnerskich dla biezacej organizacji.

Parametry: Brak

Przykladowa odpowiedz:

sdk_get_submission_status

Pobiera status walidacji i raport dla konkretnego zgloszenia karty partnerskiej.

Parametry:

Parametr
Typ
Wymagany
Opis

card_id

string

Tak

UUID karty partnerskiej

Przykladowa odpowiedz:

sdk_approve_card

Zatwierdza zwalidowana karte partnerska i aktywuje ja do uzycia w przepływach pracy. Karta jest rejestrowana w rejestrze runtime i staje sie dostepna w list_cards.

Parametry:

Parametr
Typ
Wymagany
Opis

card_id

string

Tak

UUID karty partnerskiej

circle-exclamation

sdk_reject_card

Odrzuca zgloszenie karty partnerskiej i dezaktywuje ja.

Parametry:

Parametr
Typ
Wymagany
Opis

card_id

string

Tak

UUID karty partnerskiej

reason

string

Nie

Powod odrzucenia

circle-exclamation

sdk_delete_submission

Dezaktywuje lub usuwa zgloszenie karty partnerskiej. Odrzucone lub wylaczone karty sa fizycznie usuwane z bazy danych. Aktywne karty sa najpierw dezaktywowane.

Parametry:

Parametr
Typ
Wymagany
Opis

card_id

string

Tak

UUID karty partnerskiej

circle-exclamation

sdk_list_cards_picker

Wyswietla wszystkie wlaczone, nieoznaczone jako przestarzale karty z flagami rol. Przydatne do okreslania, ktore karty moga byc uzywane w jakich typach wezlow podczas budowania przepływow pracy.

Parametry: Brak

Przykladowa odpowiedz:

Last updated

Was this helpful?