Speakeroo speaking coach

AI speaking coach: feedback on speeches from text or audio, plus topics, pronunciation and rubrics.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
100%
Integridad del esquema
74%
Calidad de los nombres
94%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~4,542Tokens (definiciones de herramientas)
~6.8 KBTamaño de respuesta típico
Impacto significativo en la atención (3.55% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "speaking-coach": {
      "url": "https://mcp.speakeroo.app/mcp"
    }
  }
}

Puntos de conexión remotos

https://mcp.speakeroo.app/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (7)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢analyze_transcript(transcript, context, topic)

Coach a speech from its text. Returns weak and filler words with firmer alternatives, rhetorical devices, delivery and rhetoric feedback, grammar/vocabulary/coherence scores (1-10) on the Speakeroo rubric, and word-level issues with the excerpt and a fix. Input: 30-1500 words. Text cannot show pace, pauses, pitch or pronunciation; use analyze_speech with a recording for those. Free, 5 text analyses a day per network, shared with refine_transcript.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "transcript": {
      "type": "string",
      "maxLength": 20000,
      "description": "What was said, as plain text: 30-1500 words. Paste a speech transcript or a draft you plan to say out loud."
    },
    "context": {
      "description": "What the speech is for, so the feedback is calibrated to it. Defaults to general.",
      "type": "string",
      "enum": [
        "general",
        "impromptu",
        "presentation",
        "speech",
        "interview",
        "ielts",
        "conversation"
      ]
    },
    "topic": {
      "description": "The question or prompt being answered, e.g. an IELTS cue card or interview question",
      "type": "string",
      "maxLength": 500
    }
  },
  "required": [
    "transcript"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "callToAction": {
      "type": "object",
      "properties": {
        "text": {
          "type": "string"
        },
        "url": {
          "type": "string"
        }
      },
      "required": [
        "text",
        "url"
      ],
      "additionalProperties": false
    },
    "coaching": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "deliveryMoments": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "description": {
                    "type": "string"
                  },
                  "excerpt": {
                    "type": "string"
                  },
                  "label": {
                    "type": "string"
                  },
                  "sentiment": {
                    "type": "string",
                    "enum": [
                      "strength",
                      "improvement"
                    ]
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "emphasis",
                      "effective_pause",
                      "missed_pause",
                      "rush",
                      "slow_deliberate",
                      "flat_spot",
                      "vocal_contrast",
                      "energy_build",
                      "warmth",
                      "tension"
                    ]
                  }
                },
                "required": [
                  "description",
                  "excerpt",
                  "label",
                  "sentiment",
                  "type"
                ],
                "additionalProperties": false
              }
            },
            "feedback": {
              "type": "object",
              "properties": {
                "delivery": {
                  "type": "string"
                },
                "rhetoric": {
                  "type": "string"
                },
                "weakWords": {
                  "type": "string"
                }
              },
              "required": [
                "delivery",
                "rhetoric",
                "weakWords"
              ],
              "additionalProperties": false
            },
            "rhetoricalDevices": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "device": {
                    "type": "string",
                    "enum": [
                      "rhetorical_question",
                      "anaphora",
                      "epistrophe",
                      "epizeuxis",
                      "triad",
                      "antithesis",
                      "climax",
                      "metaphor",
                      "simile",
                      "hyperbole",
                      "personification",
                      "alliteration"
                    ]
                  },
                  "effect": {
                    "type": "string"
                  },
                  "excerpt": {
                    "type": "string"
                  }
                },
                "required": [
                  "device",
                  "effect",
                  "excerpt"
                ],
                "additionalProperties": false
              }
            },
            "weakWords": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "hedging",
                      "minimizer",
                      "permission_seeking",
                      "apologetic",
                      "excessive_qualifier"
                    ]
                  },
                  "count": {
                    "type": "number",
                    "description": "How many times it was said"
                  },
                  "suggestion": {
                    "type": "string",
                    "description": "A firmer way to say it; empty means drop the word"
                  },
                  "text": {
                    "type": "string"
                  }
                },
                "required": [
                  "category",
                  "count",
                  "suggestion",
                  "text"
                ],
                "additionalProperties": false
              }
            }
          },
          "required": [
            "deliveryMoments",
            "feedback",
            "rhetoricalDevices",
            "weakWords"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ],
      "description": "Weak and filler words, rhetorical devices and delivery/rhetoric feedback"
    },
    "context": {
      "type": "string"
    },
    "issues": {
      "anyOf": [
        {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "excerpt": {
                "type": "string"
              },
              "explanation": {
                "type": "string"
              },
              "fix": {
                "type": "string",
                "description": "The corrected wording; empty when the fix is to drop it"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "excerpt",
              "explanation",
              "fix",
              "type"
            ],
            "additionalProperties": false
          }
        },
        {
          "type": "null"
        }
      ],
      "description": "Word-level grammar, vocabulary and filler issues with the excerpt and a fix"
    },
    "language": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "areas": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "area": {
                    "type": "string",
                    "enum": [
                      "pacing",
                      "coherence",
                      "vocabulary",
                      "grammar",
                      "pronunciation",
                      "engagement",
                      "accuracy"
                    ]
                  },
                  "description": {
                    "type": "string"
                  },
                  "examples": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "analysis": {
                          "type": "string"
                        },
                        "quote": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "analysis",
                        "quote"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "recommendation": {
                    "type": "string"
                  },
                  "score": {
                    "type": "number",
                    "description": "1-10"
                  },
                  "strands": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "evidence": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        },
                        "score": {
                          "type": "number"
                        }
                      },
                      "required": [
                        "evidence",
                        "name",
                        "score"
                      ],
                      "additionalProperties": false
                    }
                  }
                },
                "required": [
                  "area",
                  "description",
                  "examples",
                  "recommendation",
                  "score",
                  "strands"
                ],
                "additionalProperties": false
              }
            },
            "summary": {
              "type": "object",
              "properties": {
                "improvements": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                },
                "strengths": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              },
              "required": [
                "improvements",
                "strengths"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "areas",
            "summary"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ],
      "description": "Grammar, vocabulary and coherence scores on the Speakeroo rubric"
    },
    "unavailable": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Parts that could not be produced this time; the rest of the result stands"
    },
    "wordCount": {
      "type": "number"
    }
  },
  "required": [
    "callToAction",
    "coaching",
    "issues",
    "language",
    "unavailable",
    "wordCount"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢refine_transcript(transcript, context, topic)

Rewrite a speech into a clear structure (PREP, STAR, problem-solution, rule of three and others) chosen to fit it. Returns the rewritten sections, the structure with a 1-10 score for how well the original already followed it, a summary of what changed and one delivery tip. Input: 30-1500 words. Shares the daily text allowance with analyze_transcript.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "transcript": {
      "type": "string",
      "maxLength": 20000,
      "description": "What was said, as plain text: 30-1500 words. Paste a speech transcript or a draft you plan to say out loud."
    },
    "context": {
      "description": "What the speech is for, so the feedback is calibrated to it. Defaults to general.",
      "type": "string",
      "enum": [
        "general",
        "impromptu",
        "presentation",
        "speech",
        "interview",
        "ielts",
        "conversation"
      ]
    },
    "topic": {
      "description": "The question or prompt being answered, e.g. an IELTS cue card or interview question",
      "type": "string",
      "maxLength": 500
    }
  },
  "required": [
    "transcript"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "callToAction": {
      "type": "object",
      "properties": {
        "text": {
          "type": "string"
        },
        "url": {
          "type": "string"
        }
      },
      "required": [
        "text",
        "url"
      ],
      "additionalProperties": false
    },
    "refinedVersion": {
      "type": "object",
      "properties": {
        "changesSummary": {
          "type": "string"
        },
        "coachingTip": {
          "type": "string"
        },
        "originalWordCount": {
          "type": "number"
        },
        "refinedWordCount": {
          "type": "number"
        },
        "sections": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "label": {
                "type": "string"
              },
              "text": {
                "type": "string"
              }
            },
            "required": [
              "label",
              "text"
            ],
            "additionalProperties": false
          }
        },
        "structure": {
          "type": "string",
          "enum": [
            "prep",
            "star",
            "problem_solution",
            "past_present_future",
            "story_arc",
            "rule_of_three",
            "compare_contrast",
            "cause_effect",
            "what_so_what_now_what",
            "local_to_global"
          ]
        },
        "structureName": {
          "type": "string"
        },
        "structureScore": {
          "type": "number",
          "description": "How well the original already followed it, 1-10"
        }
      },
      "required": [
        "changesSummary",
        "coachingTip",
        "originalWordCount",
        "refinedWordCount",
        "sections",
        "structure",
        "structureName",
        "structureScore"
      ],
      "additionalProperties": false
    },
    "wordCount": {
      "type": "number"
    }
  },
  "required": [
    "callToAction",
    "refinedVersion",
    "wordCount"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢analyze_speech(audioBase64, audioUrl, mimeType, context, topic)

Analyze a spoken recording: it is transcribed, then returns everything analyze_transcript does plus delivery metrics only audio can give: words per minute, pace, pauses per minute, filler rate, pitch (median and range) and vocal expression, and pacing, pronunciation and engagement scores. Limits: up to 120 seconds and 10 MB; mp3, m4a/mp4, wav, webm, ogg or flac; at least 30 spoken words. Pass audioUrl (public https) or audioBase64. Free: 1 analysis a day per network; a try that fails on our side does not count, up to 3 tries a day. Audio is deleted once the response is sent.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "audioBase64": {
      "description": "The recording as base64 (a data: URL prefix is fine). Use this or audioUrl.",
      "type": "string"
    },
    "audioUrl": {
      "description": "A public https link to the recording. Use this or audioBase64.",
      "type": "string"
    },
    "mimeType": {
      "description": "The audio type when it cannot be sniffed from the bytes, e.g. audio/mpeg",
      "type": "string"
    },
    "context": {
      "description": "What the speech is for, so the feedback is calibrated to it. Defaults to general.",
      "type": "string",
      "enum": [
        "general",
        "impromptu",
        "presentation",
        "speech",
        "interview",
        "ielts",
        "conversation"
      ]
    },
    "topic": {
      "description": "The question or prompt being answered, e.g. an IELTS cue card or interview question",
      "type": "string",
      "maxLength": 500
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "callToAction": {
      "type": "object",
      "properties": {
        "text": {
          "type": "string"
        },
        "url": {
          "type": "string"
        }
      },
      "required": [
        "text",
        "url"
      ],
      "additionalProperties": false
    },
    "coaching": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "deliveryMoments": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "description": {
                    "type": "string"
                  },
                  "excerpt": {
                    "type": "string"
                  },
                  "label": {
                    "type": "string"
                  },
                  "sentiment": {
                    "type": "string",
                    "enum": [
                      "strength",
                      "improvement"
                    ]
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "emphasis",
                      "effective_pause",
                      "missed_pause",
                      "rush",
                      "slow_deliberate",
                      "flat_spot",
                      "vocal_contrast",
                      "energy_build",
                      "warmth",
                      "tension"
                    ]
                  }
                },
                "required": [
                  "description",
                  "excerpt",
                  "label",
                  "sentiment",
                  "type"
                ],
                "additionalProperties": false
              }
            },
            "feedback": {
              "type": "object",
              "properties": {
                "delivery": {
                  "type": "string"
                },
                "rhetoric": {
                  "type": "string"
                },
                "weakWords": {
                  "type": "string"
                }
              },
              "required": [
                "delivery",
                "rhetoric",
                "weakWords"
              ],
              "additionalProperties": false
            },
            "rhetoricalDevices": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "device": {
                    "type": "string",
                    "enum": [
                      "rhetorical_question",
                      "anaphora",
                      "epistrophe",
                      "epizeuxis",
                      "triad",
                      "antithesis",
                      "climax",
                      "metaphor",
                      "simile",
                      "hyperbole",
                      "personification",
                      "alliteration"
                    ]
                  },
                  "effect": {
                    "type": "string"
                  },
                  "excerpt": {
                    "type": "string"
                  }
                },
                "required": [
                  "device",
                  "effect",
                  "excerpt"
                ],
                "additionalProperties": false
              }
            },
            "weakWords": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "category": {
                    "type": "string",
                    "enum": [
                      "hedging",
                      "minimizer",
                      "permission_seeking",
                      "apologetic",
                      "excessive_qualifier"
                    ]
                  },
                  "count": {
                    "type": "number",
                    "description": "How many times it was said"
                  },
                  "suggestion": {
                    "type": "string",
                    "description": "A firmer way to say it; empty means drop the word"
                  },
                  "text": {
                    "type": "string"
                  }
                },
                "required": [
                  "category",
                  "count",
                  "suggestion",
                  "text"
                ],
                "additionalProperties": false
              }
            }
          },
          "required": [
            "deliveryMoments",
            "feedback",
            "rhetoricalDevices",
            "weakWords"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ],
      "description": "Weak and filler words, rhetorical devices and delivery/rhetoric feedback"
    },
    "context": {
      "type": "string"
    },
    "issues": {
      "anyOf": [
        {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "excerpt": {
                "type": "string"
              },
              "explanation": {
                "type": "string"
              },
              "fix": {
                "type": "string",
                "description": "The corrected wording; empty when the fix is to drop it"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "excerpt",
              "explanation",
              "fix",
              "type"
            ],
            "additionalProperties": false
          }
        },
        {
          "type": "null"
        }
      ],
      "description": "Word-level grammar, vocabulary and filler issues with the excerpt and a fix"
    },
    "language": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "areas": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "area": {
                    "type": "string",
                    "enum": [
                      "pacing",
                      "coherence",
                      "vocabulary",
                      "grammar",
                      "pronunciation",
                      "engagement",
                      "accuracy"
                    ]
                  },
                  "description": {
                    "type": "string"
                  },
                  "examples": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "analysis": {
                          "type": "string"
                        },
                        "quote": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "analysis",
                        "quote"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "recommendation": {
                    "type": "string"
                  },
                  "score": {
                    "type": "number",
                    "description": "1-10"
                  },
                  "strands": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "evidence": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        },
                        "score": {
                          "type": "number"
                        }
                      },
                      "required": [
                        "evidence",
                        "name",
                        "score"
                      ],
                      "additionalProperties": false
                    }
                  }
                },
                "required": [
                  "area",
                  "description",
                  "examples",
                  "recommendation",
                  "score",
                  "strands"
                ],
                "additionalProperties": false
              }
            },
            "summary": {
              "type": "object",
              "properties": {
                "improvements": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                },
                "strengths": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              },
              "required": [
                "improvements",
                "strengths"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "areas",
            "summary"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ],
      "description": "Every rubric area including pacing, pronunciation and engagement, which need the audio"
    },
    "unavailable": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Parts that could not be produced this time; the rest of the result stands"
    },
    "wordCount": {
      "type": "number"
    },
    "delivery": {
      "type": "object",
      "properties": {
        "durationSeconds": {
          "type": "number"
        },
        "fillerWordsPerMinute": {
          "type": "number"
        },
        "pace": {
          "type": "string",
          "enum": [
            "slow",
            "steady",
            "fast",
            "very_fast"
          ]
        },
        "paceVariabilityWpm": {
          "type": "number",
          "description": "How far the pace swings around its average"
        },
        "pausesPerMinute": {
          "type": "number",
          "description": "Silences of a second or more"
        },
        "pitch": {
          "anyOf": [
            {
              "type": "object",
              "properties": {
                "medianHz": {
                  "type": "number"
                },
                "rangeSemitones": {
                  "type": "number",
                  "description": "Spread between the 10th and 90th percentile pitch"
                }
              },
              "required": [
                "medianHz",
                "rangeSemitones"
              ],
              "additionalProperties": false
            },
            {
              "type": "null"
            }
          ]
        },
        "vocabularyDiversity": {
          "type": "number",
          "description": "Distinct-word share, 0-100"
        },
        "vocalExpression": {
          "anyOf": [
            {
              "type": "object",
              "properties": {
                "level": {
                  "type": "string",
                  "enum": [
                    "monotone",
                    "flat",
                    "conversational",
                    "expressive",
                    "dynamic"
                  ]
                },
                "note": {
                  "type": "string"
                }
              },
              "required": [
                "level",
                "note"
              ],
              "additionalProperties": false
            },
            {
              "type": "null"
            }
          ]
        },
        "wordsPerMinute": {
          "type": "object",
          "properties": {
            "average": {
              "type": "number"
            },
            "median": {
              "type": "number"
            }
          },
          "required": [
            "average",
            "median"
          ],
          "additionalProperties": false
        }
      },
      "required": [
        "durationSeconds",
        "pace",
        "paceVariabilityWpm",
        "pausesPerMinute",
        "pitch",
        "vocabularyDiversity",
        "vocalExpression",
        "wordsPerMinute"
      ],
      "additionalProperties": false
    },
    "transcript": {
      "type": "string"
    }
  },
  "required": [
    "callToAction",
    "coaching",
    "issues",
    "language",
    "unavailable",
    "wordCount",
    "delivery",
    "transcript"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢get_speech_topics(category, count)

Random speech topics to practise with: impromptu, persuasive, informative, presentation, IELTS Speaking Part 1 questions or Part 2 cue cards. Each result links to the full list on speakeroo.app, where every topic opens a timed practice session.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "category": {
      "type": "string",
      "enum": [
        "impromptu",
        "persuasive",
        "informative",
        "presentation",
        "ielts_part_1",
        "ielts_part_2"
      ]
    },
    "count": {
      "description": "How many topics, default 10",
      "type": "integer",
      "minimum": 1,
      "maximum": 25
    }
  },
  "required": [
    "category"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "category": {
      "type": "string",
      "enum": [
        "impromptu",
        "persuasive",
        "informative",
        "presentation",
        "ielts_part_1",
        "ielts_part_2"
      ]
    },
    "link": {
      "type": "string",
      "description": "A page on speakeroo.app with the full list and practice"
    },
    "title": {
      "type": "string"
    },
    "topics": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "prompts": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "section": {
            "type": "string"
          },
          "topic": {
            "type": "string"
          }
        },
        "required": [
          "prompts",
          "section",
          "topic"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "category",
    "link",
    "title",
    "topics"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢how_to_pronounce(word)

How to pronounce an English word Speakeroo has a guide for: IPA, a plain respelling, syllables with the stressed one, sound tips, a note on the usual mistake and two example sentences. Links to the guide, where you can record yourself and get a pronunciation check.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "word": {
      "type": "string",
      "minLength": 1,
      "maxLength": 60
    }
  },
  "required": [
    "word"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "found": {
      "type": "boolean"
    },
    "ipa": {
      "type": "string"
    },
    "link": {
      "type": "string",
      "description": "A page on speakeroo.app with the full list and practice"
    },
    "note": {
      "type": "string"
    },
    "respelling": {
      "type": "string"
    },
    "sentences": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "similarWords": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "stressedSyllable": {
      "description": "1-based",
      "type": "number"
    },
    "syllables": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "tips": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "body": {
            "type": "string"
          },
          "heading": {
            "type": "string"
          }
        },
        "required": [
          "body",
          "heading"
        ],
        "additionalProperties": false
      }
    },
    "word": {
      "type": "string"
    }
  },
  "required": [
    "found",
    "link",
    "similarWords",
    "word"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢get_speaking_rubric

A four-level speaking rubric teachers use for speaking homework: fluency, pronunciation, vocabulary range and task completion, with a descriptor for every level. Links to the page with a CSV download. analyze_transcript and analyze_speech score on Speakeroo's own 1-10 rubric.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "criteria": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "levels": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "descriptor": {
                  "type": "string"
                },
                "level": {
                  "type": "number"
                }
              },
              "required": [
                "descriptor",
                "level"
              ],
              "additionalProperties": false
            }
          },
          "name": {
            "type": "string"
          }
        },
        "required": [
          "levels",
          "name"
        ],
        "additionalProperties": false
      }
    },
    "link": {
      "type": "string",
      "description": "A page on speakeroo.app with the full list and practice"
    },
    "name": {
      "type": "string"
    }
  },
  "required": [
    "criteria",
    "link",
    "name"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢list_filler_words

The common filler words in spoken English grouped by what they do, and the steps to stop using them. Links to the guide on speakeroo.app, which has a free filler word tracker.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "groups": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "role": {
            "type": "string"
          },
          "words": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "required": [
          "role",
          "words"
        ],
        "additionalProperties": false
      }
    },
    "howToStop": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "body": {
            "type": "string"
          },
          "step": {
            "type": "string"
          }
        },
        "required": [
          "body",
          "step"
        ],
        "additionalProperties": false
      }
    },
    "link": {
      "type": "string",
      "description": "A page on speakeroo.app with the full list and practice"
    }
  },
  "required": [
    "groups",
    "howToStop",
    "link"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada7 herramientas