Taokeh

Dokumentasi pembangun

Pelayan MCP Taokeh

Taokeh menjalankan pelayan Model Context Protocol rasmi. Sambungkan Claude, ChatGPT atau mana-mana klien MCP ke satu syarikat Taokeh dan ia boleh membaca buku langsung — jualan, tunai, penuaan, stok, penyata — serta memfailkan draf yang menunggu kelulusan manusia. Langsung sejak 16 Julai 2026, 64 alat. Matlamat reka bentuknya dinyatakan terus: AI menjalankan buku, dan manusia meluluskan pada satu halaman — setiap alat tulis di sini memfailkan draf yang menunggu di /go untuk satu ketukan.

Titik hujung
https://taokeh.my/mcp
Pengangkutan
Streamable HTTP (MCP)
Alat
64 — 39 baca, 25 tulis (draf sahaja). Token akses peribadi boleh dihadkan semasa dijana kepada kumpulan alat pilihan anda; sambungan yang dihadkan hanya menyenaraikan alat itu dan diberitahu jumlahnya sendiri semasa initialize. Sambungan OAuth sentiasa menyenaraikan set penuh.
Pengesahan
OAuth 2.1 dengan pendaftaran klien dinamik dan PKCE, atau token akses peribadi sebagai bearer
Klien yang diuji
claude.ai · ChatGPT custom connectors · Claude Desktop · Claude Code · Cursor
Harga
Add-on RM29/sebulan, termasuk dalam percubaan percuma 14 hari

Setakat yang kami tahu, inilah penyambung AI perakaunan buatan Malaysia yang pertama (pada Julai 2026).

Menyambung

claude.ai dan ChatGPT. Tambah https://taokeh.my/mcp sebagai penyambung tersuai. Klien mendaftar sendiri, anda dibawa ke Taokeh untuk log masuk, dan skrin persetujuan menamakan ruang kerja serta skopnya sebelum apa-apa diberikan. Tiada kunci untuk disalin, tiada fail config untuk disunting. Di ChatGPT, ia bermakna Developer mode dan satu plugin tersuai — langkahnya ada di Sambung ChatGPT ke buku akaun anda.

Satu penyambung bagi setiap syarikat. Setiap syarikat turut menjawab pada alamatnya sendiri, https://taokeh.my/mcp/<slug-ruang-kerja> (URL tepatnya ada pada Integrasi → Penyambung Ask Taokeh). Sila gunakannya jika anda menyimpan akaun lebih daripada satu syarikat: claude.ai dan ChatGPT hanya membenarkan satu penyambung bagi setiap alamat, jadi syarikat kedua yang ditambah pada URL kongsi akan ditolak sebagai pendua. Alamat itu hanyalah URL yang berbeza — ia tidak membawa apa-apa akses, titik hujung kongsi terus berfungsi, sambungan sedia ada tidak terjejas, dan buku mana yang dibuka masih ditentukan oleh log masuk yang anda luluskan pada skrin persetujuan.

Claude Desktop, Claude Code, Cursor dan klien CLI lain. Jana token akses peribadi di dalam Taokeh (rupanya tkm_…) dan hantar sebagai Authorization: Bearer <token>. Token disimpan sebagai hash sahaja, terikat pada satu syarikat, dan boleh dibatalkan bila-bila masa.

Config, sedia untuk ditampal. Claude Code boleh menambah pelayan ini terus — claude mcp add --transport http taokeh https://taokeh.my/mcp — dan melalui persetujuan OAuth yang sama seperti klien web, tiada token untuk diuruskan. Untuk klien yang mahukan fail config dan token akses peribadi pula:

{
  "mcpServers": {
    "taokeh": {
      "command": "npx",
      "args": ["mcp-remote", "https://taokeh.my/mcp", "--header", "Authorization:${AUTH_HEADER}"],
      "env": { "AUTH_HEADER": "Bearer tkm_your_token_here" }
    }
  }
}

Dua perkara yang patut anda tahu awal-awal, ditulis di sini supaya anda tidak perlu terjumpa sendiri: argumen header itu tiada ruang selepas titik bertindih (Authorization:${AUTH_HEADER}) — satu ruang memecahkan argumen itu dan pelayan menjawab 401 — sebab itulah nilainya dihantar melalui env dan bukan sebaris; dan token itu ialah token akses peribadi yang anda jana di dalam Taokeh, jadi ia membawa satu syarikat sahaja dan boleh dibatalkan tanpa menyentuh fail ini.

