list_databases
Retrieve all databases on a server by providing its unique ID. This allows you to view, manage, and organize your database resources.
Instructions
List databases on a server
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| server_id | Yes | The ID of the server |
Implementation Reference
- src/tools/databases.ts:12-22 (handler)The handler function for the 'list_databases' tool. Calls client.listDatabases(server_id) and returns the result as formatted JSON text.
async ({ server_id }) => { const databases = await client.listDatabases(server_id); return { content: [ { type: "text" as const, text: JSON.stringify(databases, null, 2), }, ], }; } - src/tools/databases.ts:9-11 (schema)Zod schema defining the input parameter for 'list_databases': server_id (coerced number).
{ server_id: z.coerce.number().describe("The ID of the server"), }, - src/tools/databases.ts:5-23 (registration)Registration of the 'list_databases' tool via server.tool() inside registerDatabaseTools(), which is called from registerAllTools() in src/tools/index.ts (line 10) and ultimately from src/index.ts (line 127).
export function registerDatabaseTools(server: McpServer, client: PloiClient) { server.tool( "list_databases", "List databases on a server", { server_id: z.coerce.number().describe("The ID of the server"), }, async ({ server_id }) => { const databases = await client.listDatabases(server_id); return { content: [ { type: "text" as const, text: JSON.stringify(databases, null, 2), }, ], }; } ); - src/client.ts:188-193 (helper)Helper method on PloiClient that makes the GET request to /servers/{serverId}/databases and returns the list of Database objects.
async listDatabases(serverId: number): Promise<Database[]> { const response = await this.request<PaginatedResponse<Database>>( "GET", `/servers/${serverId}/databases` ); return response.data;