JondaX MCP Server
OfficialServer Quality Checklist
Latest release: v1.0.1
- Disambiguation4/5
The two upload tools are distinguished by document type (pathology/blood test vs medical device), and the two retrieval tools are clearly separated by status vs results. There is minor potential confusion because both upload tools trigger the same OCR/extraction pipeline, but descriptions are clear enough.
Naming Consistency5/5All tool names follow a consistent verb_noun pattern: upload_* for ingestion and get_* for retrieval. The naming is predictable and easy to navigate.
Tool Count5/5Four tools is well-scoped for the server's purpose: upload two categories of medical documents, check status, and retrieve results. Each tool earns its place with no unnecessary redundancy.
Completeness4/5The core workflow of upload → status → results is fully covered. Minor gaps exist around error details or listing past uploads, but agents can successfully complete the primary extraction workflow without dead ends.
Average 4/5 across 4 of 4 tools scored.
See the Tool Scores section below for per-tool breakdowns.
- No community issues in the last 6 months
- 2 commits in the last 12 weeks
- No stable releases found
- 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.
Add a glama.json file to provide metadata about your server.
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
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure and does state that the image is uploaded and readings are extracted. However, it does not mention side effects such as whether an upload record is created, whether extraction is asynchronous, or what happens on failure. The claim 'instantly' is also potentially misleading given the existence of get_upload_status.
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 a single efficient sentence, front-loaded with the action and target, and the device examples are genuinely useful. 'Instantly' is slightly promotional and adds little technical value, but the description has no redundancy or unnecessary length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter upload tool, the description is close to adequate, but with no output schema it leaves the return behavior unstated. It also does not mention whether the agent should poll get_upload_status or retrieve readings via get_extracted_results, and omits supported image formats. These are meaningful gaps for an upload workflow.
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 description coverage is 100%, and the schema already defines filePath as an absolute or relative local path. The description adds domain context by mentioning medical device scan images but provides no additional constraints on file type, size, or accepted formats. This is the baseline 3 case where the schema does the heavy lifting.
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?
States the verb 'upload', the specific resource 'medical device scan image', enumerates device types, and names the intended outcome 'extract digital readings instantly.' This clearly distinguishes it from the sibling upload_pathology_scan by device domain.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for medical device scan images versus pathology scans, but it gives no explicit guidance on when to use it instead of get_upload_status or get_extracted_results, nor any exclusions. Usage context must be inferred from the tool name and sibling names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral disclosure burden. It usefully discloses the default format behavior and the 202 in-progress response, but it does not mention error behavior, authorization requirements, or what the completed response body contains beyond general categories.
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 two sentences with no wasted words. The primary purpose is front-loaded, and the format default and in-progress behavior are relevant operational details that earn their place.
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?
For a simple retrieval tool with only two parameters and no output schema, the description covers what is returned, when it applies, and a key async behavior. It is slightly incomplete because it does not explain how to proceed after a 202 response or explicitly connect to get_upload_status, but those are minor gaps.
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 description coverage is 100%, so the baseline is 3. The description adds little parameter meaning beyond the schema: it restates the format default and clarifies that the results come from a processed document, but uploadId and format are already adequately documented in the 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 uses a specific verb and resource: 'Retrieve the extracted structured results (biomarkers, test values, reference ranges) for a completed document.' It clearly distinguishes the tool from the upload tools and from get_upload_status by focusing on actual extracted results rather than upload or status information.
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 provides clear context: it is for a completed document, and it returns HTTP 202 if processing is still in progress. It implies when the tool should be used, but it does not explicitly name alternatives such as get_upload_status or state when not to use this tool, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full behavioral burden. It discloses that the upload triggers AI OCR and biomarker extraction and returns an uploadId; however, it does not mention whether processing is asynchronous, whether the file is stored, any size limits, or demo vs. real behavior. This is adequate but not comprehensive.
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?
A single sentence that front-loads the action and resource, then states the purpose and return value. Every phrase earns its place, and there is no redundant text.
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?
For a simple two-parameter upload tool with no output schema, the description adequately covers what is uploaded, why, and what is returned. It could mention the demo flag's effect or next steps like polling status, but the schema covers the parameter and the sibling get_upload_status implies the workflow.
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 description coverage is 100%, so the schema already documents filePath and isDemo. The description adds file type specificity (JPG, PNG) beyond 'image/PDF', which is useful, but it does not otherwise explain parameter behavior. This matches the baseline for high schema coverage.
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 names the specific verb 'upload', the resource ('pathology/blood test image or PDF'), and the purpose ('AI OCR and biomarker extraction'). This clearly differentiates it from the sibling 'upload_medical_device' by file type and intended use.
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 gives clear context for when to use this tool: when you have a pathology/blood test image or PDF to process. It does not explicitly mention avoiding it for non-pathology uploads, but the resource specificity makes the appropriate use case unambiguous.
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?
With no annotations provided, the description carries the behavioral disclosure burden. It covers the main behavior by listing the possible statuses and webhook callback delivery status, making the operation's read-only nature and return content clear. It does not discuss error handling for invalid uploadIds, but this is not critical for a simple status check.
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?
One sentence places the action and resource first and packs the return-state information efficiently. There is no filler or repetition.
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?
With no output schema and no annotations, the description effectively explains the return values, which is the key information an agent needs. It could mention the next step of fetching extracted results after completion, but the current description is sufficient for calling the 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?
The schema already fully describes uploadId as 'The UUID of the upload' with 100% coverage. The description only restates that the status check uses uploadId, adding no additional semantic detail beyond the schema. Baseline 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 ('Check') and a specific resource ('processing status of an uploaded document') and clearly enumerates the statuses returned. This distinguishes it from the sibling upload tools and get_extracted_results, which concern different stages of the workflow.
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 intended context is clear: check the status of an uploaded document using its uploadId, which fits between uploading and extracting results. However, it does not explicitly name alternatives or state when not to use it, so it stops short of fully explicit routing.
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/JondaHealthTech/jondax-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server