Kedua-dua laluan memerlukan add-on penyambung Ask Taokeh dihidupkan untuk syarikat itu. Panduan persediaan untuk pengguna berada di halaman Penyambung Ask Taokeh.

Kontrak keselamatan

Ini keputusan reka bentuk, bukan kekangan yang kami sedang cuba atasi. AI yang bersambung ke buku sesebuah perniagaan tidak boleh berkuasa mengubahnya.

Bacaan bebas

Setiap alat baca menjawab serta-merta. Tanya penuaan, kedudukan tunai, untung rugi bulan lepas atau stok sesuatu produk dan jawapannya datang terus dari lejar — tiada langkah kelulusan, kerana bacaan tidak mengubah apa-apa.

Tulisan ialah draf

Setiap alat tulis memfailkan draf menunggu. Ia muncul dalam Taokeh untuk pemilik menyemaknya terhadap dokumen asal, dan hanya ketukan manusia yang mencatatnya. Enam jenis draf: perbelanjaan, bil, invois, sebut harga, resit pelanggan, dan kenalan yang dibaca dari kad nama.

Ia tidak boleh mencatat, mengubah atau memadam

Tiada alat yang mencatat ke lejar, meminda dokumen yang telah dicatat, membatalkannya, memadam apa-apa, mengesahkan baris bank, atau menghantar e-mel. Baris penyata bank diimport ke barisan semakan; cadangan pengkategorian ialah usul yang dilihat pemilik, bukan keputusan.

AI anda yang memproses — AI kami tidak sekali-kali

Pada laluan MCP, pelayan Taokeh tidak sekali-kali memanggil model bahasa. Pembantu anda yang membaca resit, membaca penyata, membaca kad nama, dan menghantar medan berstruktur; pelayan kami mengesahkannya, mengira semula aritmetiknya, dan memfailkan draf. Maknanya penaakulan berjalan atas langganan AI anda sendiri dengan model pilihan anda sendiri, dan dokumen anda tidak disebarkan kepada model ketiga yang kami pilihkan untuk anda. Kami yang menyimpan kira. AI anda yang membaca.

64 alat itu

Nama dan kelakuan seperti yang didaftarkan oleh pelayan. 39 alat baca:

