Skip to main content
Glama

agentvet-mcp

MCP server for @mukundakatta/agentvet. Lets Claude Desktop, Cursor, Cline, Windsurf, Zed, or any other MCP client validate LLM-generated tool-call args before execution and produce LLM-friendly retry messages when something's wrong.

npx -y @mukundakatta/agentvet-mcp

Three tools:

  • validate_tool_args — check args against a small shape spec; returns { valid, error?, retry_hint? } where retry_hint is a ready-to-send LLM feedback message.

  • lint_tool_definition — sanity-check a tool definition for common mistakes that hurt LLM tool-use accuracy.

  • generate_retry_message — given a validation error, build the canonical LLM-facing retry message using agentvet's ToolArgError.toLLMFeedback() formatting.

Add to your client

Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "agentvet": {
      "command": "npx",
      "args": ["-y", "@mukundakatta/agentvet-mcp"]
    }
  }
}

Same shape for Cursor (~/.cursor/mcp.json), Cline, Windsurf, Zed.

Related MCP server: Echo MCP

Tool examples

validate_tool_args:

{
  "tool_name": "send_email",
  "args": { "to": "a@b.com" },
  "shape": { "to": "string", "subject": "string", "body": "string" }
}

Returns:

{
  "valid": false,
  "error": "missing required field: subject",
  "retry_hint": "send_email rejected your args: missing required field: subject. Please call again with the corrected arguments."
}

lint_tool_definition:

{
  "tool": {
    "name": "BadName",
    "inputSchema": { "type": "object", "properties": { "x": { "type": "string" } } }
  }
}

Returns warnings about non-snake_case name, missing description, missing field descriptions, and no required fields.

generate_retry_message:

{
  "tool_name": "send_email",
  "validation_error": "missing required field: subject",
  "attempted_args": { "to": "a@b.com" }
}

Returns the canonical retry feedback string the runtime callers see — so you can prepare retry text outside the live agent loop.

Why a separate MCP server

@mukundakatta/agentvet is a zero-dependency JavaScript library. This MCP server makes its validation primitives accessible from any MCP-aware AI assistant. Useful for quickly auditing a registry of tools, or asking the assistant "is this args object valid for my send_email tool?" without leaving the chat.

For runtime arg validation in your agent loop, use @mukundakatta/agentvet directly inside your Node process (it wraps your tool fn and throws ToolArgError synchronously).

Sibling MCP servers

Part of the agent-stack series:

License

MIT

Available Tools

3 tools
generate_retry_messageA

Given a tool name, validation error, and attempted args, build the canonical LLM-facing retry feedback message. Uses agentvet's ToolArgError.toLLMFeedback() formatting so the wording matches what runtime callers see.

Inputs: tool_name (required), validation_error (required), attempted_args (required).

lint_tool_definitionA

Sanity-check a tool definition for common mistakes that hurt LLM tool-use accuracy: missing description, vague description, no required fields, schema fields without descriptions, non-snake_case names.

Inputs: tool (required).

validate_tool_argsA

Validate a tool-call args object against a small shape spec. Returns { valid, error?, retry_hint? } where retry_hint is a ready-to-send LLM feedback message describing exactly what was wrong.

Inputs: tool_name (required), args (required), shape (required).

Tool Schema Changelog

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

Loading tool schema changelog…

    TDQS

    A4.2/5.0

    Scored across 3 tools

    Disambiguation5/5

    Each tool targets a distinct operation: generating retry messages, linting tool definitions, and validating tool args. There is no overlap in purpose.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun snake_case pattern (generate_retry_message, lint_tool_definition, validate_tool_args), making them predictable.

    Tool Count5/5

    With 3 tools, the server is well-scoped for its purpose of agent vetting and validation. Each tool earns its place without being too sparse or bloated.

    Completeness4/5

    The set covers core validation, linting, and feedback generation. A minor gap is the absence of a tool to suggest fixes or re-lint after changes, but the core workflow is complete.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      D
      maintenance
      A MCP server that exposes OpenAPI schema information to LLMs like Claude. This server allows an LLM to explore and understand large OpenAPI schemas through a set of specialized tools, without needing to load the whole schema into the context
      308 npm
      50
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      A lightweight server that enables AI agents to emit and validate structured messages through MCP tool call returns. It facilitates reliable programmatic consumption of agent outputs by echoing validated payloads against predefined schemas.
      8
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      An MCP server that wraps Spectral to lint OpenAPI specifications, enabling LLMs to validate and fix API definitions.
      1
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      MCP server that routes natural language requests to structured tool calls using a LoRA-tuned small language model, with built-in validation, retry, and fallback recovery.
      MIT