Piazza

Queries Piazza course data and posts via MCP for Claude Code, enabling direct terminal access to course information.
  • python

1

GitHub Stars

python

Language

4 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "clarsbyte-piazza-mcp": {
      "command": "/home/user/piazza-mcp/env/bin/python",
      "args": [
        "/home/user/piazza-mcp/main.py"
      ],
      "env": {
        "PIAZZA_EMAIL": "student@example.edu",
        "PIAZZA_COURSES": "{\"mjz1kp056nb6t3\":\"CSE 12\",\"mk06sxvpt521xv\":\"ECON 1\"}",
        "PIAZZA_PASSWORD": "yourpassword"
      }
    }
  }
}

This Piazza MCP Server enables Claude Code to securely access Piazza course information and posts directly from your terminal. By configuring the server, you can fetch course data and recent posts, empowering you to interact with Piazza without leaving your coding environment.

How to use

After you configure the Piazza MCP Server, start Claude Code in your project directory that contains the MCP configuration. You can then ask natural language questions to retrieve Piazza data, such as your configured courses, recent posts for a specific course, or new questions within a course.

How to install

Prerequisites you need to prepare before installing the Piazza MCP Server include a Python 3.10+ runtime, a Piazza account, and the Claude Code CLI.

Install steps you should follow exactly are:

python -m venv env

# Windows
env\Scripts\activate

# macOS/Linux
source env/bin/activate

pip install -r requirements.txt

Additional configuration and usage notes

Configure your Piazza MCP connection by providing an MCP configuration in your project directory. You will specify the Python executable, the path to the MCP script, and the necessary Piazza credentials and course mappings.

{
  "mcpServers": {
    "piazza": {
      "command": "/path/to/your/env/bin/python",
      "args": ["/path/to/piazza-mcp/main.py"],
      "env": {
        "PIAZZA_EMAIL": "your-email@example.com",
        "PIAZZA_PASSWORD": "your-piazza-password",
        "PIAZZA_COURSES": "{\"course_id_1\":\"Course Name 1\",\"course_id_2\":\"Course Name 2\"}"
      }
    }
  }
}

Environment variables and data you will use

You will provide environment variables that securely supply your Piazza credentials and course mappings. The following are used in the example configuration.

| Variable | Description |
|----------|-------------|
| `PIAZZA_EMAIL` | Your Piazza account email |
| `PIAZZA_PASSWORD` | Your Piazza account password |
| `PIAZZA_COURSES` | JSON object mapping course IDs to course names |

Available tools

list_courses

Returns the list of courses you have configured for Piazza access.

fetch_posts

Fetches recent posts from a specified Piazza course with optional post count.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational
Piazza MCP Server - clarsbyte/piazza-mcp | VeilStrat