get_user_replies
Fetch user replies across forum topics to analyze contributions, find data points, and evaluate participation quality with paginated results.
Instructions
Fetch replies/posts made by a user in other topics.
Args:
username: The user's handle
offset: Pagination offset (0, 30, 60, ...)
Returns a list of UserAction objects with:
- topic_id: Which topic they replied to
- post_number: Their post number in that topic
- title: Topic title
- excerpt: Preview of their reply
- created_at: When they replied
Use this to:
- See a user's contributions across topics
- Find their data points and experiences
- Evaluate the quality of their participation
Paginate with offset in increments of 30.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| username | Yes | The user's handle | |
| offset | No | Pagination offset (0, 30, 60, ...) |
Implementation Reference
- Primary MCP tool handler for 'get_user_replies'. Uses @mcp.tool() decorator for registration, defines input schema with Annotated Fields and detailed docstring describing usage and output format.@mcp.tool() def get_user_replies( username: Annotated[ str, Field(description="The user's handle"), ], offset: Annotated[ int | None, Field(default=None, description="Pagination offset (0, 30, 60, ...)"), ] = None, ) -> list[UserAction]: """ Fetch replies/posts made by a user in other topics. Args: username: The user's handle offset: Pagination offset (0, 30, 60, ...) Returns a list of UserAction objects with: - topic_id: Which topic they replied to - post_number: Their post number in that topic - title: Topic title - excerpt: Preview of their reply - created_at: When they replied Use this to: - See a user's contributions across topics - Find their data points and experiences - Evaluate the quality of their participation Paginate with offset in increments of 30. """ return get_client().get_user_replies(username, offset=offset)
- Pydantic model defining the UserAction type returned by the get_user_replies tool, including fields for topic details, content preview, and timestamps.class UserAction(BaseModel): """A user activity entry (reply, like, etc.).""" action_type: int | None = Field(None, description="Type of action") topic_id: int | None = Field(None, description="Related topic ID") post_number: int | None = Field(None, description="Related post number") title: str | None = Field(None, description="Topic title") excerpt: str | None = Field(None, description="Content preview") created_at: datetime | None = Field(None, description="When action occurred") username: str | None = Field(None, description="Username who performed action") acting_username: str | None = Field(None, description="Acting user") class Config: extra = "ignore"
- src/uscardforum/client.py:343-357 (helper)DiscourseClient.get_user_replies method called by the MCP tool handler via get_client().def get_user_replies( self, username: str, offset: int | None = None, ) -> list[UserAction]: """Fetch user's replies. Args: username: User handle offset: Optional pagination offset Returns: List of reply action objects """ return self._users.get_user_replies(username, offset=offset)
- src/uscardforum/server_tools/__init__.py:37-47 (registration)Re-export of the get_user_replies tool from users.py module for centralized access in server_tools package.from .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, list_users_with_badge, )
- src/uscardforum/server.py:15-85 (registration)Import and re-export of get_user_replies in the MCP server entrypoint module.from uscardforum.server_tools import ( 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, 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", "get_user_replies", "get_user_summary", "get_user_topics", "list_users_with_badge", "login", "resource_categories", "resource_hot_topics", "resource_new_topics", "search_forum", "subscribe_topic", "research_topic", ]