Server MCP

Lăsați asistentul AI să vă gestioneze găzduirea

Un singur server MCP pentru întregul cont. Conectați Claude Code, Claude Desktop sau Cursor o singură dată, iar asistentul dumneavoastră poate lista site-urile, citi jurnalele lor, sincroniza fișierele acestora cu depozitul dumneavoastră și le poate implementa – acționând exclusiv pe baza permisiunilor acordate.

65 instrumente astăzi, afișate mai jos exact așa cum le oferă serverul.

Conectați-l

Doi pași. Tokenul reprezintă întreaga credențială, așa că tratați-l ca pe o parolă: este afișat o singură dată și puteți anula o conexiune fără a le afecta pe celelalte.

  1. Creați o conexiune

    În panoul de control, deschideți instrumentele AI, denumiți conexiunea, selectați clientul și bifați ce are voie să facă. Puteți acorda doar ceea ce aveți permisiunea să faceți dumneavoastră înşivă.

  2. Lipiți configurația pe care o citește clientul dvs.

    Tabloul de bord afișează configurarea pentru clientul selectat, având deja tokenul inclus. Fiecare client comunică cu aceeași adresă de server:

    https://api.zinndigital.com/v1/mcp

Claude Code

Rulează o singură comandă sau adaugă blocul în .mcp.json în rădăcina proiectului tău. Linia „type”: „http” este obligatorie — fără ea, Claude Code ignoră serverul.

claude mcp add --transport http zinn https://api.zinndigital.com/v1/mcp \
  --header "Authorization: Bearer zmcp_live_…"
// .mcp.json
{
  "mcpServers": {
    "zinn": {
      "type": "http",
      "url": "https://api.zinndigital.com/v1/mcp",
      "headers": {
        "Authorization": "Bearer zmcp_live_…"
      }
    }
  }
}

Claude Desktop

Claude Desktop pornește servere locale, așa că rulează CLI-ul nostru gratuit Zinnector® ca punte către serverul găzduit. Necesită Node 24 sau o versiune ulterioară. Tokenul este introdus în env, niciodată în argumente.

// claude_desktop_config.json
{
  "mcpServers": {
    "zinn": {
      "command": "npx",
      "args": [
        "-y",
        "zinnector@0.1.4",
        "mcp"
      ],
      "env": {
        "ZINN_MCP_TOKEN": "zmcp_live_…"
      }
    }
  }
}

Cursor

Adăugați serverul în ~/.cursor/mcp.json (sau .cursor/mcp.json dintr-un proiect) cu adresa și antetul Authorization.

// ~/.cursor/mcp.json
{
  "mcpServers": {
    "zinn": {
      "url": "https://api.zinndigital.com/v1/mcp",
      "headers": {
        "Authorization": "Bearer zmcp_live_…"
      }
    }
  }
}

Orice alt client MCP

Orice client care acceptă servere HTTP Streamable la distanță cu un antet personalizat funcționează: îndreptați-l spre adresa de mai sus și trimiteți Authorization: Bearer cu jetonul dvs. Un client care pornește doar servere locale poate folosi puntea Claude Desktop.

ChatGPT se conectă la serverele MCP numai prin autentificare cu OAuth, astfel încât nu poate folosi încă un token. Utilizați aceeași conexiune cu Claude Code, Claude Desktop sau Cursor.

Verificați că funcționează — patru întrebări

Adresați aceste întrebări în limbaj simplu. Sub fiecare se află instrumentul pe care asistentul dumneavoastră ar trebui să îl apeleze și cum arată un răspuns bun.

  1. > List my sites.
      ↳ sites_list

    Site-urile dvs. cu starea și planul lor. O listă goală în cadrul unui cont care are site-uri înseamnă că conexiunii îi lipsește permisiunea de a vizualiza site-urile.

  2. > Show me the error log for example.com.
      ↳ site_logs

    Jurnalul de erori și jurnalul de acces recente. Dacă unul dintre ele nu a putut fi citit, răspunsul va menționa acest lucru — ceea ce este diferit de un jurnal gol.

  3. > Sync example.com to its repository.
      ↳ site_repo_sync_run

    Un commit în repository-ul dvs. cu tot ce s-a modificat pe site-ul live sau o notă că repository-ul se potrivea deja. Dacă repository-ul s-a mutat, sincronizarea este suspendată și nimic nu este suprascris.

  4. > I pushed a commit — deploy example.com and tell me when it is live.
      ↳ site_deploy → site_deploy_status

    Implementarea este pusă în coadă, apoi este publicată cu commitul aplicat. Instrumentele de scriere cer aprobarea dvs. în client înainte de a rula.

Sincronizare bidirecțională, în ambele direcții

Un site cu un depozitar conectat rămâne sincronizat cu acesta în ambele direcții, iar asistentul tău poate acționa în orice direcție.

