Skip to main content
Glama
toad-mcp-server

toad-mcp-server

by vola-trebla

toad-mcp-server

TypeScript Node.js MCP Zod ESLint Prettier CI License

šŸ”Œ MCP server exposing portfolio AI tools via Model Context Protocol. Connect to Claude Desktop and call Semantic Search, Eval Framework, and Prompt Management tools directly from chat.

šŸ—ļø Architecture

ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”    stdio / HTTP     ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”
│   Claude Desktop    │◄────────────────-──►│    toad-mcp-server       │
│   (MCP Client)      │                     │                          │
ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜                     │  ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”  │
                                            │  │ toad_search_docs   │──┼──► Semantic Search API
                                            │  ā”œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”¤  │
                                            │  │ toad_run_eval      │──┼──► Eval Framework API
                                            │  ā”œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”¤  │
                                            │  │ toad_system_status │──┼──► Health checks
                                            │  ā”œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€-────┤  │
                                            │  │ toad_list_prompts  │  │
                                            │  ā”œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”¤  │
                                            │  │ toad_get_prompt    │  │
                                            │  ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜  │
                                            ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜

Related MCP server: claude-rag-mcp

šŸ› ļø Tools

Tool

Description

Read-only

toad_search_documents

Semantic search over documents via natural language query

Yes

toad_run_eval

Run eval suite against a prompt variant, returns scores

No

toad_system_status

Health check all portfolio services (latency, status)

Yes

toad_list_prompts

List prompts with pagination and tag filtering

Yes

toad_get_prompt

Get prompt by name with version, template, score history

Yes

All tools support response_format: "markdown" | "json" where applicable.

šŸ“¦ Resources

URI

Description

toad://system/status

Health status of all services (JSON)

toad://prompts/{name}

Get prompt by name with full metadata (JSON)

šŸš€ Quick Start

# Install
npm install

# Build
npm run build

# Run (stdio — for Claude Desktop)
npm start

# Run (HTTP — for remote/multi-client access)
TRANSPORT=http npm start

# Dev mode
npm run dev

šŸ–„ļø Claude Desktop Setup

  1. Build the server:

    npm run build
  2. Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

    {
      "mcpServers": {
        "toad-mcp-server": {
          "command": "node",
          "args": ["dist/index.js"],
          "cwd": "/absolute/path/to/toad-mcp-server",
          "env": {
            "SEMANTIC_SEARCH_URL": "http://localhost:3001",
            "EVAL_FRAMEWORK_URL": "http://localhost:3002"
          }
        }
      }
    }
  3. Restart Claude Desktop — tools appear automatically.

šŸ” Testing with MCP Inspector

npx @modelcontextprotocol/inspector node dist/index.js

Opens a web UI to test each tool interactively.

āš™ļø Environment Variables

Variable

Default

Description

SEMANTIC_SEARCH_URL

http://localhost:3001

Semantic Search Engine endpoint

EVAL_FRAMEWORK_URL

http://localhost:3002

Eval Framework endpoint

TRANSPORT

stdio

Transport mode: stdio or http

PORT

3100

HTTP transport port

HOST

127.0.0.1

HTTP transport bind address

šŸ“œ Scripts

Script

Description

npm run build

Compile TypeScript to dist/

npm run dev

Run with tsx (hot reload)

npm start

Run compiled server

npm run lint

ESLint check

npm run format

Prettier format

🧱 Tech Stack

  • TypeScript (NodeNext, strict)

  • @modelcontextprotocol/sdk — MCP server SDK

  • Zod v4 — input validation

  • ESLint + Prettier + Husky — code quality

  • GitHub Actions — CI (lint → format → build)

šŸ“„ License

ISC

Available Tools

5 tools
toad_get_promptA
Read-onlyIdempotent

Get a specific prompt by name with full metadata including version, score history, and template content.

Inputs: name (required), response_format.

toad_list_promptsA
Read-onlyIdempotent

List available prompts from the Prompt Registry. Supports pagination and optional filtering by tag.

Inputs: tag, limit, offset, response_format.

toad_run_evalA
Idempotent

Run an evaluation suite from the Eval Framework. Executes test cases against a prompt variant and returns scores and pass/fail results.

Inputs: suite (required), variant.

toad_search_documentsA
Read-onlyIdempotent

Search documents using semantic similarity. Connects to the Semantic Search Engine to find relevant documents based on a natural language query.

Inputs: query (required), limit.

toad_system_statusA
Read-onlyIdempotent

Check health of all portfolio services: Semantic Search API and Eval Framework. Returns status, latency, and error details for each component.

Inputs: no named parameters.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.1/5.0

    Scored across 5 tools

    Disambiguation5/5

    Each tool targets a distinct capability: semantic search, eval execution, system health, prompt listing, and prompt detail retrieval. The relationship between list_prompts and get_prompt is complementary rather than ambiguous.

    Naming Consistency5/5

    All tools follow the same `toad_` prefix with a clear verb_noun pattern: search_documents, run_eval, system_status, list_prompts, get_prompt. This makes the toolset highly predictable.

    Tool Count5/5

    Five tools is well-scoped for a specialized server covering search, evaluation, system health, and prompt registry access. Each tool earns its place without redundant or unnecessary entries.

    Completeness3/5

    The server supports read/search/run workflows, but lacks prompt registry write operations (create/update/delete) and any way to list available eval suites. Agents may encounter dead ends when trying to discover eval inputs or manage prompt lifecycle.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      D
      maintenance
      AI-powered MCP server that enables Claude and other LLMs to interact directly with construction documents, drawings, and specifications through advanced RAG and hybrid search capabilities.
      8
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      MCP server providing RAG context and failure capture for Claude Code, enabling semantic search across project knowledge and storing/analyzing failures.
      1
      MIT
    • A
      license
      A
      quality
      B
      maintenance
      An MCP server that exposes an AI project portfolio as queryable tools, allowing users to ask about projects, search by technology, or get details via natural language.
      5
      57 PyPI
      1
      MIT