AlatApa yang dipulangkan
Overview & cash
business_snapshotOne-glance health check: today’s and this month’s sales and expenses so far.
daily_briefThe morning brief in one call — sales, cash, top debtors, pending approvals (the count is of DECISIONS, not rows — a real approval queue contributes its item count, an operational to-do counts as 1 however long its backlog), tax, low stock.
cash_positionEvery bank account and cash pocket with its current GL balance, plus the liquid total. An owner advance, and anything owed on a credit card, are reported separately as liabilities — never as cash.
cash_forecastA forward 8-week cash-flow forecast built from open invoices, open bills, payroll, statutory remittances, loans and SST — with every assumption listed.
profit_driversWhy net profit moved: a revenue/COGS/opex bridge against the same day-span of the previous month, with one-offs pulled out.
Statements & tax
income_statementProfit and loss for a period: revenue, COGS, gross profit, expenses, net income — optionally against a comparison period, with every variance computed on the server.
balance_sheetBalance sheet as of a date: assets, liabilities, equity, with the balanced check — optionally against a second date, with the movement computed on the server.
financial_timeseriesA month-by-month series across a window you name (up to 36 months, one call): revenue, COGS, gross profit, opex, net income, closing cash, AR, AP and net cash movement. An unfinished month is flagged partial; months before the accounting start date are absent, not zero.
tax_positionCurrent SST period payable (if registered) plus e-invoice consolidation status and the filing due date.
Who owes whom
ar_agingWho owes you money and how overdue — accounts-receivable aging by customer.
ap_agingWhom you owe and how overdue — accounts-payable aging by supplier.
open_invoicesThe unpaid or part-paid invoices for one customer, oldest first.
working_capitalWorking capital in DAYS, month by month, plus who is slow to pay: debtor days, creditor days, inventory days and the cash-conversion cycle, each stating the balance, the flow and the day count it was computed from — and the amount-weighted average days-to-pay per customer and per supplier. A ratio with no base comes back null, not zero; inventory days is withheld unless the company runs perpetual costing. Figures only, no verdicts.
payer_historyHow this company has categorised a given bank counterparty before — the tenant’s own precedent behind a suggestion.
Sales, stock & channels
sales_summaryHow much you have sold — today and month-to-date, or a date range broken down by month, customer and product.
expenses_summaryHow much you have spent: paid expenses today and this month so far.
channel_summarySales by channel (Shopee, TikTok Shop, Shopify, your storefront) with discounts, shipping, freight-out, marketplace fees, returns and net proceeds.
stock_levelUnits on hand right now for a product, by name or SKU.
stock_movementsThe stock movement ledger in bulk, across products — what moved, when, why, the signed quantity, the balance it left behind and the document behind it. Says which stock mode the company is in, because on the default (modified periodic) selling does not move stock at all.
low_stockThe reorder list: products at or below their reorder point.
counter_dayA Counter (Kaunter) till day: receipt and voided counts, cash and DuitNow QR totals, the 5-sen rounding, whether the day is still open or closed into the books, and the receipt-number range. Counter add-on only.
Documents & search
search_documentsFind invoices, credit notes, quotes, delivery orders, bills, debit notes and purchase orders by number, party, date, amount or type. Ask for docType “payment” — opt-in, never part of “all” — and it returns the money instead: one row per bank line, with the invoices or bills it settled, where the payment came from, and refunds as negative allocations against the credit note they walk back. A set-off (contra) moves no bank money — Taokeh books it as two internal clearing lines, excluded here on purpose; see the ledger or the contra note.
search_document_linesRead the LINE ITEMS of posted invoices, credit notes, sell-side debit notes, bills and buy-side debit notes in bulk — product, description, quantity, unit, price, the cost basis stamped at posting, discount and line total across many documents in one call, instead of one PDF at a time. Sizes and grades live in the name/description text, so the AI does the grouping.
search_expensesSearch paid expenses already posted to the ledger — the duplicate check before filing an expense draft.
search_journalSearch the ledger’s journal entries — every posting, whatever door created it (manual journal, scan, invoice, bank, expense, payroll) — each returned WITH its balanced lines, so you can see exactly how something was booked.
get_document_pdfA short-lived signed link to the real PDF of an invoice, quote or credit note. It emails nobody; it hands you the link.
get_attachmentA short-lived signed link to the ORIGINAL document someone filed — the receipt behind a posted expense, the scan on an invoice, bill or quote, the file riding a pending draft, or a Shoebox photo nobody has read yet. Taokeh serves the bytes; your own AI reads them.
shoebox_itemsThe photos waiting in the Shoebox — paper the people in the business snapped on their phones and sent in, which nobody has read yet. Look at one with get_attachment, then file it by passing shoeboxItemId to a draft tool; Taokeh attaches its own stored copy, so the image is never re-sent. No AI credits are drawn on this lane.
Banking review
bank_review_queueThe imported bank register, in any status — defaulting to the rows still awaiting review, each with Taokeh’s own suggested category, confidence score and reason, lowest confidence first. Ask for confirmed, posted, ignored or all rows, or a date window across every statement, and settled rows come back with what was actually decided (category, ledger account, contact, splits, the invoices or bills settled) instead of a fresh guess. Hand-recorded settlements are never here.
bank_reconciliation_statusWhere each bank account stands: GL balance against the latest statement close, row counts by status, and the unreviewed backlog.
Your own queue
my_workWhat your AI filed and what happened to it: everything still waiting on the owner’s approval (with how long it has waited and the exact next step), what the owner approved and what it became, what was rejected and — where Taokeh stores one — the reason, and the migration sets still at a commit door.
Payroll
payroll_summaryA month’s payroll gross to net, as it was actually run: gross, every employee deduction (EPF/SOCSO/EIS/SKBBK/PCB/zakat), every employer contribution (EPF/SOCSO/EIS/HRD Corp), net pay and the employer’s true total cost — optionally per employee — plus who is on approved leave in the next 14 days, and, if you ask for it, the staff roster — which is where the employeeId for update_employee_draft comes from. Summed from the stored payslips, never recalculated. Admin seats only.
employer_cost_estimateWhat a hypothetical hire really costs: monthly wage plus employer EPF/SOCSO/EIS/HRD Corp, and the employee’s take-home after their own deductions — PCB from Taokeh’s implementation of LHDN’s official computerised MTD method. Every assumption is stated, so a scenario can never be read as a quote. Admin seats only.
Lookups & shaping
resolve_customerMatch a customer name against the real customer list — resolved, ambiguous or none, with current outstanding A/R. Never guesses.
resolve_vendorMatch a supplier name against the real vendor list. Near-misses are flagged rather than guessed.
resolve_productMatch a product by name or SKU and return its unit and default sell price.
expense_accountsThe expense categories and paid-from accounts this company can actually post to.
intake_contractThe exact shape a Taokeh draft needs — required fields, totals, measurement and SST rules, and a worked example grounded in this company.
find_in_taokehWhere in Taokeh to do something: the real deep-link page(s) for a plain-language question, from the live feature catalogue. Guides only; changes nothing.