Site → depozit

Comite modificările efectuate în fișierele active – o editare în managerul de fișiere, o actualizare de plugin, o încărcare – și le trimite pe ramura ta, astfel încât următorul tău git pull să le conțină.

site_repo_sync_run   ·   zinnector sync run

Depozit → site

O implementare aplică ramura dumneavoastră pe site. Trimiteți commit-ul, apoi efectuați implementarea; pe propriile noastre servere, acest lucru necesită activarea sincronizării bidirecționale, care este gratuită.

site_deploy   ·   zinnector push

Când ambele părți s-au schimbat

Nimic nu este niciodată contopit sau suprascris în mod silențios. Sincronizarea se oprește, numește commit-ul și așteaptă să păstrați site-ul sau să păstrați repository-ul. Păstrarea repository-ului anulează modificările nesincronizate ale site-ului, motiv pentru care este necesară o confirmare.

site_repo_sync_resolve keep=site|repository confirm=true

Ce îi asigură securitatea

Doar ceea ce ați permis

Fiecare unealtă are nevoie de o permisiune, iar o conexiune le menține doar pe cele pe care le-ați bifat. Site-urile altui client nu există din perspectiva conexiunii dumneavoastră.

Confirmare pentru orice acțiune distructivă

Revenirea la o versiune anterioară, restabilirea, rezolvarea unei sincronizări blocate și efectuarea de achiziții necesită o confirmare explicită, iar orice implică costuri vă va afișa mai întâi totalul exact.

Fiecare acțiune din jurnalul de audit

Fiecare apel este înregistrat înregistrat în asociere cu conexiunea care l-a efectuat. Revocați o conexiune în pagina de instrumente AI și aceasta va înceta să funcționeze imediat.

Toate instrumentele

Toate cele 65 unelte, generate din propriul registru al serverului — dacă este listat aici, asistentul dvs. îl poate apela.

Site-uri și implementări

InstrumentCe facePermisiuneNote
sites_listList the organization's sites, with each site's primary domain, status, product line, stack and the plan it is on. Optionally filter by status, product line or a search over domain and name.sites.viewdoar citire
site_getGet one site's full record — domain, status, product line, stack, runtime, PHP version, region, plan and whether it is scheduled for deletion.sites.viewdoar citire
site_createCreate a site and start provisioning it. Give a primary domain and a product line; optionally a blueprint to build it from, a stack type, a PHP version or a region. Returns the new site, which begins in 'provisioning' — poll site_get for status.sites.createschimbă lucrurile
site_deployDeploy a site — build and publish its current source to our servers. Returns the deploy state immediately; the build runs as a durable workflow. Poll site_deploy_status to follow it.hosting.deploy.manageschimbă lucrurile
site_deploy_statusThe site's current deploy state — status, target, the live URL, the deployed commit and when it last went live.sites.viewdoar citire
site_deployments_listList a site's recent deployments — id, status, commit, branch and timings. Use this to choose the deployment_id to roll back to.sites.viewdoar citire
site_rollbackRoll a site back to an earlier deployment by re-deploying its commit. Destructive: pass confirm=true. Use site_deployments_list to choose which one.hosting.deploy.manageschimbă lucrurile · solicită confirmare

Sincronizare bidirecțională

InstrumentCe facePermisiuneNote
site_repo_sync_getShow a site's two-way sync with its repository: whether it is available and on, the repository and branch, the current state (idle, synced, conflict, adopt, error) and the last runs with the commits they made.sites.viewdoar citire
site_repo_sync_setTurn two-way sync on or off for a site, optionally limited to a subdirectory of the site. Needs the customer's own GitHub account connected. Turning it on pushes nothing by itself — call site_repo_sync_run for that.hosting.deploy.manageschimbă lucrurile
site_repo_sync_runSync a site to its repository now: commit whatever changed in the site's live files and push it to the connected branch, so a local git pull receives it. If the repository moved since the last sync the run is HELD and nothing is overwritten — the result says so. The other direction (repository to site) is site_deploy.hosting.deploy.manageschimbă lucrurile
site_repo_sync_resolveResolve a HELD two-way sync. keep=site commits the site's files on top of the repository (their commits stay in history); keep=repository applies the repository to the site and DISCARDS the site's unsynced changes. Destructive: pass confirm=true.hosting.deploy.manageschimbă lucrurile · solicită confirmare

Jurnale și metrici

InstrumentCe facePermisiuneNote
site_metricsCurrent metrics for one site — visits, bandwidth, error rate, disk and resource use. Each section reports whether it is available, so 'no data' is distinguishable from 'zero'.sites.viewdoar citire
site_usageOne site's metered visit usage for the current billing period, with the plan's allowance and what any overage costs.sites.viewdoar citire
site_logsRead the recent tail of one site's web-server access log and error log. Each log reports whether it could be read, so an unreadable log is never mistaken for an empty one. Use this before proposing a fix for errors or slowness.sites.panel_accessdoar citire
site_build_logRead the build log of one deployment — the latest when deployment_id is omitted. Pass after=<total from the previous call> to fetch only new lines while complete is false.sites.viewdoar citire

