fde-week3-agent
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ANTHROPIC_API_KEY | Yes | Your Anthropic API key for Claude |
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": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_tablesA | List all tables in the connected Chinook database. Call this FIRST when you don't yet know what data is available. Returns a JSON object with a 'tables' key holding a list of table names. Each name can then be passed to describe_table to learn the columns. Cheap to call; use it freely rather than guessing table names. |
| describe_tableA | Return the column schema for a table. Call this before writing any SQL that references a table you haven't described yet. You can call it in parallel for multiple tables in one turn. Returns an error if the table name doesn't exist — use list_tables to see valid names. Args: name: The exact table name, case-sensitive, as returned by list_tables. |
| query_sqlA | Execute a single SELECT statement against the database and return results. This tool is READ-ONLY: INSERT, UPDATE, DELETE, DROP, and any other non-SELECT statement will be rejected. Multiple statements chained with semicolons will also be rejected — send one SELECT at a time. Returns an object with: columns (list of column names), row_count, rows (list of row objects), and truncated (true if there were more than 100 rows, in which case only the first 100 are returned). If you don't know the schema, call list_tables and describe_table FIRST. Never invent column or table names — verify them by describing the tables involved. Args: sql: A single, valid SQLite SELECT statement. Use standard SQL. You may include JOIN, WHERE, GROUP BY, ORDER BY, LIMIT, and aggregate functions. Do not include a trailing semicolon. |
| summarize_resultsA | Produce a natural-language summary of query results. Use this ONLY when the rows need narrative interpretation (multiple rows, aggregate patterns, comparisons across groups). For single-row lookups or trivially small results, answer directly in your response text without calling this tool. Args: rows: The 'rows' list returned from query_sql. question: The user's original question, verbatim. |
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 4 tools
Each tool has a distinct, non-overlapping purpose: listing tables, describing schema, executing SQL queries, and summarizing results. No two tools could be confused for the same task.
All tools follow a consistent verb_noun pattern in snake_case (list_tables, describe_table, query_sql, summarize_results), making the set predictable and easy to use.
4 tools perfectly cover the essential workflow for a read-only database agent: discover tables, inspect schema, run queries, and summarize results. Each tool earns its place with no unnecessary additions.
The set covers the core workflow well, but lacks a tool for quickly previewing sample data or obtaining table statistics, which would require writing a query manually. Minor gap, but functional.