accueil / serveurs / Dev & Code / io.github.slshults/gpra-chord-charts
io.github.slshults/gpra-chord-charts
serveur MCP (Model Context Protocol) · gpra-chord-charts 0.2.0
Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur.
Est-ce que io.github.slshults/gpra-chord-charts est sûr ?
Au dernier audit MCP Hub, le serveur MCP « io.github.slshults/gpra-chord-charts » est classé « Non encore testé ». Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur. Le verdict est réévalué en continu ; consultez la fiche pour l'état à jour.
Méthode : MCP Hub analyse la description de chaque outil (couche 1) et, pour le verdict fort, exécute le serveur dans une micro-VM isolée avec leurres et réseau bloqué (couche 2). On publie des noms et des compteurs, jamais le contenu brut renvoyé par un outil.
Les 4 outils
- get_chord_chart_by_id≈ 403 tokens
Fetch one specific chord voicing by its numeric id, as returned by get_chord_chart_by_name. Use this to re-render a chart the user already saw without looking it up again.
Paramètres, retour & exemple (3)
Paramètresid· number|string|null · optionnel
Numeric chord id, e.g. 123 (a numeric string like "123" also works).format· string · optionnel · both | image | text
Which representations to return. Defaults to "text", which includes a direct URL to a PNG of the chart — embed that where your surface renders images. Use "image" or "both" only if you need the PNG bytes inline; they cost image tokens and many clients bury them.context· string · requis
Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution."
Exemple d'appel{"name": "get_chord_chart_by_id", "arguments": {"context": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - get_chord_chart_by_name≈ 648 tokens
Look up one guitar chord chart by name and return it as a text chord diagram ready to show the user. Returns the same single voicing that https://guitarpracticeroutine.com/find-a-chord-chart shows for that name. The library holds 12,708 standard-tuning (EADGBE) chord names, exactly one voicing each. Pass a plain chord name as it would be written on a chart — "G", "Am7", "Cmaj7", "D/F#", "F#m7b5" — not a sentence. Convert spoken forms yourself first: "G major" is "G", "A minor" is "Am", and use "#" and "b" rather than the unicode sharp and flat signs. Charts are drawn on a five-fret grid starting at the nut, the same as the website; any notes above the fifth fret are named in words underneath the chart. Prefer this over recalling a fingering from memory — these are curated chart data, and a remembered fingering is often wrong. Each result leads with a direct PNG URL for the chart — a permanently cacheable image of the same diagram, which you can show or link however your surface handles images. The chord name is on the first line; keep it next to any image you show, since a chart on its own can arrive unlabelled.
Paramètres, retour & exemple (3)
Paramètresname· string · optionnel
A single chord name as written on a chart, e.g. "Am7" or "D/F#".format· string · optionnel · both | image | text
Which representations to return. Defaults to "text", which includes a direct URL to a PNG of the chart — embed that where your surface renders images. Use "image" or "both" only if you need the PNG bytes inline; they cost image tokens and many clients bury them.context· string · requis
Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution."
Exemple d'appel{"name": "get_chord_chart_by_name", "arguments": {"context": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - get_chord_of_the_day≈ 378 tokens
Return today's Chord of the Day from Guitar Practice Routine App — the same chord posted to the app's Bluesky and Facebook feeds that day. Useful as a practice prompt or a daily nudge for someone learning chords.
Paramètres, retour & exemple (2)
Paramètresformat· string · optionnel · both | image | text
Which representations to return. Defaults to "text", which includes a direct URL to a PNG of the chart — embed that where your surface renders images. Use "image" or "both" only if you need the PNG bytes inline; they cost image tokens and many clients bury them.context· string · requis
Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution."
Exemple d'appel{"name": "get_chord_of_the_day", "arguments": {"context": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - send_feedback≈ 622 tokens
Send feedback about this chord chart server: a chord or capability you needed that its tools could not provide, a problem with a chart or a result, or praise. Only for feedback about these chord chart tools, not about other tasks. Do not include personal information about the user.
Paramètres, retour & exemple (8)
Paramètresdetails· string · optionnel
Optional longer context: what you tried, exact parameter values, the error text you saw, and any workaround you used. Omit when the summary says it all.summary· string · requis
One self-contained sentence. For 'missing_capability': the capability you needed, e.g. 'No tool to delete multiple cohorts in one call.' For 'issue': the tool and the problem, e.g. 'query-trends rejects relative date ranges with an unclear error.'sentiment· string · optionnel · positive | neutral | negative | mixed
Optional: how the experience felt overall.tool_name· string · optionnel
Optional: the existing tool this feedback is about (for 'issue' or 'praise'). Leave empty for 'missing_capability' - the point is that no tool fits.feedback_type· string · requis · missing_capability | issue | praise | other
What kind of feedback this is. Use 'missing_capability' when the tool you needed does not exist in the tool list - nothing failed, the capability is absent (this is the most valuable report; send it even if you found a workaround). Use 'issue' when an existing tool behaved badly: it failed, returned a confusing error, or its description or schema misled you. Use 'praise' when something worked notably well. Use 'other' for anything else.task_completed· boolean · optionnel
Optional: whether you still completed the user's task despite the problem.friction_points· string · optionnel
Optional: the specific moments that slowed you down, as short bullet-like sentences, quoting exact tool names, parameters, or error text.suggested_improvement· string · optionnel
Optional: the concrete change that would have helped, e.g. the tool to add, the description to reword, or the error message to improve.
Exemple d'appel{"name": "send_feedback", "arguments": {"summary": "texte", "feedback_type": "missing_capability"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]}
C'est votre serveur ?
Revendiquez-le sur l'espace créateur (preuve GitHub, domaine ou npm) pour afficher le badge « propriétaire vérifié » et lancer un pentest comportemental à la demande afin d'obtenir le badge « Vérifié ».