UNPKG

@takashito/linode-mcp-server

Version:

MCP server for Linode API

116 lines 5.28 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createDatabasesClient = createDatabasesClient; /** * Creates a databases client for interfacing with the Linode Managed Databases API */ function createDatabasesClient(axios) { return { // Engine endpoints getEngines: async (params) => { const response = await axios.get('/databases/engines', { params }); return response.data; }, getEngine: async (engineId) => { const response = await axios.get(`/databases/engines/${engineId}`); return response.data; }, // Type endpoints getTypes: async (params) => { const response = await axios.get('/databases/types', { params }); return response.data; }, getType: async (typeId) => { const response = await axios.get(`/databases/types/${typeId}`); return response.data; }, // General database instances endpoint getDatabaseInstances: async (params) => { const response = await axios.get('/databases/instances', { params }); return response.data; }, // MySQL specific endpoints getMySQLInstances: async (params) => { const response = await axios.get('/databases/mysql/instances', { params }); return response.data; }, getMySQLInstance: async (instanceId) => { const response = await axios.get(`/databases/mysql/instances/${instanceId}`); return response.data; }, createMySQLInstance: async (data) => { const response = await axios.post('/databases/mysql/instances', data); return response.data; }, updateMySQLInstance: async (instanceId, data) => { const response = await axios.put(`/databases/mysql/instances/${instanceId}`, data); return response.data; }, deleteMySQLInstance: async (instanceId) => { await axios.delete(`/databases/mysql/instances/${instanceId}`); }, getMySQLCredentials: async (instanceId) => { const response = await axios.get(`/databases/mysql/instances/${instanceId}/credentials`); return response.data; }, resetMySQLCredentials: async (instanceId) => { const response = await axios.post(`/databases/mysql/instances/${instanceId}/credentials/reset`); return response.data; }, getMySQLSSLCertificate: async (instanceId) => { const response = await axios.get(`/databases/mysql/instances/${instanceId}/ssl`); return response.data; }, patchMySQLInstance: async (instanceId) => { await axios.post(`/databases/mysql/instances/${instanceId}/patch`); }, suspendMySQLInstance: async (instanceId) => { await axios.post(`/databases/mysql/instances/${instanceId}/suspend`); }, resumeMySQLInstance: async (instanceId) => { await axios.post(`/databases/mysql/instances/${instanceId}/resume`); }, // PostgreSQL specific endpoints getPostgreSQLInstances: async (params) => { const response = await axios.get('/databases/postgresql/instances', { params }); return response.data; }, getPostgreSQLInstance: async (instanceId) => { const response = await axios.get(`/databases/postgresql/instances/${instanceId}`); return response.data; }, createPostgreSQLInstance: async (data) => { const response = await axios.post('/databases/postgresql/instances', data); return response.data; }, updatePostgreSQLInstance: async (instanceId, data) => { const response = await axios.put(`/databases/postgresql/instances/${instanceId}`, data); return response.data; }, deletePostgreSQLInstance: async (instanceId) => { await axios.delete(`/databases/postgresql/instances/${instanceId}`); }, getPostgreSQLCredentials: async (instanceId) => { const response = await axios.get(`/databases/postgresql/instances/${instanceId}/credentials`); return response.data; }, resetPostgreSQLCredentials: async (instanceId) => { const response = await axios.post(`/databases/postgresql/instances/${instanceId}/credentials/reset`); return response.data; }, getPostgreSQLSSLCertificate: async (instanceId) => { const response = await axios.get(`/databases/postgresql/instances/${instanceId}/ssl`); return response.data; }, patchPostgreSQLInstance: async (instanceId) => { await axios.post(`/databases/postgresql/instances/${instanceId}/patch`); }, suspendPostgreSQLInstance: async (instanceId) => { await axios.post(`/databases/postgresql/instances/${instanceId}/suspend`); }, resumePostgreSQLInstance: async (instanceId) => { await axios.post(`/databases/postgresql/instances/${instanceId}/resume`); } }; } //# sourceMappingURL=databases.js.map