list_users_with_badge
Find community members who have earned a specific achievement badge on USCardForum. Use this tool to identify users with particular recognition levels or accomplishments.
Instructions
List all users who have earned a specific badge.
Args:
badge_id: The numeric badge ID
offset: Pagination offset (optional)
Returns a dictionary with user badge information.
Use to find community members with specific achievements
or recognition levels.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| badge_id | Yes | The numeric badge ID | |
| offset | No | Pagination offset |
Implementation Reference
- MCP tool handler decorated with @mcp.tool(). Defines input schema via Annotated Fields and delegates to the API client to list users with a given badge.@mcp.tool() def list_users_with_badge( badge_id: Annotated[ int, Field(description="The numeric badge ID"), ], offset: Annotated[ int | None, Field(default=None, description="Pagination offset"), ] = None, ) -> dict[str, Any]: """ List all users who have earned a specific badge. Args: badge_id: The numeric badge ID offset: Pagination offset (optional) Returns a dictionary with user badge information. Use to find community members with specific achievements or recognition levels. """ return get_client().list_user_badges(badge_id, offset=offset)
- src/uscardforum/api/users.py:187-206 (helper)Underlying API client method in UsersAPI class that constructs HTTP parameters and calls _get to retrieve users with the specified badge from the forum API.def list_users_with_badge( self, badge_id: int, offset: int | None = None, ) -> dict[str, Any]: """List users with a specific badge. Args: badge_id: Badge ID offset: Optional pagination offset Returns: Raw API response with users """ params_list: list[tuple[str, Any]] = [("badge_id", int(badge_id))] if offset is not None: params_list.append(("offset", int(offset))) return self._get("/user_badges.json", params=params_list)
- src/uscardforum/server_tools/__init__.py:37-47 (registration)Re-export of the list_users_with_badge tool (and other user tools) from users.py module, making it available when importing from 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-45 (registration)Import of all MCP tools including list_users_with_badge in the main server entrypoint, which triggers registration via @mcp.tool() decorators.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, )