CtrlK
BlogDocsLog inGet started
Tessl Logo

finkel/mcp-tool-naming

Guidelines for naming MCP tools, describing parameters, and documenting tools in a language- and framework-agnostic manner

97

1.02x
Quality

Pending

Does it follow best practices?

Impact

97%

1.02x

Average score across 5 eval scenarios

SecuritybySnyk

Pending

The risk profile of this skill

Overview
Eval results
Files

criteria.jsonevals/scenario-4/

{
  "context": "Tests whether the agent follows MCP tool documentation guidelines: avoiding implementation details, documenting behavior not implementation, consistent documentation structure, error format consistency, cross-platform considerations, using active voice, one-liner descriptions, and output contract clarity.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Avoid implementation details",
      "description": "Documentation avoids referencing specific programming languages, frameworks, or implementation details",
      "max_score": 13
    },
    {
      "name": "Document behavior, not implementation",
      "description": "Tool descriptions focus on what the tool does (functionality) not how it's implemented",
      "max_score": 13
    },
    {
      "name": "Consistent documentation structure",
      "description": "All tools follow the same documentation structure (same sections in same order)",
      "max_score": 13
    },
    {
      "name": "Error format consistency",
      "description": "Error documentation uses consistent format across all tools",
      "max_score": 13
    },
    {
      "name": "Cross-platform considerations",
      "description": "Documentation notes platform-specific behavior where relevant (e.g., path separators, file system differences)",
      "max_score": 10
    },
    {
      "name": "See also references",
      "description": "Tools include references to related tools for discoverability",
      "max_score": 12
    },
    {
      "name": "Tool dependencies",
      "description": "Documentation mentions tool dependencies or prerequisites where applicable",
      "max_score": 6
    },
    {
      "name": "Active voice",
      "description": "Tool descriptions use active voice and complete sentences (not fragments like \"Tool for X\" or \"Does Y\")",
      "max_score": 8
    },
    {
      "name": "One-liner descriptions",
      "description": "Tool descriptions start with concise action+object one-liner (e.g., \"Create refund for charge\") with no fluff",
      "max_score": 6
    },
    {
      "name": "Output contract clarity",
      "description": "Return values document JSON shape, stable keys, and nullable fields clearly",
      "max_score": 6
    }
  ]
}

tile.json