Skip to main content
Glama
smatiolids
by smatiolids
route.ts1.29 kB
import { NextRequest, NextResponse } from 'next/server'; import { getAstraClient } from '@/lib/astraClient'; export async function GET(request: NextRequest) { try { const { searchParams } = new URL(request.url); const type = searchParams.get('type'); // 'keyspaces', 'collections', 'tables' const dbName = searchParams.get('dbName') || undefined; const client = getAstraClient(); await client.connect(); let result: string[] = []; switch (type) { case 'keyspaces': result = await client.listKeyspaces(); break; case 'collections': result = await client.listCollections(dbName); break; case 'tables': result = await client.listTables(dbName); break; default: return NextResponse.json( { success: false, error: 'Invalid type. Must be "keyspaces", "collections", or "tables"' }, { status: 400 } ); } return NextResponse.json({ success: true, objects: result }); } catch (error) { console.error('Error listing database objects:', error); return NextResponse.json( { success: false, error: error instanceof Error ? error.message : 'Failed to list database objects', }, { status: 500 } ); } }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/smatiolids/astra-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server