Skip to main content
Glama

News Aggregator API

migration.sql5.64 kB
-- CreateTable CREATE TABLE "articles" ( "id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, "uuid" TEXT NOT NULL, "title" TEXT NOT NULL, "description" TEXT, "url" TEXT NOT NULL, "image_url" TEXT, "source" TEXT NOT NULL, "published_at" DATETIME NOT NULL, "categories" TEXT NOT NULL, "language" TEXT NOT NULL, "created_at" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, "updated_at" DATETIME NOT NULL, "read_count" INTEGER NOT NULL DEFAULT 0, "relevance_score" REAL, "sentiment" REAL ); -- CreateTable CREATE TABLE "user_articles" ( "id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, "user_id" INTEGER NOT NULL, "article_id" INTEGER NOT NULL, "is_bookmarked" BOOLEAN NOT NULL DEFAULT false, "is_read" BOOLEAN NOT NULL DEFAULT false, "created_at" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, "updated_at" DATETIME NOT NULL, "read_at" DATETIME, CONSTRAINT "user_articles_article_id_fkey" FOREIGN KEY ("article_id") REFERENCES "articles" ("id") ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT "user_articles_user_id_fkey" FOREIGN KEY ("user_id") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE CASCADE ); -- CreateTable CREATE TABLE "users" ( "id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, "email" TEXT NOT NULL, "name" TEXT, "password_hash" TEXT NOT NULL, "created_at" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, "updated_at" DATETIME NOT NULL, "last_login_at" DATETIME, "preferred_categories" TEXT, "preferred_sources" TEXT, "preferred_language" TEXT NOT NULL DEFAULT 'en' ); -- CreateTable CREATE TABLE "topics" ( "id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, "name" TEXT NOT NULL, "article_count" INTEGER NOT NULL DEFAULT 0, "created_at" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, "updated_at" DATETIME NOT NULL ); -- CreateTable CREATE TABLE "article_topics" ( "id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, "article_id" INTEGER NOT NULL, "topic_id" INTEGER NOT NULL, "confidence" REAL NOT NULL DEFAULT 1.0, "created_at" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, CONSTRAINT "article_topics_article_id_fkey" FOREIGN KEY ("article_id") REFERENCES "articles" ("id") ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT "article_topics_topic_id_fkey" FOREIGN KEY ("topic_id") REFERENCES "topics" ("id") ON DELETE CASCADE ON UPDATE CASCADE ); -- CreateTable CREATE TABLE "entities" ( "id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, "name" TEXT NOT NULL, "type" TEXT NOT NULL, "article_count" INTEGER NOT NULL DEFAULT 0, "created_at" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, "updated_at" DATETIME NOT NULL ); -- CreateTable CREATE TABLE "article_entities" ( "id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, "article_id" INTEGER NOT NULL, "entity_id" INTEGER NOT NULL, "frequency" INTEGER NOT NULL DEFAULT 1, "created_at" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, CONSTRAINT "article_entities_article_id_fkey" FOREIGN KEY ("article_id") REFERENCES "articles" ("id") ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT "article_entities_entity_id_fkey" FOREIGN KEY ("entity_id") REFERENCES "entities" ("id") ON DELETE CASCADE ON UPDATE CASCADE ); -- CreateTable CREATE TABLE "saved_searches" ( "id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, "user_id" INTEGER NOT NULL, "name" TEXT NOT NULL, "query" TEXT NOT NULL, "parameters" TEXT NOT NULL, "created_at" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, "updated_at" DATETIME NOT NULL, "last_run_at" DATETIME, CONSTRAINT "saved_searches_user_id_fkey" FOREIGN KEY ("user_id") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE CASCADE ); -- CreateIndex CREATE UNIQUE INDEX "articles_uuid_key" ON "articles"("uuid"); -- CreateIndex CREATE INDEX "articles_uuid_idx" ON "articles"("uuid"); -- CreateIndex CREATE INDEX "articles_language_idx" ON "articles"("language"); -- CreateIndex CREATE INDEX "articles_source_idx" ON "articles"("source"); -- CreateIndex CREATE INDEX "articles_published_at_idx" ON "articles"("published_at"); -- CreateIndex CREATE INDEX "user_articles_user_id_idx" ON "user_articles"("user_id"); -- CreateIndex CREATE INDEX "user_articles_article_id_idx" ON "user_articles"("article_id"); -- CreateIndex CREATE UNIQUE INDEX "user_articles_user_id_article_id_key" ON "user_articles"("user_id", "article_id"); -- CreateIndex CREATE UNIQUE INDEX "users_email_key" ON "users"("email"); -- CreateIndex CREATE UNIQUE INDEX "topics_name_key" ON "topics"("name"); -- CreateIndex CREATE INDEX "topics_name_idx" ON "topics"("name"); -- CreateIndex CREATE INDEX "article_topics_article_id_idx" ON "article_topics"("article_id"); -- CreateIndex CREATE INDEX "article_topics_topic_id_idx" ON "article_topics"("topic_id"); -- CreateIndex CREATE UNIQUE INDEX "article_topics_article_id_topic_id_key" ON "article_topics"("article_id", "topic_id"); -- CreateIndex CREATE UNIQUE INDEX "entities_name_key" ON "entities"("name"); -- CreateIndex CREATE INDEX "entities_name_idx" ON "entities"("name"); -- CreateIndex CREATE INDEX "entities_type_idx" ON "entities"("type"); -- CreateIndex CREATE INDEX "article_entities_article_id_idx" ON "article_entities"("article_id"); -- CreateIndex CREATE INDEX "article_entities_entity_id_idx" ON "article_entities"("entity_id"); -- CreateIndex CREATE UNIQUE INDEX "article_entities_article_id_entity_id_key" ON "article_entities"("article_id", "entity_id"); -- CreateIndex CREATE INDEX "saved_searches_user_id_idx" ON "saved_searches"("user_id");

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/Malachi-devel/the-news-api-mcp-server'

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