25 alat tulis — setiap satu memfailkan draf atau cadangan, tidak sekali-kali catatan terus ke lejar:

AlatApa yang difailkan
create_expense_draftFile a paid-expense draft from a receipt, with the original image attached — or pass shoeboxItemId and Taokeh attaches the Shoebox photo it already holds. Does not post.
create_bill_draftFile a supplier-bill draft (inventory lines), optionally from a Shoebox photo via shoeboxItemId. Does not post, receive stock or move cost.
create_invoice_draftFile a sales-invoice draft, optionally from a Shoebox photo via shoeboxItemId. Does not post or move stock; the server re-computes every line and total.
create_quote_draftFile a quotation draft — an estimate, never a ledger entry.
create_credit_note_draftFile a credit-note draft — a sales return, short delivery, price correction or allowance. Against a specific invoice, or as a standalone allowance. Does not post, and whether stock comes back is the owner’s decision at approval.
create_debit_note_draftFile a sell-side debit-note draft — an additional charge on an invoice you already issued (an undercharge, a price revised upward, a missed surcharge). The original invoice is required; it posts nothing, and it never moves stock.
create_purchase_order_draftFile a purchase-order draft — an order you intend to place with a supplier. It posts nothing and moves no stock; convert the order to a bill when the goods arrive.
create_journal_draftFile an adjusting-journal draft — an accrual, a prepayment, a correction, a year-end adjustment, or the reversing entry that fixes a wrong posted entry. It must balance to the sen; it posts nothing, and posted history is never edited or deleted.
create_receipt_draftFile a customer-payment draft, allocated across open invoices. Nothing settles until approved.
create_payment_draftFile a supplier-payment draft, allocated across open bills. Ringgit only, never on a credit card, and nothing is paid or posted until the owner approves — at which point payables and the bank move exactly as a Banking match would.
create_contact_draftFile a contact draft read off a business card. The card image is required so the owner can check your fields against the picture.
update_contact_draftPropose changes to a customer or vendor already on the books — tax id, e-Invoice details, phone, flags, and the people filed under them. The owner approves a plain current-to-proposed diff; nothing changes until they do.
update_invoice_draftPropose a correction to an invoice already posted — a wrong line, a wrong date, the wrong payment method. An admin approves a plain current-to-proposed diff; nothing changes until they do, and the correction keeps the same invoice number and carries the original document across. It can never change the customer, the invoice number, or an invoice LHDN has already validated.
update_employee_draftPropose corrections to an employee already on payroll — IC, EPF/SOCSO/tax numbers, salary, the statutory flags. An admin approves a plain current-to-proposed diff; nothing changes until they do, and an approved change applies to future payroll runs only. Admin-only.
update_product_draftPropose changes to a product already in the catalogue — name, unit, selling price, reorder point, barcode, category. The owner approves a plain current-to-proposed diff; nothing changes until they do. It can never move stock on hand or restate a cost.
update_logo_draftPropose a new company logo — the mark Taokeh prints on every invoice, quote and receipt it generates. Send a PNG or JPEG; oversized artwork is shrunk for you rather than refused. An admin approves it looking at the logo they have now beside the one proposed; nothing changes until they do. It is one value, so a second proposal replaces the first. Admin-only.
create_recurring_invoice_draftPropose a recurring invoice — a billing schedule that issues the same invoice to a customer every month, quarter or year. It creates nothing; the owner approves it, and the review page states the date the FIRST invoice would go out. A schedule filed this way always files a draft invoice each cycle for a person to approve — it can never be set to post by itself.
update_recurring_invoice_draftPropose changes to a recurring invoice already set up — a price rise across a subscription, a new end date, or pausing the billing. The owner approves a plain current-to-proposed diff, and the review page states the date the next invoice would go out and whether approving moves it. Invoices the schedule has already issued are never touched, and it can never end a schedule or switch it to posting unattended.
revise_draftCorrect a draft you already filed — amend a PENDING draft of any kind in place instead of re-filing it (which the duplicate guard refuses). Revising never approves: the draft stays pending and the owner still taps.
import_bank_statementImport a bank or credit-card statement for reconciliation. Every row lands in Banking → Review; the server refuses a statement whose rows do not tie to the printed closing balance, and a card statement must declare which sign convention it was read in.
draft_bank_classificationPropose categories — and, where the owner picks the account by hand, the ledger account too — for up to 50 bank rows. Written as an “AI suggestion” badge the owner sees, pre-selecting their dropdowns; it never confirms and never posts. On a customer or supplier payment it can also propose WHICH invoices or bills the money settles: the amounts must add up to the whole line, and the proposal only pre-fills the owner’s Match pane for them to read and save.
request_attachment_uploadA one-time upload link for a file too large to inline, returning a token any draft tool accepts.
stage_documentBring one already-issued historical invoice or supplier bill across from the system you are migrating from. Groups into monthly batches the owner approves together; idempotent on the old system’s own document id, so re-running your export never double-books. Attach the original (request_attachment_upload → PUT → attachmentToken) and it rides the staged row onto the posted document.
stage_opening_balancesBring a whole set of opening balances across when switching accounting system — the closing trial balance, the aged receivables or the aged payables. The owner reviews it on the Switch wizard’s own screens and posts it; re-staging replaces the set, because a balance set only means anything whole.
stage_master_dataBring the chart of accounts, the product catalogue, the customer/supplier book or the staff list across when switching accounting system. The owner confirms it on the screen that already shows that list and applies it; re-staging replaces the set, and unlike opening balances it may be sent again after an import — a catalogue is upserted, not posted. The chart lane renames freely, never deletes an account, and refuses to re-type one that already has postings. The staff lane is admin-only and CREATES people rather than updating them, so anyone already in Taokeh is left off the list.

