gpra-chord-charts-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| HOST | No | Host to bind for the HTTP transport. Defaults to 127.0.0.1. | 127.0.0.1 |
| PORT | No | Port for the HTTP transport. Defaults to 2112. | 2112 |
| POSTHOG_API_KEY | No | Optional PostHog API key to enable anonymous usage analytics. If not set, analytics are disabled. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_chord_chart_by_nameA | 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. |
| get_chord_chart_by_idA | 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. |
| get_chord_of_the_dayA | 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. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 3 tools
Each tool has a distinct retrieval route: by numeric ID, by chord name, and by daily feature. The by_id tool explicitly states its ID comes from get_chord_chart_by_name, so an agent will not confuse it with a direct name lookup.
All tools use snake_case with a get_ prefix and follow a get_<object>_<qualifier> shape. The first two share the exact get_chord_chart_by_ pattern, while get_chord_of_the_day is a slight structural variation but remains predictable.
Three tools is well-scoped for a focused, read-only chord chart server. Each tool serves a clear purpose without redundancy, so the count is neither too thin nor bloated.
The core workflows are covered: lookup by name, re-fetch by ID, and the daily chord. Minor gaps exist such as no search/browse tool for the 12,708 chord names, but they are not fatal to the server's stated purpose.