Skip to main content
Glama

HackerNews MCP Server

test-helpers.tsโ€ข1.91 kB
import { HackerNewsItem, HackerNewsUser, StoryWithMetadata, UserWithStats, ItemType } from "./types/hackernews"; export const createMockItem = (overrides: Partial<HackerNewsItem> = {}): HackerNewsItem => ({ id: 123, type: "story" as ItemType, by: "testuser", time: Date.now() / 1000, title: "Test Story", score: 100, descendants: 25, ...overrides }); export const createMockUser = (overrides: Partial<HackerNewsUser> = {}): HackerNewsUser => ({ id: "testuser", created: 1640995200, karma: 1000, about: "Test user", submitted: [123, 456, 789], ...overrides }); export const createMockStoryWithMetadata = (overrides: Partial<StoryWithMetadata> = {}): StoryWithMetadata => ({ id: 123, type: "story" as ItemType, by: "testuser", time: Date.now() / 1000, title: "Test Story", score: 100, descendants: 25, url: "https://example.com", domain: "example.com", ageHours: 2.5, commentCount: 25, ...overrides }); export const createMockUserWithStats = (overrides: Partial<UserWithStats> = {}): UserWithStats => ({ id: "testuser", created: 1640995200, karma: 1000, about: "Test user", submitted: [123, 456, 789], averageScore: 150, topStories: [ createMockItem({ id: 123, title: "Top Story 1", score: 200, descendants: 50 }), createMockItem({ id: 456, title: "Top Story 2", score: 180, descendants: 30 }) ], recentActivity: [ createMockItem({ id: 789, type: "comment", text: "Recent comment", score: 10 }) ], ...overrides }); export const createMockComment = (overrides: Partial<HackerNewsItem> = {}): HackerNewsItem => ({ id: 456, type: "comment" as ItemType, by: "commenter", time: Date.now() / 1000, text: "This is a comment", parent: 123, ...overrides }); export const createMockCacheStats = (): { items: number; users: number; lists: number } => ({ items: 100, users: 25, lists: 10 });

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/Traves-Theberge/Hackernews-MCP-Typescript'

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