{
  "title": "Rubric builder",
  "human_url": "https://happytails.ai/en/education-tools/rubric-builder/",
  "agent_url": "https://happytails.ai/agents/en/education-tools/rubric-builder/",
  "language": "en",
  "markdown_url": "https://happytails.ai/en/education-tools/rubric-builder.md",
  "content": "Rubric builder\nTurn your criteria, weights and level descriptors into a printable rubric and a weighted scoring sheet that shows exactly how every point is worked out. Enter a level per criterion to score a piece of work straight away.\nHow can we improve this tool?\nReport a problem or share an idea.\nPlease leave out private information. Your message and the tool name go to our team via PostHog.\nHow to use Rubric builder\nPaste a CSV with the header criterion,weight,level_1 up to level_N, where N is the number of levels.\nSet the number of levels and how many decimal places scores use.\nOptionally enter one level per criterion, such as 4,3,3,2, to score a piece of work.\nBuild the rubric, then download the printable rubric, the interactive scoring sheet, the CSV and the JSON report.\nUseful next steps\nPeer Review Worksheet\nGrade calculator\nFinal grade\nHow points are worked out\nLevel k of a criterion with weight w scores w x k / N points, where N is the number of levels, so the top level earns the full weight. This is a weighted analytic rubric as described by Brookhart, How to Create and Use Rubrics for Formative Assessment and Grading, ASCD, 2013, checked 2026-10-16. Points for each criterion are shown rounded, but the total and the percentage are rounded once from the exact sum, half away from zero, so the rounded criterion points may not add up exactly to the total.\nScoring\nEnter one level per criterion to get a scored rubric in the report and the table. The scoring sheet download works offline: choose a level for each criterion and it shows the points, total and percentage using the same exact rule.\nInput rules\nEach criterion name must be unique. Weights are positive numbers with at most two decimal places. Every level column needs a descriptor, and the number of level columns must match the number of levels you choose.",
  "content_format": "text/plain",
  "visibility": "public",
  "links": [
    {
      "name": "Peer Review Worksheet",
      "url": "https://happytails.ai/en/education-tools/peer-review-worksheet/"
    },
    {
      "name": "Grade calculator",
      "url": "https://happytails.ai/en/education-tools/grade-calculator/"
    },
    {
      "name": "Final grade",
      "url": "https://happytails.ai/en/education-tools/final-grade/"
    }
  ],
  "tool": {
    "id": "rubric-builder",
    "category": "education-tools",
    "built": true,
    "requirements": "1 to 20 criteria and 2 to 6 levels, descriptors up to 600 characters and at most 100,000 characters in total. Weights are positive with at most two decimal places, and scores use 0 to 2 decimal places. Everything is computed on your device and nothing is uploaded. Downloads: JSON report, CSV, a printable HTML rubric and an HTML scoring sheet.",
    "implementation": {
      "fields": [
        {
          "key": "levels",
          "label": "Number of levels",
          "value": 4,
          "type": "number",
          "min": 2,
          "max": 6,
          "step": 1
        },
        {
          "key": "decimals",
          "label": "Decimal places for scores",
          "value": 1,
          "type": "number",
          "min": 0,
          "max": 2,
          "step": 1
        },
        {
          "key": "scores",
          "label": "Score a piece of work: one level per criterion, such as 4,3,2 (optional)",
          "value": "",
          "type": "text"
        }
      ],
      "registrationFamily": "assessment-blueprint",
      "inputMaxLength": 100000,
      "inputErrorCode": "ASSESSMENT_BLUEPRINT_TOO_LONG_RUBRIC",
      "note": "Enter one criterion per row with a weight and a descriptor for each level. Scores are exact and computed on this device.",
      "experience": {
        "automatic": false,
        "single": false,
        "inputMaxLength": 100000,
        "inputMode": "text",
        "label": "Criteria, weights and descriptors (CSV)",
        "placeholder": "criterion,weight,level_1,level_2,level_3,level_4\nThesis,2,Missing,Vague,Clear,Insightful",
        "help": "Start with the header row, then one criterion per line with its weight and one descriptor per level. Up to 100,000 characters. Review the settings before running.",
        "action": null
      },
      "mode": "explicit",
      "interactive": false
    },
    "execution": "Browser interface",
    "api": null,
    "browser_agent": {
      "supported": true,
      "name": "run_current_tool",
      "discovery": "WebMCP on the human page in a supporting browser",
      "verification": "See audit/API-AUDIT.md; availability is not verification"
    }
  },
  "markdown": "# Rubric builder\n\n- Human page: https://happytails.ai/en/education-tools/rubric-builder/\n- Markdown: https://happytails.ai/en/education-tools/rubric-builder.md\n- Structured JSON: https://happytails.ai/agents/en/education-tools/rubric-builder/index.json\n- Visibility: public\n\n## Tool capabilities\n\n| Property | Value |\n| --- | --- |\n| Tool ID | `rubric-builder` |\n| Category | education-tools |\n| Implementation | Registered implementation. Registration alone is not a production-quality guarantee. |\n| Browser execution | Use the visible action or interactive controls. |\n| Browser processing | Browser; see tool notes for network behavior. |\n| HTTP API | Not callable through HTTP. |\n| Browser-agent interface | run_current_tool |\n\n### Implementation notes\n\nEnter one criterion per row with a weight and a descriptor for each level. Scores are exact and computed on this device.\n\n### Inputs and settings\n\nText input: Criteria, weights and descriptors (CSV).\n\nExample or placeholder shown in the interface (not a validated fixture):\n\n```text\ncriterion,weight,level_1,level_2,level_3,level_4\nThesis,2,Missing,Vague,Clear,Insightful\n```\n\nStart with the header row, then one criterion per line with its weight and one descriptor per level. Up to 100,000 characters. Review the settings before running.\n\n| Setting | Meaning | Control type | Default | Constraints |\n| --- | --- | --- | --- | --- |\n| `levels` | Number of levels | number | 4 | min=2 max=6 step=1 |\n| `decimals` | Decimal places for scores | number | 1 | min=0 max=2 step=1 |\n| `scores` | Score a piece of work: one level per criterion, such as 4,3,2 (optional) | text | \"\" |  |\n\n### Browser-agent workflow\n\n1. Open the human page in a browser that supports WebMCP.\n2. Discover the interface exposed by that page; use its actual schema.\n3. Select files on the page first when the tool requires files.\n4. Call `run_current_tool` with valid input and settings.\n5. Inspect the returned result or error and the displayed output. Retrieve files from the displayed download links.\n\nCalls do not automatically copy or download results. Browser permissions still apply. Interface availability alone is not proof of successful execution.\n\n### Planning specification\n\n1 to 20 criteria and 2 to 6 levels, descriptors up to 600 characters and at most 100,000 characters in total. Weights are positive with at most two decimal places, and scores use 0 to 2 decimal places. Everything is computed on your device and nothing is uploaded. Downloads: JSON report, CSV, a printable HTML rubric and an HTML scoring sheet.\n\nThis describes intended requirements. Use the implementation notes, interface schema and observed output to determine current support.\n\n### Complete machine-readable capability record\n\n```json\n{\n  \"id\": \"rubric-builder\",\n  \"category\": \"education-tools\",\n  \"built\": true,\n  \"requirements\": \"1 to 20 criteria and 2 to 6 levels, descriptors up to 600 characters and at most 100,000 characters in total. Weights are positive with at most two decimal places, and scores use 0 to 2 decimal places. Everything is computed on your device and nothing is uploaded. Downloads: JSON report, CSV, a printable HTML rubric and an HTML scoring sheet.\",\n  \"implementation\": {\n    \"fields\": [\n      {\n        \"key\": \"levels\",\n        \"label\": \"Number of levels\",\n        \"value\": 4,\n        \"type\": \"number\",\n        \"min\": 2,\n        \"max\": 6,\n        \"step\": 1\n      },\n      {\n        \"key\": \"decimals\",\n        \"label\": \"Decimal places for scores\",\n        \"value\": 1,\n        \"type\": \"number\",\n        \"min\": 0,\n        \"max\": 2,\n        \"step\": 1\n      },\n      {\n        \"key\": \"scores\",\n        \"label\": \"Score a piece of work: one level per criterion, such as 4,3,2 (optional)\",\n        \"value\": \"\",\n        \"type\": \"text\"\n      }\n    ],\n    \"registrationFamily\": \"assessment-blueprint\",\n    \"inputMaxLength\": 100000,\n    \"inputErrorCode\": \"ASSESSMENT_BLUEPRINT_TOO_LONG_RUBRIC\",\n    \"note\": \"Enter one criterion per row with a weight and a descriptor for each level. Scores are exact and computed on this device.\",\n    \"experience\": {\n      \"automatic\": false,\n      \"single\": false,\n      \"inputMaxLength\": 100000,\n      \"inputMode\": \"text\",\n      \"label\": \"Criteria, weights and descriptors (CSV)\",\n      \"placeholder\": \"criterion,weight,level_1,level_2,level_3,level_4\\nThesis,2,Missing,Vague,Clear,Insightful\",\n      \"help\": \"Start with the header row, then one criterion per line with its weight and one descriptor per level. Up to 100,000 characters. Review the settings before running.\",\n      \"action\": null\n    },\n    \"mode\": \"explicit\",\n    \"interactive\": false\n  },\n  \"execution\": \"Browser interface\",\n  \"api\": null,\n  \"browser_agent\": {\n    \"supported\": true,\n    \"name\": \"run_current_tool\",\n    \"discovery\": \"WebMCP on the human page in a supporting browser\",\n    \"verification\": \"See audit/API-AUDIT.md; availability is not verification\"\n  }\n}\n```\n\n## Page guide\n\nTurn your criteria, weights and level descriptors into a printable rubric and a weighted scoring sheet that shows exactly how every point is worked out. Enter a level per criterion to score a piece of work straight away.\n\nHow can we improve this tool?\n\nReport a problem or share an idea.\n\nPlease leave out private information. Your message and the tool name go to our team via PostHog.\n\n### How to use Rubric builder\n\n1. Paste a CSV with the header criterion,weight,level\\_1 up to level\\_N, where N is the number of levels.\n2. Set the number of levels and how many decimal places scores use.\n3. Optionally enter one level per criterion, such as 4,3,3,2, to score a piece of work.\n4. Build the rubric, then download the printable rubric, the interactive scoring sheet, the CSV and the JSON report.\n\n## Useful next steps\n\n- [Peer Review Worksheet](https://happytails.ai/en/education-tools/peer-review-worksheet/) ([Markdown](https://happytails.ai/en/education-tools/peer-review-worksheet.md))\n\n- [Grade calculator](https://happytails.ai/en/education-tools/grade-calculator/) ([Markdown](https://happytails.ai/en/education-tools/grade-calculator.md))\n\n- [Final grade](https://happytails.ai/en/education-tools/final-grade/) ([Markdown](https://happytails.ai/en/education-tools/final-grade.md))\n\n## How points are worked out\n\nLevel k of a criterion with weight w scores w x k / N points, where N is the number of levels, so the top level earns the full weight. This is a weighted analytic rubric as described by Brookhart, How to Create and Use Rubrics for Formative Assessment and Grading, ASCD, 2013, checked 2026-10-16. Points for each criterion are shown rounded, but the total and the percentage are rounded once from the exact sum, half away from zero, so the rounded criterion points may not add up exactly to the total.\n\n### Scoring\n\nEnter one level per criterion to get a scored rubric in the report and the table. The scoring sheet download works offline: choose a level for each criterion and it shows the points, total and percentage using the same exact rule.\n\n### Input rules\n\nEach criterion name must be unique. Weights are positive numbers with at most two decimal places. Every level column needs a descriptor, and the number of level columns must match the number of levels you choose.\n"
}