Soalan yang pembangun dan pembeli benar-benar tanya

Boleh ChatGPT membuat invois dalam perisian perakaunan saya?

Boleh — sebagai draf. Dengan pelayan MCP Taokeh bersambung, ChatGPT memanggil create_invoice_draft, yang memfailkan invois jualan menunggu ke dalam Taokeh. Ia tidak mencatat ke lejar dan tidak menggerakkan stok. Anda buka Taokeh, semak barisnya terhadap dokumen asal, dan ketuk luluskan. Hanya ketukan itu yang mencatatnya.

Boleh AI saya mengkategorikan resit dan transaksi bank?

Boleh. AI anda sendiri yang membaca resit itu dan memfailkannya dengan create_expense_draft, berserta imej asal. Untuk penyata bank ia memanggil import_bank_statement, kemudian draft_bank_classification untuk mencadangkan kategori bagi setiap baris. Cadangan muncul sebagai cadangan AI di Perbankan → Semakan. Mengesahkan dan mencatat setiap baris kekal klik manusia.

Boleh saya tanya siapa berhutang dengan saya?

Boleh — itu bacaan biasa. AI anda memanggil ar_aging untuk penuaan akaun belum terima penuh mengikut pelanggan dan baldi tertunggak, atau open_invoices untuk invois belum bayar seorang pelanggan, yang tertua dahulu. payer_history menerangkan bagaimana pihak berkenaan dilayan sebelum ini. Tiada kelulusan diperlukan: bacaan tidak mengubah apa-apa.

Boleh AI saya menjana untung rugi bulanan saya?

Boleh. income_statement memulangkan hasil, kos barang dijual, untung kasar, perbelanjaan dan pendapatan bersih bagi mana-mana tempoh, terus dari lejar catatan bergu — bukan anggaran sesebuah model. balance_sheet melakukan perkara sama pada sesuatu tarikh, dan profit_drivers menerangkan mengapa angka itu berubah berbanding bulan lepas.

Boleh ia menyediakan laporan pengurusan bulanan?