Configurare și WordPress

InstrumentCe facePermisiuneNote
site_php_version_getThe site's current PHP version and every version it is allowed to switch to on its product line.sites.viewdoar citire
site_php_version_setSwitch a site to a different PHP version. The version must be one that site_php_version_get lists as available. Reports whether the change reached the machine or was only recorded for provisioning to apply.hosting.php.manageschimbă lucrurile
wordpress_stateA WordPress site's core version, whether an update is available, and which management operations its hosting permits.sites.viewdoar citire
wordpress_plugins_listList a WordPress site's plugins — name, version, whether active and whether an update is available.sites.viewdoar citire
wp_plugin_updateUpdate one WordPress plugin to its latest version. Returns the plugin list as it reads after the update.sites.panel_accessschimbă lucrurile
wordpress_update_coreUpdate WordPress core to the latest version on a site. This cannot be undone by another call — take a backup first with backup_create if you may need to go back. Requires confirmation.sites.panel_accessschimbă lucrurile · solicită confirmare
wordpress_set_pluginActivate or deactivate one plugin on a WordPress site. Takes effect on the live site immediately. Requires confirmation.sites.panel_accessschimbă lucrurile · solicită confirmare

Copii de rezervă

InstrumentCe facePermisiuneNote
backups_listA site's backups — each one's id, when it was taken, its size and status — plus whether a backup is currently running and how many on-demand backups remain in the rolling 24-hour allowance.sites.viewdoar citire
backup_createTake an on-demand backup of a site and return the updated backup state. Bounded to 3 per rolling 24 hours per site; the backup runs in the background.hosting.backup.manageschimbă lucrurile
backup_restoreRestore a site from one of its backups. This OVERWRITES the site's live database and files, and everything changed since that backup was taken is lost. Requires confirmation, and the confirmation names how old the backup is.hosting.backup.manageschimbă lucrurile · solicită confirmare

Domenii și DNS

InstrumentCe facePermisiuneNote
dns_records_listList a page of DNS records for a domain whose DNS we host, in name/type/value order. Returns a next_cursor for the following page.sites.viewdoar citire
dns_record_createCreate a DNS record for a domain whose DNS we host.domains.dns.manageschimbă lucrurile
dns_record_updateUpdate an existing DNS record for a domain whose DNS we host.domains.dns.manageschimbă lucrurile
dns_record_deleteDelete a DNS record for a domain whose DNS we host.domains.dns.manageschimbă lucrurile · solicită confirmare
domains_listList the organization's domains — id, hostname, status, product line and whether we registered it or the customer pointed it at us. The ids returned here are what the DNS, cache-purge and index-check tools take.sites.viewdoar citire

Cache și roboți de indexare

InstrumentCe facePermisiuneNote
cache_purgePurge the CDN cache for a domain. Omit 'urls' to purge everything, or pass a bounded list of absolute URLs to purge only those.sites.cache.purgedoar citire
crawler_policy_getGet a site's SEO-crawler-blocking (PBN footprint) policy: which crawlers are blocked, the available crawlers, and the rendered robots.txt/server rules.sites.viewdoar citire
crawler_policy_setSet a site's SEO-crawler-blocking policy. 'blocked' is a list of crawler keys (from crawler_policy_get's available_crawlers). Search engines can never be blocked. Publishes the change so the server rules are re-written.sites.crawler.manageschimbă lucrurile

E-mail

InstrumentCe facePermisiuneNote
mail_services_listList the organization's email services — every domain it has mailboxes on, with the plan's mailbox allowance, how many are used, and whether the mail DNS is published.mail.viewdoar citire
mailboxes_listList the mailboxes on one email service, with each mailbox's size, how full it is, and whether it can send and receive.mail.viewdoar citire
mailbox_createCreate a mailbox on an email service. Returns the new mailbox's password, which is shown once and cannot be retrieved later.mail.manageschimbă lucrurile
mail_forwarders_listList the mail forwarders on one email service — which address goes where.mail.viewdoar citire
mail_forwarder_createCreate a mail forwarder on an email service, sending everything for one address on to one or more destinations.mail.manageschimbă lucrurile

SEO

InstrumentCe facePermisiuneNote
site_seo_metricsThe cached SEO authority metrics for a hosted site — domain rank, backlinks, referring domains and organic keywords. Read-only and free; the figures are refreshed by the platform's own sweep, so they may be up to a month old.sites.viewdoar citire
domain_index_checkThe cached search-index status for a domain — whether it is indexed, how many pages, and when the reading was taken. Read-only and free.sites.viewdoar citire

