Skip to main content
Glama

list_assignments

View papers assigned to you for a specific conference venue based on your reviewer or area chair role.

Instructions

List papers assigned to you for a given venue.

Args: venue_id: The venue identifier (e.g., 'ICLR.cc/2025/Conference'). Use list_venues to find this. role: Your role — 'reviewer', 'area_chair', or 'senior_area_chair'. Default: 'reviewer'.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
venue_idYes
roleNoreviewer

Implementation Reference

  • The list_assignments tool implementation, decorated with @mcp.tool(), which fetches assignments using OpenReview edges and formats them for the user.
    @mcp.tool()
    async def list_assignments(venue_id: str, role: str = "reviewer") -> str:
        """List papers assigned to you for a given venue.
    
        Args:
            venue_id: The venue identifier (e.g., 'ICLR.cc/2025/Conference'). Use list_venues to find this.
            role: Your role — 'reviewer', 'area_chair', or 'senior_area_chair'. Default: 'reviewer'.
        """
        client = get_client()
        profile_id = client.profile.id
    
        group_name = ROLE_MAP.get(role)
        if not group_name:
            return f"Unknown role '{role}'. Use 'reviewer', 'area_chair', or 'senior_area_chair'."
    
        edges = client.get_all_edges(
            invitation=f"{venue_id}/{group_name}/-/Assignment",
            tail=profile_id,
        )
    
        if not edges:
            return f"No papers assigned to you as {role} for {venue_id}."
    
        lines = [f"You have **{len(edges)}** paper(s) assigned as **{role}** for **{venue_id}**:\n"]
    
        for edge in edges:
            note = client.get_note(edge.head)
            title = note.content.get("title", {}).get("value", "Untitled")
            abstract = note.content.get("abstract", {}).get("value", "")
            if len(abstract) > 200:
                abstract = abstract[:200] + "..."
            date_str = ""
            if note.cdate:
                dt = datetime.fromtimestamp(note.cdate / 1000, tz=timezone.utc)
                date_str = f" (submitted {dt.strftime('%Y-%m-%d')})"
    
            lines.append(f"### #{note.number}: {title}")
            lines.append(f"- **ID:** {note.id}{date_str}")
            if abstract:
                lines.append(f"- **Abstract:** {abstract}")
            lines.append("")
    
        return "\n".join(lines)

Latest Blog Posts

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/michaelqshieh/openreview-mcp'

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