tripitaka-mcp
Server Quality Checklist
Latest release: v1.3.1
- Disambiguation5/5
Each tool has a clearly distinct purpose: comparing translations, fetching suttas, searching with different modes, looking up definitions, listing editions, etc. Even the three search tools are differentiated by their descriptions (keyword, hybrid, semantic) and use cases.
Naming Consistency5/5All tool names follow a consistent verb_noun pattern in snake_case, such as 'get_sutta', 'search_by_keyword', 'list_editions'. No mixing of conventions.
Tool Count5/511 tools is appropriate for a comprehensive Tipiṭaka reference server. The count covers searching, content retrieval, dictionary, morphology, and structure without being overwhelming.
Completeness5/5The tool surface covers the main workflows: searching (multiple modes), fetching suttas with context options, dictionary lookup, morphological parsing, structure overview, edition listing, and citation. No obvious gaps for the stated domain.
Average 4.7/5 across 11 of 11 tools scored. Lowest: 4.1/5.
See the Tool Scores section below for per-tool breakdowns.
- 3 of 3 community issues answered or closed in the last 6 months
- 96 commits in the last 12 weeks
- Last stable release on
- No critical vulnerability alerts
- No high-severity vulnerability alerts
- No code scanning findings
- CI status not available
This repository is licensed under MIT License.
This repository includes a README.md file.
No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.
Tip: use the "Try in Browser" feature on the server page to seed initial usage.
This repository includes a glama.json configuration file.
If you are the author, simply .
If the server belongs to an organization, first add
glama.jsonto the root of your repository:{ "$schema": "https://glama.ai/mcp/schemas/server.json", "maintainers": [ "your-github-username" ] }Then . Browse examples.
Add related servers to improve discoverability.
How to sync the server with GitHub?
Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.
To manually sync the server, click the "Sync Server" button in the MCP server admin interface.
How is the quality score calculated?
The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).
Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.
Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).
Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.
Tool Scores
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly, idempotent, and non-destructive behavior. The description adds valuable behavioral details: it draws from multiple primary dictionaries, names a specific source, and explains that Thai entries are scholarly works always available regardless of language settings. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with a clear purpose statement followed by an informative section about dictionary sources. It uses bullet points and emojis effectively. While slightly longer than necessary, each sentence adds value and the key information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema (not shown but indicated), the description does not need to explain return values. The tool's purpose, source details, and usage hints are sufficiently covered. A minor gap is the lack of explicit guidance on when to use this tool versus the many sibling search tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has full coverage (100%) and includes clear descriptions for each parameter (word, language with enum, limit_context). The description does not add new parameter-level meaning beyond what the schema provides, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Look up') and resource ('dictionary meaning of a Pāli word') with additional context ('sutta context'). It clearly distinguishes itself from sibling tools by emphasizing its role as a Pāli Dictionary Bridge with primary source documentation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains the tool's function as a dictionary bridge and provides guidance on handling Thai entries (always available, need translation). However, it does not explicitly state when to use this tool versus alternatives like search_by_keyword or search_semantic, leaving some ambiguity for the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, destructiveHint, idempotentHint. The description adds that the tool returns metadata and citation only, no segments, providing additional context beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with a bullet list and emojis. Every sentence is purposeful, and the main purpose is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the single parameter, high schema coverage, and existence of an output schema, the description provides complete context for using this tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the parameter description in the schema is already clear with examples. The tool description does not add further parameter meaning, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Build a proper citation string for a sutta.' It specifies it returns metadata and citation only, no segments, distinguishing it from the sibling tool 'get_sutta'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description includes a 'Use this tool when:' section with explicit scenarios (academic work, canonical location, ready-to-use citation) and a comparison with 'get_sutta' that tells when to pair them.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly and non-destructive. Description adds valuable behavioral context: RRF fusion, ranking by similarity not canonical importance, English query performance, Thai stop-word limitations. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
Well-structured with clear sections, bold and emoji highlights. Every sentence adds value, no fluff. Front-loaded with main purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given tool complexity (hybrid search with RRF), the description covers behavior, usage tips, limitations, and output interpretation. Output schema exists but not shown; description still addresses result ranking and canonical importance. Very complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers all parameters with descriptions. Description adds practical advice: query should be English for best results, limit defaults too small for surveys. Adds meaning beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the tool's function: 'Hybrid search — combines keyword + semantic search via RRF.' It distinguishes from sibling tools like search_by_keyword and search_semantic by being the recommended tool for concept queries, with concrete examples.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
Clear guidance on when to use this tool (concept queries) and hints for handling underperforming queries (Thai→Pāli/English translation). Lacks explicit 'when not to use', but the context implies alternatives (e.g., search_by_keyword for exact matches).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint, so the description doesn't need to restate those. However, it adds valuable behavioral context: guarantees completeness for lexical mode, explicitly states that semantic mode is approximate and NOT exhaustive, explains that the lexical guarantee holds in both modes, and mentions pagination behavior. The only minor gap is not explicitly stating that it does not modify data, but annotations already cover that.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections, bullet points, and examples. It front-loads the core guarantee and usage guidance. However, it is somewhat verbose, particularly in the second paragraph about layers and promises. Some sentences could be trimmed without loss of clarity, but overall it is still effective and organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (9 parameters, output schema exists), the description is comprehensive. It covers core functionality, usage context, mode differences, guarantees, and limitations. The output schema is referenced indirectly but its existence means return value details are not needed. The sibling tools list confirms differentiation. The description leaves no major gaps for an agent to misuse the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes all 9 parameters with 100% coverage, so the description's role is additive. It adds useful context like the lexical guarantee holding in both modes, that the Tp language is not indexed yet, and that audits via matched_forms are possible. While it doesn't add extensive new info for each parameter, it provides enough extra guidance to justify above baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool exhaustively surveys the whole Tipiṭaka for a term with a guaranteed complete lexical search. It distinguishes itself from `search_by_keyword` by emphasizing coverage and counting rather than ranked results. The verb 'survey' combined with the resource 'corpus' and the term 'exhaustive' make the purpose very specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use this tool ('when the question is about coverage or counting') and when not to ('not search_by_keyword for best passages'). It provides concrete examples of appropriate questions and directly names the alternative tool (`search_by_keyword`) with a clear contrast in capabilities (ranked, capped, no total). This makes usage guidance excellent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior5/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare read-only and idempotent. Description adds rich behavioral details: legacy codes side-by-side with active codes, active flag, languages returned, and segment counts. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
Well-structured with emoji sections for usage, current state, known quirks, languages, and return format. Every sentence provides value, no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description fully explains the tool's output (hierarchical structure with pitakas, nikayas, codes, counts) and covers all necessary context given output schema exists.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters (baseline score 4). Description adds no parameter info, but schema coverage is 100% (no parameters to document).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it shows the structure of all three pitakas with coverage statistics. It distinguishes from sibling tools like search_by_keyword and get_sutta by focusing on structural overview and coverage.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit usage guidance provided: use when user asks for overview, to check coverage before searching, or when verifying scope for an artifact. Lacks explicit when-not-to-use statement but effectively implies alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior5/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and destructiveHint=false, and the description adds behavioral details: rule-based, not full morphological analyzer, doesn't split compounds or reverse sandhi, returns possible stems. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with sections, emojis, and bold text for readability. It is concise yet comprehensive, with every sentence providing value. No unnecessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity and the presence of an output schema, the description covers all necessary aspects: purpose, usage guidelines, limitations, and workflow. It is complete for an AI agent to understand when and how to use the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a clear description of the 'word' parameter. The description reinforces this with examples but does not add significant new semantic detail beyond the schema. Baseline score is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: strip Pāli inflectional suffixes to find the root form. It provides concrete examples like 'dukkhassa' and explains the workflow, distinguishing it from sibling tools such as get_word_definition.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use (when get_word_definition fails for inflected words, for splitting compounds, as preprocessing) and when not to (for complex compounds or sandhi). Recommends a specific workflow, making it clear how this tool fits with others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior5/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, destructiveHint, idempotentHint), description warns about current state: translation table mostly empty, only default Pāli+English loaded, `total_editions` usually 0, `text_pali` and `text_english` always populated, Thai editions coming later. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
Well-structured with emojis, bullet points for usage, sibling comparison, format, and current state. Every section earns its place; not overly verbose. Could be slightly shorter but highly informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, output schema exists), description covers purpose, usage, parameter format, and current limitations. No need for output format explanation since output schema is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema already documents `segment_id` as required string with description. Description adds valuable context: format with examples (mn1:171.4) and how to find segment_ids via `get_sutta` or search. This goes beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool compares all available translations for a single segment, using specific verb 'compare' and resource 'translations'. It distinguishes from sibling `get_sutta` by targeting segment-level vs sutta-level.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit 'Use this tool when' section lists specific scenarios: meaning/translation queries, checking interpretations, academic work. Also includes comparison to `get_sutta` and provides segment_id format with example.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior5/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond readOnlyHint, describes trigram matching, enabled language constraints, error behavior for disabled languages, and limitations for concept searches due to Pāli linguistic quirks.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
Well-structured with headings and emojis, but slightly verbose; the hints section could be more succinct while retaining value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Fully covers when and how to use, parameter details, sibling comparisons, and behavioral nuances, leaving no gaps for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All 5 parameters have schema descriptions (100% coverage), but the description adds practical context like translation hints, edition usage rules, and limit recommendations.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it performs keyword search across the Pāli Tipiṭaka using trigram word-similarity, and distinguishes itself from sibling tools like search_hybrid by specifying exact word matching.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit guidance on when to use this tool (term lookup, keyword survey) versus alternatives (concept search → search_hybrid), including translation hints and filtering options.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior5/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses limitations: Pāli-only index, language effectiveness, clustering of stock phrases, caution about not trusting rank 1. All consistent with readOnlyHint and idempotentHint annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
Well-structured with emojis and sections, front-loaded with purpose. Slightly long but each sentence carries useful info; no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers all aspects: purpose, usage guidelines, behavioral nuances, limitations, parameter tuning advice. Output schema exists, so return values are not needed. Fully complete for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but description adds significant value: explains query language effectiveness (English > Pāli > Thai), threshold tuning advice, and language parameter hint about Thai being disabled. Elevates beyond baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states 'Semantic search — match by meaning, not exact words.' Distinguishes from siblings by referencing search_hybrid and search_by_keyword explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly recommends search_hybrid for most cases, specifies when to use this tool (pure semantic, threshold tuning, debugging), and advises against using for specific Pāli terms (better with keyword search).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior5/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true. The description adds significant behavioral context beyond annotations: default behavior returns all segments, pagination warnings, coverage of pitakas, behavior of mode parameters, and status of Thai fields. There is no contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is lengthy but well-structured with clear sections (⚡, 📑, ✅), emojis, and bullet points. Every section serves a purpose, but some redundancy exists (e.g., repeated emphasis on not fetching full sutta). It earns a 4 for being organized and scannable despite its verbosity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (9 parameters, output schema exists), the description covers all essential aspects: mode selection, pagination, citing guidelines, coverage across pitakas, and parameter restrictions. It includes examples for each parameter and integrates well with sibling tools. The description leaves no gaps for an agent to misuse the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, giving a baseline of 3. However, the description adds substantial value by providing concrete examples for each parameter (sutta_id formats, language options, mode choices), explaining interactions (only one selector at a time), and detailing pagination behavior. This far exceeds the minimal schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool fetches a sutta's content or table of contents, specifying the verb 'Fetch' and resource 'sutta'. It distinguishes between full content and outline mode, and provides concrete usage examples that differentiate it from sibling tools like search_by_keyword. The purpose is immediately clear and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides extensive, explicit guidance on when to use each mode and parameter, including when to use outline vs full fetch, around for search context, segment_range for specific slices, and offset+limit for paging. It also warns against fetching entire long suttas and suggests alternatives. This is comprehensive and directly helps the agent decide the correct approach.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior5/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true. Description adds beyond that: filtering by TRIPITAKA_ENABLED_LANGUAGES and current DB limitations (Pali/English only, Thai not indexed). No contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
Well-structured with emoji, bullet points, and clear sections. Front-loaded main purpose, every sentence adds value. Appropriate length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters and presence of output schema, description covers filtering, current state, and return fields comprehensively. No gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters; schema coverage is 100% trivially. Description does not need to add parameter info. Baseline of 4 is appropriate as it provides clear context about what the tool returns.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states 'List the translation editions available, with coverage stats.' Identifies the resource (translation editions) and action (list). Distinguishes from siblings by mentioning usage before compare_translations or get_sutta.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly provides two use cases: before calling compare_translations or get_sutta, and when user asks which editions are loaded. Also notes filtering by server settings and current DB state, guiding appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
GitHub Badge
Glama performs regular codebase and documentation scans to:
- Confirm that the MCP server is working as expected.
- Confirm that there are no obvious security issues.
- Evaluate tool definition quality.
Our badge communicates server capabilities, safety, and installation instructions.
Card Badge
Copy to your README.md:
Score Badge
Copy to your README.md:
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/dhamma-seeker/tripitaka-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server