VenuVidya — Carnatic Flute Study Guide
Kannada/English Carnatic flute KSGMS syllabus — search lessons, log practice, ask a RAG guru.
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
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": {
"venuvidya": {
"url": "https://venuvidya-backend-production.up.railway.app/api/mcp/"
}
}
}Puntos de conexión remotos
https://venuvidya-backend-production.up.railway.app/api/mcp/streamable-httpQué puede hacer
Inventario de herramientas
Herramientas (7)
🟢search_syllabus(query, k, level)
Keyword (BM25) search across all Carnatic flute lessons. Args: query: Natural-language question or keywords (English or Kannada). k: Number of top results to return (1-10, default 4). level: Optional filter — 'junior', 'senior' or 'vidwat'.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"title": "Query",
"type": "string"
},
"k": {
"default": 4,
"title": "K",
"type": "integer"
},
"level": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Level"
}
},
"required": [
"query"
],
"title": "search_syllabusArguments"
}🟢get_lesson(lesson_id)
Fetch the full study content of a single lesson. Args: lesson_id: Lesson identifier, e.g. 'junior-theory-1-4'.
Esquema de entrada
{
"type": "object",
"properties": {
"lesson_id": {
"title": "Lesson Id",
"type": "string"
}
},
"required": [
"lesson_id"
],
"title": "get_lessonArguments"
}🟢list_lessons(level, category)
List lesson metadata. Filter by level/category. Args: level: 'junior' | 'senior' | 'vidwat'. category: e.g. 'theory-1', 'practical-1', etc.
Esquema de entrada
{
"type": "object",
"properties": {
"level": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Level"
},
"category": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Category"
}
},
"title": "list_lessonsArguments"
}🟢list_classes(mcp_token, level, limit)
List recent class journal entries (date descending) for YOUR account. Args: mcp_token: Your personal VenuVidya token — GET /api/auth/mcp-token while signed in to the app. Scopes results to your journal only. level: optional level filter. limit: max number of classes (1-100, default 20).
Esquema de entrada
{
"type": "object",
"properties": {
"mcp_token": {
"title": "Mcp Token",
"type": "string"
},
"level": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Level"
},
"limit": {
"default": 20,
"title": "Limit",
"type": "integer"
}
},
"required": [
"mcp_token"
],
"title": "list_classesArguments"
}🟢get_class(class_id, mcp_token)
Fetch a single class journal entry with its items and practice log. Only returns it if it belongs to your account (mcp_token). Args: class_id: The class to fetch. mcp_token: Your personal VenuVidya token — GET /api/auth/mcp-token.
Esquema de entrada
{
"type": "object",
"properties": {
"class_id": {
"title": "Class Id",
"type": "string"
},
"mcp_token": {
"title": "Mcp Token",
"type": "string"
}
},
"required": [
"class_id",
"mcp_token"
],
"title": "get_classArguments"
}⚪ask_venuvidya(question, level, language)
Ask VenuVidya — the in-app RAG chatbot. Returns a grounded answer + citations. Args: question: Student question (2-1500 chars). level: Optional level filter for retrieval ('junior' | 'senior' | 'vidwat'). language: 'en', 'kn' or 'auto'.
Esquema de entrada
{
"type": "object",
"properties": {
"question": {
"title": "Question",
"type": "string"
},
"level": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Level"
},
"language": {
"default": "auto",
"title": "Language",
"type": "string"
}
},
"required": [
"question"
],
"title": "ask_venuvidyaArguments"
}🟢log_practice_session(class_id, item_id, practiced_on, mcp_token, duration_min, ...)
Log a practice session against a class item in YOUR journal. Args: class_id: Parent class id. item_id: Item id inside the class (kriti/varna/etc.). practiced_on: Date in YYYY-MM-DD. mcp_token: Your personal VenuVidya token — GET /api/auth/mcp-token. Only ever writes into a class this account owns. duration_min: Duration in minutes. notes: Free-text notes. rating: Self-rating 1-5.
Esquema de entrada
{
"type": "object",
"properties": {
"class_id": {
"title": "Class Id",
"type": "string"
},
"item_id": {
"title": "Item Id",
"type": "string"
},
"practiced_on": {
"title": "Practiced On",
"type": "string"
},
"mcp_token": {
"title": "Mcp Token",
"type": "string"
},
"duration_min": {
"default": 0,
"title": "Duration Min",
"type": "integer"
},
"notes": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Notes"
},
"rating": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Rating"
}
},
"required": [
"class_id",
"item_id",
"practiced_on",
"mcp_token"
],
"title": "log_practice_sessionArguments"
}Comunidad
Evidencia