UNPKG

@takashito/linode-mcp-server

Version:

MCP server for Linode API

254 lines 11.9 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createInstancesClient = createInstancesClient; function createInstancesClient(axios) { return { // Instance operations getLinodes: async (params) => { const response = await axios.get('/linode/instances', { params }); return response.data; }, getLinodeById: async (id) => { const response = await axios.get(`/linode/instances/${id}`); return response.data; }, createLinode: async (data) => { const response = await axios.post('/linode/instances', data); return response.data; }, updateLinode: async (id, data) => { const response = await axios.put(`/linode/instances/${id}`, data); return response.data; }, deleteLinode: async (id) => { const response = await axios.delete(`/linode/instances/${id}`); return response.data; }, bootLinode: async (id, configId) => { const data = configId ? { config_id: configId } : {}; const response = await axios.post(`/linode/instances/${id}/boot`, data); return response.data; }, rebootLinode: async (id, configId) => { const data = configId ? { config_id: configId } : {}; const response = await axios.post(`/linode/instances/${id}/reboot`, data); return response.data; }, shutdownLinode: async (id) => { const response = await axios.post(`/linode/instances/${id}/shutdown`); return response.data; }, resizeLinode: async (id, data) => { const response = await axios.post(`/linode/instances/${id}/resize`, data); return response.data; }, cloneLinode: async (id, data) => { const response = await axios.post(`/linode/instances/${id}/clone`, data); return response.data; }, rebuildLinode: async (id, data) => { const response = await axios.post(`/linode/instances/${id}/rebuild`, data); return response.data; }, rescueLinode: async (id, devices) => { const response = await axios.post(`/linode/instances/${id}/rescue`, { devices }); return response.data; }, migrateLinode: async (id, data) => { const response = await axios.post(`/linode/instances/${id}/migrate`, data || {}); return response.data; }, mutateLinode: async (id) => { const response = await axios.post(`/linode/instances/${id}/mutate`); return response.data; }, resetRootPassword: async (id, data) => { const response = await axios.post(`/linode/instances/${id}/password`, data); return response.data; }, // Config operations getLinodeConfigs: async (linodeId, params) => { const response = await axios.get(`/linode/instances/${linodeId}/configs`, { params }); return response.data; }, getLinodeConfig: async (linodeId, configId) => { const response = await axios.get(`/linode/instances/${linodeId}/configs/${configId}`); return response.data; }, createLinodeConfig: async (linodeId, data) => { const response = await axios.post(`/linode/instances/${linodeId}/configs`, data); return response.data; }, updateLinodeConfig: async (linodeId, configId, data) => { const response = await axios.put(`/linode/instances/${linodeId}/configs/${configId}`, data); return response.data; }, deleteLinodeConfig: async (linodeId, configId) => { const response = await axios.delete(`/linode/instances/${linodeId}/configs/${configId}`); return response.data; }, // Disk operations getLinodeDisks: async (linodeId, params) => { const response = await axios.get(`/linode/instances/${linodeId}/disks`, { params }); return response.data; }, getLinodeDisk: async (linodeId, diskId) => { const response = await axios.get(`/linode/instances/${linodeId}/disks/${diskId}`); return response.data; }, createLinodeDisk: async (linodeId, data) => { const response = await axios.post(`/linode/instances/${linodeId}/disks`, data); return response.data; }, updateLinodeDisk: async (linodeId, diskId, data) => { const response = await axios.put(`/linode/instances/${linodeId}/disks/${diskId}`, data); return response.data; }, deleteLinodeDisk: async (linodeId, diskId) => { const response = await axios.delete(`/linode/instances/${linodeId}/disks/${diskId}`); return response.data; }, resizeLinodeDisk: async (linodeId, diskId, size) => { const response = await axios.post(`/linode/instances/${linodeId}/disks/${diskId}/resize`, { size }); return response.data; }, cloneDisk: async (linodeId, diskId, data) => { const response = await axios.post(`/linode/instances/${linodeId}/disks/${diskId}/clone`, data || {}); return response.data; }, resetDiskPassword: async (linodeId, diskId, password) => { const response = await axios.post(`/linode/instances/${linodeId}/disks/${diskId}/password`, { password }); return response.data; }, // Kernel operations getKernels: async (params) => { const response = await axios.get('/linode/kernels', { params }); return response.data; }, getKernelById: async (id) => { const response = await axios.get(`/linode/kernels/${id}`); return response.data; }, // Instance Type operations getTypes: async (params) => { const response = await axios.get('/linode/types', { params }); return response.data; }, getType: async (id) => { const response = await axios.get(`/linode/types/${id}`); return response.data; }, // Backup operations getBackups: async (linodeId) => { const response = await axios.get(`/linode/instances/${linodeId}/backups`); return response.data; }, getBackup: async (linodeId, backupId) => { const response = await axios.get(`/linode/instances/${linodeId}/backups/${backupId}`); return response.data; }, createSnapshot: async (linodeId, data) => { const response = await axios.post(`/linode/instances/${linodeId}/backups`, data); return response.data; }, cancelBackups: async (linodeId) => { const response = await axios.post(`/linode/instances/${linodeId}/backups/cancel`); return response.data; }, enableBackups: async (linodeId) => { const response = await axios.post(`/linode/instances/${linodeId}/backups/enable`); return response.data; }, restoreBackup: async (linodeId, backupId, data) => { const response = await axios.post(`/linode/instances/${linodeId}/backups/${backupId}/restore`, data || {}); return response.data; }, // IP operations getLinodeIPs: async (linodeId) => { const response = await axios.get(`/linode/instances/${linodeId}/ips`); return response.data; }, allocateIP: async (linodeId, data) => { const response = await axios.post(`/linode/instances/${linodeId}/ips`, data); return response.data; }, getLinodeIP: async (linodeId, address) => { const response = await axios.get(`/linode/instances/${linodeId}/ips/${address}`); return response.data; }, updateLinodeIP: async (linodeId, address, data) => { const response = await axios.put(`/linode/instances/${linodeId}/ips/${address}`, data); return response.data; }, deleteLinodeIP: async (linodeId, address) => { const response = await axios.delete(`/linode/instances/${linodeId}/ips/${address}`); return response.data; }, // Firewall operations getLinodeFirewalls: async (linodeId, params) => { const response = await axios.get(`/linode/instances/${linodeId}/firewalls`, { params }); return response.data; }, applyFirewalls: async (linodeId) => { const response = await axios.post(`/linode/instances/${linodeId}/firewalls/apply`); return response.data; }, updateLinodeFirewalls: async (linodeId, data) => { const response = await axios.put(`/linode/instances/${linodeId}/firewalls`, data); return response.data; }, // Stat operations getLinodeStats: async (id) => { const response = await axios.get(`/linode/instances/${id}/stats`); return response.data; }, getLinodeStatsByDate: async (id, year, month) => { const response = await axios.get(`/linode/instances/${id}/stats/${year}/${month}`); return response.data; }, getNetworkTransfer: async (id) => { const response = await axios.get(`/linode/instances/${id}/transfer`); return response.data; }, getMonthlyTransfer: async (id, year, month) => { const response = await axios.get(`/linode/instances/${id}/transfer/${year}/${month}`); return response.data; }, // Config Interface operations getConfigInterfaces: async (linodeId, configId) => { const response = await axios.get(`/linode/instances/${linodeId}/configs/${configId}/interfaces`); return response.data; }, getConfigInterface: async (linodeId, configId, interfaceId) => { const response = await axios.get(`/linode/instances/${linodeId}/configs/${configId}/interfaces/${interfaceId}`); return response.data; }, createConfigInterface: async (linodeId, configId, data) => { const response = await axios.post(`/linode/instances/${linodeId}/configs/${configId}/interfaces`, data); return response.data; }, updateConfigInterface: async (linodeId, configId, interfaceId, data) => { const response = await axios.put(`/linode/instances/${linodeId}/configs/${configId}/interfaces/${interfaceId}`, data); return response.data; }, deleteConfigInterface: async (linodeId, configId, interfaceId) => { const response = await axios.delete(`/linode/instances/${linodeId}/configs/${configId}/interfaces/${interfaceId}`); return response.data; }, reorderConfigInterfaces: async (linodeId, configId, data) => { const response = await axios.post(`/linode/instances/${linodeId}/configs/${configId}/interfaces/order`, data); return response.data; }, // NodeBalancer operations getLinodeNodeBalancers: async (linodeId, params) => { const response = await axios.get(`/linode/instances/${linodeId}/nodebalancers`, { params }); return response.data; }, // Volume operations getLinodeVolumes: async (linodeId, params) => { const response = await axios.get(`/linode/instances/${linodeId}/volumes`, { params }); return response.data; } }; } //# sourceMappingURL=instances.js.map