Bukan sebagai laporan siap — sebagai gubahan yang AI anda susun sendiri. Ia memanggil income_statement dua kali (bulan ini dan bulan lepas), profit_drivers untuk jambatannya, ar_aging, cash_position, cash_forecast dan expenses_summary, kemudian menulis naratifnya sendiri atas langganan AI anda. Angka datang dari lejar; dokumen itu milik AI anda. Contoh gesaan dan resipi penuh: /guides/talk-to-your-books?lang=bm.

Boleh ia menanda anomali sebelum tutup bulan?

Apabila anda memintanya. Tiada alat yang memulangkan medan “anomali” — AI anda membaca daily_brief, search_expenses (semakan bil berganda), ar_aging, bank_reconciliation_status dan low_stock, lalu menilai sendiri apa yang kelihatan janggal. MCP tarik-sahaja: Taokeh tidak menjalankan pemantau dan tidak menolak sebarang amaran, jadi imbasan berkala ialah gesaan berjadual dalam klien AI anda. Resipi penuh: /guides/talk-to-your-books?lang=bm.

Ada API? Apa bezanya MCP dengan REST API?

MCP itulah APInya, diterangkan supaya AI boleh menggunakannya tanpa anda menulis kod. Setiap satu daripada 64 alat membawa skema bertaip dan penerangan yang dibaca pembantu anda ketika bersambung, jadi ia tahu apa yang ada dan apa maksud setiap medan. REST API perlu integrasi dibina dahulu; MCP cuma perlu satu sambungan.

Boleh satu sambungan AI meliputi semua syarikat saya?

Satu sambungan satu syarikat — itu memang reka bentuknya. Token atau geran OAuth terikat pada satu syarikat yang anda persetujui, jadi AI yang bersambung ke satu syarikat tidak boleh mencapai buku syarikat lain. claude.ai dan ChatGPT kedua-duanya boleh memegang beberapa penyambung bernama serentak, jadi seorang penyimpan kira menyambung setiap syarikat secara berasingan. Satu sambungan yang merentas syarikat tidak ditawarkan hari ini. Sila namakan setiap penyambung mengikut syarikat yang dibukanya — “Taokeh — Lim Hardware”, bukan dua belas penyambung yang semuanya bernama “Taokeh”; nama itulah yang dilihat AI anda dalam senarai alatnya, dan itulah caranya ia tahu buku siapa yang sedang dibacanya. Setiap jawapan alat turut membawa nama syarikat, jadi AI diberitahu pada setiap panggilan.

Ada had kadar API untuk ejen AI?

Ada, dan ia diterbitkan: 200 panggilan MCP setiap syarikat sehari, ditambah 300 permintaan setiap 15 minit bagi setiap alamat IP dan satu had sandaran harian seluruh platform. Ia wujud untuk penggunaan adil dan kawalan kos, bukan untuk mengukur anda — hari ejen yang biasa jauh di bawah 200. Had yang dilanggar memulangkan ralat JSON-RPC yang boleh dibaca klien anda.

Adakah tindakan AI itu boleh diaudit dan diundurkan sepenuhnya?

Ya. Setiap draf yang difailkan AI merekodkan nama klien yang bersambung, pengguna yang gerannya digunakan, dan masanya. Meluluskan atau menolak mencap pengguna yang memutuskan berserta cap masanya. Tiada apa dicatat ke lejar tanpa ketukan itu, dan draf yang ditolak tidak mencatat apa-apa langsung. Membetulkan dokumen GL yang telah dicatat ialah pembatalan dan pos semula yang mengekalkan nombornya.

Berapa kos pelayan MCP Taokeh?

RM29 sebulan sebagai add-on à-la-carte di atas pelan asas Taokeh, dan ia termasuk dalam percubaan percuma 14 hari — jadi anda boleh sambungkan AI anda dan cuba setiap alat sebelum membayar apa-apa.

Halakan AI anda ke buku anda

RM29/sebulan, termasuk dalam percubaan percuma 14 hari. Sambungkan, tanya apa sahaja, dan rasa sendiri bagaimana draf itu berjalan sebelum anda membayar sesen pun.

Nama dan kelakuan alat pada halaman ini mencerminkan pelayan langsung. Panduan persediaan: Penyambung Ask Taokeh. Keselamatan dan pemilikan data: Trust & security (dalam bahasa Inggeris).