Tokeni ya MCP ni nenosiri la akaunti yako likiwa na API iliyounganishwa. Mpe wakala, na utakuwa na mtumiaji asiyechoka kamwe, anayesoma kila ukurasa unaomwelekeza, na anayefanya hasa kile agizo la mwisho katika muktadha wake lilisema. Mara nyingi hicho ndicho unachotaka. Ukurasa huu unahusu nyakati zilizobaki.
Kila kitu hapa chini kimethibitishwa kwenye seva halisi tarehe iliyo juu ya ukurasa: orodha ya zana imetoka kwenye tools/list katika https://mcp.eqvps.com/mcp, na mipaka kutoka kwenye API yenyewe. Kama wewe ni mgeni, soma kwanza kuunganisha mteja wa MCP na tokeni za API, kisha urudi.
Mfumo wa vitisho: nini huharibika kwa kweli
Mambo matatu, kwa mpangilio tunaoyaona:
- Wakala anaelewa vibaya. "Safisha mashine ya majaribio" inageuka kuwa kusakinisha upya seva isiyo sahihi. Hakuna nia mbaya, ni modeli tu iliyojaza pengo kwenye agizo.
- Prompt injection. Wakala anasoma maandishi ambayo hukuandika (README, jibu la usaidizi, ukurasa uliochukuliwa mtandaoni) na maandishi hayo yanamwambia afanye jambo fulani. Ikiwa wakala ana tokeni yenye haki kamili, agizo lililopenyezwa nalo lina haki hizo.
- Tokeni inavuja. Inaishia kwenye historia ya shell, repo ya umma, usanidi wa MCP unaoshirikiwa au mstari wa logi.
Seva ya MCP inahakiki kwamba tokeni ni halali na kwamba seva ni mali ya akaunti hiyo (au imekabidhiwa kwake). Haijui ulikusudia nini. Kila kinga hapa chini inajibu swali moja: agizo likiwa si sahihi, madhara yanaweza kufika wapi?
Zana zote za MCP kwa kiwango cha hatari
Tokeni ya mteja inaona zana 45 (seva ya MCP 1.6.0). Tokeni ya muuzaji (rk_…) inaona seti tofauti ya zana 30 za wauzaji na hakuna hata moja ya hizi, kwa hivyo endpoint ina jumla ya 75. Mteja wako hupokea kutoka tools/list seti yake tu.
Ukurasa huu unapanga zana kwa kiwango cha hatari. Vigezo na mifano ya miito ya kila zana viko kwenye rejea ya vigezo; zana zote kwa mstari mmoja, pamoja na zana 30 za wauzaji, ziko kwenye orodha kamili.
Bado hatutumi maelezo ya zana za MCP (readOnlyHint, destructiveHint), kwa hivyo mteja wako hawezi kuzipanga mwenyewe. Weka idhini kwa mkono kulingana na viwango vilivyo hapa chini.
Kiwango 0 — za umma, bila tokeni (5)
| Zana | Inachofanya |
|---|---|
get_started | Mtiririko wote kwa jibu moja: zana zipi, kwa mpangilio gani |
list_plans | Mipango, bei, picha za mifumo endeshi |
sandbox_pricing | Bei za sandbox |
register_account | Huunda akaunti mpya na kurudisha tokeni yake |
login | Barua pepe + nenosiri → tokeni |
Kiwango 1 — kusoma akaunti, bila madhara ya pembeni (15)
| Zana | Inachofanya | Tahadhari |
|---|---|---|
whoami | Kitambulisho, jina, barua pepe ya akaunti | |
get_balance | Salio la kulipia kabla | |
list_vps | Seva zinazofanya kazi, zinazoandaliwa na zilizosimamishwa | |
get_vps_status | Hali, vipimo, taarifa za ufikiaji | Ikiwa na reveal: true hurudisha nenosiri la root |
get_vps_metrics | CPU, kumbukumbu, mtandao, diski kwa muda | |
get_upgrade_options | Mipango ambayo seva inaweza kuhamia bila kusakinisha upya | |
list_delegations | Umempa nani ufikiaji | |
list_delegated_to_me | Seva ambazo wengine wamekukabidhi | |
list_tickets | Tiketi zako za usaidizi | |
get_ticket | Tiketi moja pamoja na mazungumzo yote | Maandishi ya tiketi ni ingizo lisiloaminika kwa wakala |
list_sandboxes | Sandbox zako | |
get_sandbox | Sandbox moja na matumizi yake | |
get_task | Matokeo ya kazi ya chinichini | |
download_file | Husoma faili ndogo kutoka sandbox | |
get_download_url | Kiungo cha muda mfupi kwa faili moja ya sandbox | Yeyote mwenye kiungo anaweza kupakua hadi kiishe muda |
Kiwango 2 — hubadilisha hali, hazitumii pesa (17)
| Zana | Inachofanya | Tahadhari |
|---|---|---|
power_vps | start / stop / reboot | stop ni stop kweli: huduma zinazimika |
set_hostname | Hubadilisha jina la seva | Hubadilisha thamani ile ile ambayo confirm inalinganisha nayo |
undo_cancel | Huondoa ughairi uliopangwa mwishoni mwa kipindi | |
refresh_token | Tokeni mpya, ya zamani inabatilishwa papo hapo | Sasisha usanidi usiobadilika baadaye |
set_password | Huweka nenosiri la akaunti kama halipo | Mwenye tokeni anaweza kuliweka kabla yako |
topup_balance | Ankara ya kuongeza salio + kiungo cha malipo ya crypto | Kulipa kunahitaji pochi |
pay_invoice | Kiungo cha malipo kwa ankara isiyolipwa | Vivyo hivyo |
accept_delegation | Hukubali mwaliko | |
revoke_delegation | Humaliza ukabidhishaji | |
create_ticket / reply_ticket / close_ticket | Tiketi za usaidizi | Wakala anaandikia usaidizi kwa jina lako |
run_code / exec_command | Huendesha msimbo ndani ya sandbox | Ndani ya sandbox tu, si kwenye VPS yako |
kill_task | Husimamisha kazi ya chinichini ya sandbox | |
upload_file / get_upload_url | Huweka faili ndani ya sandbox |
Kiwango 3 — hutumia pesa, hufuta data au hutoa ufikiaji (8)
| Zana | Inachofanya | Ukaguzi upande wa seva |
|---|---|---|
order_vps | Huagiza seva, malipo kutoka salio | Salio halitoshi → ankara isiyolipwa, hakuna kinachokatwa |
change_plan | Kubadilisha mpango bila kusakinisha upya, tofauti hukatwa kutoka salio | confirm: true; salio halitoshi → 402 |
create_sandbox | Huanzisha sandbox inayotozwa | Salio tupu → 402 |
reinstall_vps | Hufuta diski na kusakinisha mfumo endeshi mpya | confirm = jina kamili la mwenyeji au DELETE; mara 4 kwa dakika |
reset_password | Nenosiri jipya la root, la zamani halifanyi kazi tena | confirm = jina la mwenyeji au DELETE; mara 6 kwa dakika |
cancel_service | end_of_period (chaguo-msingi, inaweza kurudishwa) au immediate (huharibu seva papo hapo) | immediate inahitaji confirm = jina la mwenyeji |
kill_sandbox | Hufuta sandbox pamoja na faili zake | hakuna |
delegate_service | Humpa mtu mwingine ufikiaji wa mwendeshaji kwenye seva | Mmiliki pekee; mtu huyo lazima akubali |
Kumbukumbu ya mabadiliko ya seti ya zana
| Tarehe | Toleo la seva | Mabadiliko | Athari kwa hatari |
|---|---|---|---|
| 2026-10-03 | 1.6.0 | refresh_token imeongezwa; tokeni hudumu mwaka 1 kwa chaguo-msingi | Kiwango 2 |
| 2026-10-03 | 1.5.0 | undo_cancel, get_upgrade_options, change_plan | change_plan hutumia salio → kiwango 3 |
| 2026-10-03 | 1.1.0 | Zana 13 za sandbox | create_sandbox hutumia pesa, kill_sandbox hufuta → kiwango 3 |
Toleo linalofanya kazi ni la umma: curl -s https://mcp.eqvps.com/healthz. Likibadilika, jedwali hili nalo hubadilika.
Salio ndilo kikomo cha matumizi
EQVPS ni ya kulipia kabla. Hakuna kadi iliyohifadhiwa, hakuna mkopo, salio haliendi chini ya sifuri: kiasi kikubwa zaidi ambacho wakala anaweza kutumia ni kile kilichopo kwenye salio. Zana tatu hutumia pesa: order_vps, change_plan na create_sandbox. Usasishaji wa seva zako zilizopo pia hukatwa kutoka salio hilo hilo.
Wakala anaweza kuunda maombi ya pesa, lakini hawezi kuyalipa. topup_balance na pay_invoice hurudisha kiungo cha malipo ya crypto, na kiungo kisicho na pochi nyuma yake hakifanyi chochote. Pia hakuna endpoint ya kutoa pesa: pesa kwenye salio zinaweza kununua huduma ndani ya akaunti yako, haziwezi kutoka nje. Marejesho ya ughairi wa papo hapo nayo hurudi kwenye salio.
Tahadhari moja, na ni ya kweli. Ukiacha salio chini sana ili kumdhibiti wakala, usasishaji wa seva zako mwenyewe utaanza kushindwa na seva zitaingia kipindi cha neema. Kanuni yetu: kiasi cha mzunguko mmoja wa usasishaji wa kile kinachoendeshwa tayari, pamoja na bajeti ya kazi ya sasa ya wakala. Mwongozo wa bajeti ya wakala unaeleza hesabu. Na ukimpa wakala pochi yake mwenyewe yenye pesa, pochi hiyo inakuwa kikomo cha pili unachopaswa kukifuatilia pia.
Ruhusa ndogo kabisa: hakuna tokeni ya kusoma tu (bado)
Jibu la moja kwa moja: kila tokeni ya mteja ina haki sawa na akaunti kwenye dashibodi. Jina na muda wa tokeni vinaweza kuwekwa, lakini wigo wa ruhusa (scopes) hauwezi.
Kilicho chembamba zaidi leo ni ukabidhishaji. Unampa wakala akaunti yake yenye salio la sifuri na kumkabidhi seva moja:
delegate_service { "service_id": "EQ-XXXX", "email": "agent@yourdomain.com", "expires_days": 30 }
Vivyo hivyo kupitia REST:
curl -s -X POST "https://api.eqvps.com/api/v1/eqvps/services/EQ-XXXX/delegations" \
-H "Authorization: Bearer $EQVPS_TOKEN" -H "Content-Type: application/json" \
-d '{"email":"agent@yourdomain.com","expires_days":30}'
Mwaliko lazima ukubaliwe ukiwa umeingia kwa barua pepe hiyo (accept_delegation), na expires_days inaweza kuwa kati ya 1 na 365. Hatua kwa hatua pamoja na picha za skrini: kukabidhi ufikiaji na ufikiaji kwenye nyaraka.
| Akaunti iliyokabidhiwa inaweza | Akaunti iliyokabidhiwa haiwezi |
|---|---|
| Kuona hali, vipimo na historia ya seva hiyo moja | Kuona seva zako nyingine, salio au ankara |
| Kuwasha, kuzima, kuwasha upya | Kughairi, kusasisha au kubadilisha mpango |
| Kuweka jina la mwenyeji na reverse DNS | Kununua nyongeza au IP |
| Kubadilisha nenosiri la root | Kufungua konsoli ya wavuti |
| Kusakinisha upya mfumo endeshi | Kumkabidhi mtu mwingine seva |
Angalia mistari miwili ya mwisho upande wa kushoto. Aliyekabidhiwa hawezi kutumia pesa zako, lakini anaweza kuifuta seva hiyo. Washa nakala rudufu kwenye kila seva ambayo wakala anaweza kusakinisha upya.
Usafi wa tokeni
Tokeni moja kwa kila wakala, yenye jina. Iunde kwenye Dashibodi → Mipangilio → API tokens kwa agents, au hivi:
curl -s -X POST "https://api.eqvps.com/api/v1/eqvps/auth/tokens" \
-H "Authorization: Bearer $EQVPS_TOKEN" -H "Content-Type: application/json" \
-d '{"name":"backup-agent","expires_in_days":90}'
Tokeni huonyeshwa mara moja tu. Muda ni siku 1 hadi 1825, 365 usipobainisha. Kwa mawakala tungechagua 90.
Ihifadhi kwenye faili ambalo wewe peke yako unaweza kusoma, si kwenye repo, si kwenye prompt, wala si kwenye kigeu cha shell unachonakili kila mahali:
mkdir -p ~/.config/eqvps && chmod 700 ~/.config/eqvps
( umask 077; read -rsp 'EQVPS token: ' T; echo; printf 'EQVPS_TOKEN=%s\n' "$T" > ~/.config/eqvps/agent.env )
ls -l ~/.config/eqvps/agent.env # inatarajiwa: -rw-------
Kisha ipakie kwenye huduma ya wakala kwa EnvironmentFile= (systemd) au set -a; . ~/.config/eqvps/agent.env; set +a.
Ibadilishe kabla haijaisha muda. Zana ya refresh_token, au POST /auth/tokens/{id}/refresh, hutoa tokeni mpya yenye jina lile lile na kubatilisha ya zamani papo hapo. Ikiwa tokeni imeandikwa moja kwa moja kwenye usanidi wa mteja wa MCP, isasishe mara moja baadaye, la sivyo kikao kijacho kitapata 401.
Kagua nani anatumia nini: GET /auth/tokens huonyesha kila tokeni pamoja na jina, tarehe ya kuisha na last_used_at. Tokeni usiyoijua, au iliyotumika baada ya kumzima wakala, ndiyo ishara yako.
Tokeni ikivuja
Kwa mpangilio huu:
- Ibatilishe. Dashibodi → Mipangilio → API tokens kwa agents → Batilisha, au
curl -s -X DELETE -H "Authorization: Bearer $EQVPS_TOKEN" https://api.eqvps.com/api/v1/eqvps/auth/tokens/<id>. Inaacha kufanya kazi kuanzia ombi linalofuata. - Tafuta tokeni mpya ambazo hukuziunda, na uzibatilishe pia.
- Kagua kilichoweza kuathirika: historia ya huduma ya kila seva, ankara na salio, na
list_delegationskwa ufikiaji ambao hukutoa. - Badilisha manenosiri ya root kwenye kila seva ambayo tokeni hiyo iliiona.
get_vps_statusikiwa nareveal: truehutoa nenosiri la root, kwa hivyo tokeni iliyovuja ni nenosiri la root lililovuja. Ukiwa hapo, kagua pia~/.ssh/authorized_keys. - Funga mlango wa nenosiri. Ikiwa akaunti yako haijawahi kuwa na nenosiri, aliyekuwa na tokeni huenda aliweka moja kwa
set_password. Ingia kwa msimbo wa barua pepe na ubadilishe nenosiri.
Kuzuia hatua ya 5 hakuna gharama: weka nenosiri la akaunti wewe mwenyewe sasa, na set_password itarudisha 409 kwa yeyote atakayekuja baada yako.
Idhini ya binadamu
Kile seva inalazimisha:
reinstall_vps,reset_passwordnacancel_serviceyenyetype: immediatezinahitajiconfirmiwe sawa na jina kamili la mwenyeji (DELETEpia inafanya kazi kwa kusakinisha upya na kubadilisha nenosiri).change_planinahitajiconfirm: true.- Ughairi wa chaguo-msingi ni
end_of_period: seva inaendelea hadi mwisho wa kipindi kilicholipwa, naundo_cancelinaurudisha. - Mipaka ya kasi kwa kila akaunti: kusakinisha upya 4/dakika, kubadilisha nenosiri 6/dakika, nishati 20/dakika, maagizo 20/dakika. Inatosha kuzuia kitanzi kisifanye jambo moja mara hamsini, lakini haitoshi kuzuia ombi moja lisilo sahihi.
Elewa wazi confirm ni nini. Inamzuia wakala kuchukua hatua kwa "safisha pale". Haimzuii mshambulizi, kwa sababu jina la mwenyeji liko umbali wa ombi moja la get_vps_status. Idhini halisi iko kwenye mteja wako wa MCP. Wateja wengi wanaweza kuuliza kabla ya kila ombi la zana: viacha viwango 0 na 1 viende huru, na kiwango 3 kiulize kila mara. Kwenye wateja wenye ruhusa kwa kila zana, kama settings.json ya Claude Code (seva imesajiliwa kama eqvps):
{
"permissions": {
"ask": ["mcp__eqvps__order_vps", "mcp__eqvps__change_plan", "mcp__eqvps__create_sandbox", "mcp__eqvps__reset_password", "mcp__eqvps__delegate_service"],
"deny": ["mcp__eqvps__reinstall_vps", "mcp__eqvps__cancel_service", "mcp__eqvps__kill_sandbox"]
}
}
Ongeza pia mstari mmoja kwenye maagizo ya wakala. Peke yake si kinga ya usalama, lakini hupunguza visa vya kutoelewana (iache kwa Kiingereza, modeli huielewa vile vile):
Never call reinstall_vps, reset_password, cancel_service (type=immediate), change_plan,
order_vps, create_sandbox, kill_sandbox or delegate_service unless the human has typed
the target server's hostname in this conversation for that specific action.
Ikiwa wakala anaingia kwa msimbo wa barua pepe badala ya kushikilia tokeni ya muda mrefu, angalia kuingia kwa wakala kupitia MCP.
Ukaguzi: unachoweza kuona baadaye
- Orodha ya tokeni (
GET /auth/tokens, au Mipangilio → API tokens kwa agents): jina, tarehe ya kuundwa, kuisha,last_used_at. Ndiyo sababu inafaa kuzipa tokeni majina kwa kila wakala. - Historia ya huduma (dashibodi, ukurasa wa seva): vitendo vya nishati, usakinishaji upya, ubadilishaji wa nenosiri, mabadiliko ya mpango, malipo, kila kimoja na wakati na mtendaji: wewe, usaidizi au kiotomatiki. Haisemi ni tokeni ipi au aliyekabidhiwa yupi alitenda, inasema tu kwamba kitendo kilitoka upande wako.
- Ankara na salio: kila makato na rejesho.
list_delegations: nani ana ufikiaji wa nini, na hadi lini.
Pengo hilo kwenye historia ya huduma ndilo kikomo cha kweli cha ukaguzi wa upande wa seva leo. Ikiwa unahitaji kujua wakala yupi alifanya nini, rekodi kila ombi la zana pamoja na hoja zake (bila siri) upande wa wakala.
Mpangilio ambao tungechagua
Kwa wakala anayesimamia seva moja ya uzalishaji:
- Akaunti tofauti ya wakala, salio la sifuri, seva imekabidhiwa kwa
expires_days: 90. - Tokeni yako ya mmiliki inabaki kwako, haiko kwenye usanidi wowote wa wakala.
- Nakala rudufu kwenye seva hiyo, kwa sababu aliyekabidhiwa anaweza kusakinisha upya.
- Zana za kiwango 3 kwenye "ask" au "deny" katika mteja.
- Tokeni ya wakala kwenye faili lenye ruhusa
600, inasasishwa kabla ya kuisha muda.
Kwa wakala anayepaswa kuagiza seva au kuendesha sandbox, ukabidhishaji hautoshi, kwa sababu anahitaji salio. Hapo salio ndilo kikomo chako: ongeza kwa kila kazi, ipe tokeni jina, na uangalie last_used_at mara moja kwa wiki. Ikiwa tokeni ya kusoma tu ingebadilisha jinsi unavyoendesha mawakala, tuambie kupitia usaidizi: maoni ya aina hiyo ndiyo huamua tutajenga nini baadaye.
Maoni
Bado hakuna maoni. Kuwa wa kwanza.