Skip to main content
Glama

get_review_status

Check review completion status for assigned papers in OpenReview conferences. Specify venue ID and role to monitor reviewer progress.

Instructions

Check review completion status for all your assigned papers.

Args: venue_id: The venue identifier. role: Your role — 'reviewer', 'area_chair', or 'senior_area_chair'. Default: 'area_chair'.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
venue_idYes
roleNoarea_chair

Implementation Reference

  • The get_review_status function retrieves and formats the review status for papers assigned to the user within a specific venue.
    async def get_review_status(venue_id: str, role: str = "area_chair") -> str:
        """Check review completion status for all your assigned papers.
    
        Args:
            venue_id: The venue identifier.
            role: Your role — 'reviewer', 'area_chair', or 'senior_area_chair'. Default: 'area_chair'.
        """
        client = get_client()
        profile_id = client.profile.id
        group_name = ROLE_MAP.get(role)
        if not group_name:
            return f"Unknown role '{role}'."
    
        my_edges = client.get_all_edges(
            invitation=f"{venue_id}/{group_name}/-/Assignment",
            tail=profile_id,
        )
        if not my_edges:
            return f"No papers assigned to you as {role} for {venue_id}."
    
        lines = [f"## Review Status for {venue_id} (as {role})\n"]
        total_complete = 0
        total_papers = len(my_edges)
    
        for edge in my_edges:
            note = client.get_note(edge.head)
            title = note.content.get("title", {}).get("value", "Untitled")
            paper_number = note.number
            reviewer_edges = client.get_all_edges(
                invitation=f"{venue_id}/Reviewers/-/Assignment",
                head=edge.head,
            )
            expected = len(reviewer_edges)
            reviews = client.get_all_notes(
                invitation=f"{venue_id}/Submission{paper_number}/-/Official_Review"
            )
            submitted = len(reviews)
            status = "COMPLETE" if submitted >= expected else "INCOMPLETE"
            if submitted >= expected:
                total_complete += 1
            lines.append(f"- **#{paper_number}: {title}** — {submitted}/{expected} reviews [{status}]")
    
        lines.insert(1, f"**Overall:** {total_complete}/{total_papers} papers have all reviews in.\n")
        return "\n".join(lines)
  • Registration of the get_review_status tool using the @mcp.tool decorator.
    @mcp.tool()
    async def get_review_status(venue_id: str, role: str = "area_chair") -> str:

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