VenuVidya — Carnatic Flute Study Guide
Kannada/English Carnatic flute KSGMS syllabus — search lessons, log practice, ask a RAG guru.
Sollte ich dies verwenden
Qualität und Sicherheit
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"venuvidya": {
"url": "https://venuvidya-backend-production.up.railway.app/api/mcp/"
}
}
}Remote-Endpunkte
https://venuvidya-backend-production.up.railway.app/api/mcp/streamable-httpWas es kann
Tool-Inventar
Tools (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'.
Eingabe-Schema
{
"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'.
Eingabe-Schema
{
"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.
Eingabe-Schema
{
"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).
Eingabe-Schema
{
"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.
Eingabe-Schema
{
"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'.
Eingabe-Schema
{
"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.
Eingabe-Schema
{
"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"
}Community
Nachweis