get_user_reactions
Fetch a user's post reactions to identify their interests and values on USCardForum. Use this tool to see what content a user has liked or reacted to.
Instructions
Fetch a user's post reactions (likes, etc.).
Args:
username: The user's handle
offset: Pagination offset (optional)
Returns a UserReactions object with reaction data.
Use to see what content a user has reacted to,
which can indicate their interests and values.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| username | Yes | The user's handle | |
| offset | No | Pagination offset |
Implementation Reference
- MCP tool handler for get_user_reactions. Defines input schema with Annotated[Field] descriptions and return type UserReactions. Delegates execution to the shared client instance.@mcp.tool() def get_user_reactions( username: Annotated[ str, Field(description="The user's handle"), ], offset: Annotated[ int | None, Field(default=None, description="Pagination offset"), ] = None, ) -> UserReactions: """ Fetch a user's post reactions (likes, etc.). Args: username: The user's handle offset: Pagination offset (optional) Returns a UserReactions object with reaction data. Use to see what content a user has reacted to, which can indicate their interests and values. """ return get_client().get_user_reactions(username, offset=offset)
- src/uscardforum/api/users.py:285-308 (helper)UsersAPI.get_user_reactions(): Performs HTTP GET request to the Discourse reactions endpoint and constructs UserReactions model from response.def get_user_reactions( self, username: str, offset: int | None = None, ) -> UserReactions: """Fetch user's post reactions. Args: username: User handle offset: Optional pagination offset Returns: User reactions data """ params_list: list[tuple[str, Any]] = [("username", username)] if offset is not None: params_list.append(("offset", int(offset))) payload = self._get( "/discourse-reactions/posts/reactions.json", params=params_list, ) return UserReactions(reactions=payload.get("reactions", []))
- src/uscardforum/client.py:440-454 (helper)DiscourseClient.get_user_reactions(): Thin wrapper delegating to the UsersAPI instance.def get_user_reactions( self, username: str, offset: int | None = None, ) -> UserReactions: """Fetch user's post reactions. Args: username: User handle offset: Optional pagination offset Returns: User reactions data """ return self._users.get_user_reactions(username, offset=offset)
- src/uscardforum/server_tools/__init__.py:37-45 (registration)Re-export of get_user_reactions from users.py module, making it available at the server_tools package level for import in server.pyfrom .users import ( get_user_summary, get_user_topics, get_user_replies, get_user_actions, get_user_badges, get_user_following, get_user_followers, get_user_reactions,
- src/uscardforum/server.py:33-73 (registration)Explicit import of get_user_reactions in the main MCP server entrypoint file.get_user_reactions, get_user_replies, get_user_summary, get_user_topics, list_users_with_badge, login, research_topic, resource_categories, resource_hot_topics, resource_new_topics, search_forum, subscribe_topic, ) __all__ = [ "MCP_HOST", "MCP_PORT", "MCP_TRANSPORT", "NITAN_TOKEN", "SERVER_INSTRUCTIONS", "get_client", "main", "mcp", "analyze_user", "bookmark_post", "compare_cards", "find_data_points", "get_all_topic_posts", "get_categories", "get_current_session", "get_hot_topics", "get_new_topics", "get_notifications", "get_top_topics", "get_topic_info", "get_topic_posts", "get_user_actions", "get_user_badges", "get_user_followers", "get_user_following", "get_user_reactions",