Imagini AI

InstrumentCe facePermisiuneNote
image_models_listThe image models this account can generate with — provider, model, and the price per image in USD. Read-only and free. A model that is not listed cannot be used, either because it is retired or because nobody has priced it.sites.viewdoar citire
image_generateGenerate an image from a prompt and put it in this account's image library. Costs money — the price per image is what image_models_list reports for the model used. Returns the image ids; the customer sees them in their library immediately.links.editschimbă lucrurile · poate cheltui bani

Panouri

InstrumentCe facePermisiuneNote
board_listList this organisation's project boards, newest first.agency.board.viewdoar citire
board_getRead one board in full: its columns and every card on them.agency.board.viewdoar citire
board_createCreate a project board, optionally for one of your client organisations.agency.board.manageschimbă lucrurile
board_card_createAdd a card to a column. Cards are agency-only unless you pass visibility 'client'.agency.board.manageschimbă lucrurile
board_card_moveMove a card to another column, or to another position in its column.agency.board.manageschimbă lucrurile
board_card_commentComment on a card. Agency-only unless you pass visibility 'client', in which case the client sees it attributed to your agency.agency.board.commentschimbă lucrurile

Facturare și upgrade-uri

InstrumentCe facePermisiuneNote
subscriptions_listList the organization's subscriptions — the plan each one is on, its status, renewal date and whether it auto-renews.billing.viewdoar citire
invoices_listList the organization's invoices and credit notes — number, status, total, currency and issue date. Optionally filter by status.billing.viewdoar citire
upgrade_optionsWhat can be bought to lift a limit you have hit — bigger plans, priced with tax, in your own currency. Pass the entitlement from a refusal (e.g. 'max_sites'), or a site_id to see what that site's own plan could move to. Read-only: nothing is bought, and calling this costs nothing.billing.viewdoar citire
purchase_quotePrice a plan exactly, with tax, in the customer's own currency — and nothing is bought or charged. Returns a quote_id to pass to purchase_authorize together with the total, which is what stops an agent committing someone to a figure they never saw. Quotes expire: re-quote rather than reusing an old id.billing.payment.manageschimbă lucrurile
purchase_authorizeComplete a purchase from a quote: places the order and charges the payment method on file. You must pass the exact total and currency purchase_quote returned — if the price has moved since, this refuses rather than charging a different amount. Retrying with the same quote_id returns the same order and never charges twice.billing.payment.manageschimbă lucrurile · solicită confirmare · poate cheltui bani

Asistență

InstrumentCe facePermisiuneNote
tickets_listList the organization's support tickets — subject, status, priority and when they were last updated. Optionally filter by status or site.tickets.viewdoar citire
ticket_createOpen a support ticket. Include what you already checked — an agent that has read the KB and run diagnostics should say so in the body, so a human does not repeat it.tickets.replyschimbă lucrurile

Partener de revânzare

InstrumentCe facePermisiuneNote
reseller_overviewThe reseller programme in one read: status, whether you can sell, billing day, default markup, your panel hostname and nameservers, mail sending domain, support routing, commerce readiness and the languages your clients' panel offers.reseller.viewdoar citire · doar pentru revânzători
reseller_services_listList the sites you have provisioned for your clients — one row per service, with the client organisation, status, any hold you placed, what it costs you wholesale and what you sell it for. Your own sites are not here; use sites_list for those.reseller.viewdoar citire · doar pentru revânzători
reseller_service_getOne client service in full — status, plan, any hold, wholesale cost, your sell price, and its disk and bandwidth usage.reseller.viewdoar citire · doar pentru revânzători
reseller_service_suspendPut one of your client's services on a non-payment hold. The site stops serving until you release it. Requires confirm: true.reseller.provisionschimbă lucrurile · solicită confirmare · doar pentru revânzători
reseller_service_unsuspendRelease a non-payment hold you placed on a client's service. The site starts serving again.reseller.provisionschimbă lucrurile · doar pentru revânzători
reseller_prices_listYour price list: every plan you can sell, with the Zinn® list price, your wholesale cost, and the retail price you have set (if any).reseller.viewdoar citire · doar pentru revânzători
reseller_client_wallets_listEvery client wallet you hold a float in, with the balance per client and the total held per currency. This is money you have taken and not yet delivered service for.reseller.viewdoar citire · doar pentru revânzători

Continuați să citiți

Preferi un terminal?

Referința CLI Zinnector®

Construit pe API-ul public

Referința API

Ce poate face un asistent AI pentru tine

Instrumente AI și MCP

Conectați-vă asistentul în două minute

Deschideți instrumentele AI din panoul de control, creați o conexiune și inserați configurația pe care o citește clientul dumneavoastră.