Skip to main content
Glama

product-hunt-mcp

by jaipandya
queries.py•5.92 kB
""" GraphQL Queries for Product Hunt API Contains all GraphQL queries used by the Product Hunt MCP server. """ # Post queries POST_QUERY = """ query Post($id: ID, $slug: String) { post(id: $id, slug: $slug) { id name slug tagline description url votesCount commentsCount createdAt featuredAt website thumbnail { url videoUrl } user { id name username headline profileImage url twitterUsername } topics { edges { node { id name slug } } } media { url videoUrl type } makers { id name username profileImage url } } } """ POSTS_QUERY = """ query Posts($first: Int, $after: String, $order: PostsOrder, $topic: String, $featured: Boolean, $url: String, $twitterUrl: String, $postedBefore: DateTime, $postedAfter: DateTime) { posts(first: $first, after: $after, order: $order, topic: $topic, featured: $featured, url: $url, twitterUrl: $twitterUrl, postedBefore: $postedBefore, postedAfter: $postedAfter) { edges { node { id name slug tagline description url votesCount commentsCount createdAt featuredAt website thumbnail { url videoUrl } user { id name username headline profileImage url twitterUsername } topics { edges { node { id name slug } } } makers { id name username profileImage url } } } pageInfo { endCursor hasNextPage } } } """ # Comment queries COMMENT_QUERY = """ query Comment($id: ID!) { comment(id: $id) { id body createdAt votesCount user { id name username headline profileImage } } } """ COMMENTS_QUERY = """ query PostComments($id: ID, $slug: String, $first: Int, $after: String, $order: CommentsOrder) { post(id: $id, slug: $slug) { id name comments(first: $first, after: $after, order: $order) { edges { node { id body createdAt votesCount user { id name username headline profileImage } } } pageInfo { endCursor hasNextPage } } } } """ # Collection queries COLLECTION_QUERY = """ query Collection($id: ID, $slug: String) { collection(id: $id, slug: $slug) { id name description tagline posts { edges { node { id name slug tagline votesCount commentsCount } } } } } """ COLLECTIONS_QUERY = """ query Collections($first: Int, $after: String, $order: CollectionsOrder, $featured: Boolean, $userId: ID, $postId: ID) { collections(first: $first, after: $after, order: $order, featured: $featured, userId: $userId, postId: $postId) { edges { node { id name description tagline followersCount user { id name username headline profileImage } } } pageInfo { endCursor hasNextPage } } } """ # Topic queries TOPIC_QUERY = """ query Topic($id: ID, $slug: String) { topic(id: $id, slug: $slug) { id name slug description followersCount postsCount image } } """ TOPICS_QUERY = """ query Topics($first: Int, $after: String, $order: TopicsOrder, $query: String, $followedByUserid: ID) { topics(first: $first, after: $after, order: $order, query: $query, followedByUserid: $followedByUserid) { edges { node { id name slug description followersCount postsCount image } } pageInfo { endCursor hasNextPage } } } """ # User queries USER_QUERY = """ query User($id: ID, $username: String) { user(id: $id, username: $username) { id name username headline createdAt twitterUsername websiteUrl profileImage coverImage isMaker isFollowing url } } """ USER_POSTS_QUERY = """ query UserPosts($id: ID, $username: String, $first: Int, $after: String) { user(id: $id, username: $username) { id madePosts(first: $first, after: $after) { edges { node { id name slug tagline votesCount commentsCount createdAt featuredAt thumbnail { url } } } pageInfo { endCursor hasNextPage } } } } """ USER_VOTED_POSTS_QUERY = """ query UserVotedPosts($id: ID, $username: String, $first: Int, $after: String) { user(id: $id, username: $username) { id votedPosts(first: $first, after: $after) { edges { node { id name slug tagline votesCount commentsCount createdAt featuredAt thumbnail { url } } } pageInfo { endCursor hasNextPage } } } } """ VIEWER_QUERY = """ query { viewer { user { id name username headline coverImage createdAt isFollowing isMaker isViewer madePosts { totalCount } profileImage twitterUsername url websiteUrl votedPosts { totalCount } } } } """

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/jaipandya/producthunt-mcp-server'

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