Add comprehensive CSS styles for the MCP Marketplace interface, including card hover effects, responsive grid layout, modal backdrop blur, category badges, rating stars, install buttons, and loading animations. Also include custom scrollbar styling for the model selector to enhance user experience and visual consistency.
81 lines
2.6 KiB
SQL
81 lines
2.6 KiB
SQL
-- Schema inicial do banco de dados OllaHub
|
|
-- Conversas
|
|
CREATE TABLE conversations (
|
|
id TEXT PRIMARY KEY,
|
|
title TEXT,
|
|
model TEXT NOT NULL,
|
|
created_at INTEGER NOT NULL,
|
|
updated_at INTEGER NOT NULL
|
|
);
|
|
|
|
-- Mensagens
|
|
CREATE TABLE messages (
|
|
id TEXT PRIMARY KEY,
|
|
conversation_id TEXT NOT NULL,
|
|
role TEXT NOT NULL CHECK(role IN ('user', 'assistant', 'system')),
|
|
content TEXT NOT NULL,
|
|
timestamp INTEGER NOT NULL,
|
|
FOREIGN KEY (conversation_id) REFERENCES conversations(id) ON DELETE CASCADE
|
|
);
|
|
|
|
-- Embeddings vetoriais (384 dimensões do Ollama)
|
|
CREATE TABLE embeddings (
|
|
id TEXT PRIMARY KEY,
|
|
message_id TEXT NOT NULL,
|
|
vector BLOB NOT NULL,
|
|
FOREIGN KEY (message_id) REFERENCES messages(id) ON DELETE CASCADE
|
|
);
|
|
|
|
-- Tabela para gerenciar MCPs instalados
|
|
CREATE TABLE IF NOT EXISTS mcp_installations (
|
|
id TEXT PRIMARY KEY,
|
|
owner TEXT NOT NULL,
|
|
repo TEXT NOT NULL,
|
|
name TEXT NOT NULL,
|
|
config JSON NOT NULL,
|
|
tools JSON,
|
|
installed_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
|
|
-- Cache de todos os servidores MCP do marketplace
|
|
CREATE TABLE IF NOT EXISTS mcp_marketplace_cache (
|
|
id TEXT PRIMARY KEY,
|
|
owner TEXT NOT NULL,
|
|
repo TEXT NOT NULL,
|
|
content_name TEXT NOT NULL,
|
|
publisher_id TEXT NOT NULL,
|
|
description TEXT,
|
|
category TEXT,
|
|
subfield TEXT,
|
|
field TEXT,
|
|
rating REAL DEFAULT 0,
|
|
review_cnt INTEGER DEFAULT 0,
|
|
content_tag_list TEXT,
|
|
thumbnail_picture TEXT,
|
|
website TEXT,
|
|
detail_url TEXT,
|
|
ext_info JSON,
|
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
|
|
-- Metadados do cache (última sincronização, total de registros)
|
|
CREATE TABLE IF NOT EXISTS mcp_cache_metadata (
|
|
key TEXT PRIMARY KEY,
|
|
value TEXT NOT NULL,
|
|
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
|
|
-- Índices para performance
|
|
CREATE INDEX idx_messages_conversation ON messages(conversation_id, timestamp);
|
|
CREATE INDEX idx_conversations_updated ON conversations(updated_at DESC);
|
|
CREATE INDEX idx_embeddings_message ON embeddings(message_id);
|
|
CREATE INDEX idx_mcp_owner_repo ON mcp_installations(owner, repo);
|
|
CREATE INDEX idx_mcp_installed_at ON mcp_installations(installed_at DESC);
|
|
CREATE INDEX idx_mcp_cache_category ON mcp_marketplace_cache(category);
|
|
CREATE INDEX idx_mcp_cache_subfield ON mcp_marketplace_cache(subfield);
|
|
CREATE INDEX idx_mcp_cache_rating ON mcp_marketplace_cache(rating DESC);
|
|
CREATE INDEX idx_mcp_cache_owner_repo ON mcp_marketplace_cache(owner, repo);
|
|
CREATE INDEX idx_mcp_cache_search ON mcp_marketplace_cache(content_name, description);
|