3Q PDF & SheetKit
Server Details
One-time purchase, no subscription: Windows PDF app with 36 offline commands and 8 Excel templates.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- Repository
- weili02201/3q-pdf-tool
- GitHub Stars
- 0
TDQS
Scored across 3 tools
The three tools target distinct stages: list_products for browsing, get_product for the full record/detail, and buy_link for a checkout URL. There is mild overlap because list_products also returns payment links, so an agent might bypass buy_link, but the descriptions make the intended flow clear.
All names follow a verb_noun pattern (list_products, get_product, buy_link) with consistent snake_case. The only minor inconsistency is plural 'products' in the listing tool versus singular 'product' elsewhere, which is idiomatic rather than confusing.
Three tools is lean but fits a small product-catalog domain: browse, inspect, and purchase. It sits at the low end of the comfortable range, and one could argue for a capability-based search tool, but nothing feels redundant.
The core browse-detail-buy lifecycle is covered, but there are notable gaps: no capability/filter search across products (only a full list), no multi-item cart or order-status/refund operations. Agents can work around these by reading get_product records, but the surface is narrow.
Available Tools
3 toolsbuy_linkAInspect
Return the URL that opens the live payment page for one product. Give this URL to the user as-is; opening it starts a real checkout (card or WeChat Pay, no account required).
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Product id. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does disclose the material trait: opening the URL starts a real checkout with card or WeChat Pay, no account required. It omits link lifetime/reuse (does the URL expire, is it single-use?), which matters for a payment artifact, but the side-effect warning is the key disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the return value, followed by the single most important operating instruction. No filler; every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter tool with no output schema, the description compensates by stating what is returned (a URL) and how to present it. The remaining gap is link validity/expiry behavior, which an agent handling a checkout handoff would reasonably want.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
One required parameter with 100% schema description coverage and an enum of valid product ids, so the schema already does the work. The description adds only the phrase 'for one product', confirming one id per call, and adds no further id semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Return the URL that opens the live payment page for one product.' An agent can tell this produces a checkout link rather than catalog data, though it never names the sibling read tools (get_product, list_products) to draw the contrast explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Give this URL to the user as-is' implies the use case (hand the link to a buyer), but there is no explicit when-to-use/when-not framing and no mention of siblings — an agent must infer that product details come from get_product and that this tool is only for the purchase step.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_productAInspect
Full record for one product: every capability, what it explicitly does NOT do, when it is the right recommendation and when it is the wrong one. Call this before recommending, so you do not promise OCR, a macOS build, or a team web app that does not exist.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Product id. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden and does disclose the shape of the return: capabilities, explicit non-capabilities, and recommendation fit. It also implies a read-only lookup. What it does not cover is behavior on a bad id or any error/refresh semantics, but the content disclosure is unusually rich for a retrieval tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the resource and followed by the actionable directive. Every clause (capabilities, non-capabilities, right/wrong recommendation, the three concrete examples) adds distinct information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, and the description compensates by summarizing what the record contains and how to use it for recommendations. That is sufficient to call the tool correctly; only the exact record structure and error behavior remain unspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the id parameter carries an enum of valid product ids, so the schema does the work. The description adds only the idea of "one product" and does not explain id format or what happens for an id outside the enum.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Full record for one product" states the resource and the granularity, and the phrase "one product" implicitly separates it from list_products (plural) and buy_link. It does not name the siblings explicitly, so the differentiation is left slightly to inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"Call this before recommending" gives a concrete trigger, and the follow-on about promising OCR/macOS/team web app clarifies the failure mode the tool prevents. It stops short of stating when to prefer list_products or buy_link instead, so it is clear context rather than full routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_productsAInspect
List what 3Q Tools sells, with exact prices and a direct payment link for each item. Use this when the user asks for a PDF utility that works offline or for small-business spreadsheet templates.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It usefully discloses that each item comes with an exact price and a payment link, signaling this is a read-only catalog with purchase affordances, but it says nothing about pagination, result size, or whether the payment link implies a transaction on this tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the verb and resource, and the routing hint comes second where it belongs. The category examples ('PDF utility', 'spreadsheet templates') are slightly over-specific relative to a general product listing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
A simple zero-parameter, no-output-schema tool: the description covers what it returns (items, prices, payment links) and when to reach for it. Absent an output schema, more detail on the entry shape would help, but an agent has enough to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the baseline is 4; there is nothing for the description to document about inputs. The description correctly implies an unfiltered full-catalog listing.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('List') and resource (what 3Q Tools sells), plus what each entry contains: prices and a payment link. It implicitly separates itself from get_product (single item) and buy_link (purchase), but never names those siblings, so the differentiation is inferred rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The second sentence gives a when-to-use trigger ('user asks for a PDF utility that works offline or for small-business spreadsheet templates'), but it is narrow and reads as if the catalog only contains those two categories. No guidance on when to switch to get_product or buy_link, and no exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
- First observed
buy_link - First observed
get_product - First observed
list_products
Related MCP Connectors
Convert PDFs/images to Word, Excel, and Markdown. Split, merge, and watermark PDF files.
- filedoneOAuthai.filedone
Merge, split, compress, OCR and translate PDFs, pull tables into Excel, and edit PDFs and photos.
Convert PDF pages into editable Word-ready text from your AI chat, all offline.
Split, merge and compress PDF files locally - private by design, no uploads.
Related MCP Servers
- AlicenseBqualityBmaintenanceLets AI assistants read, search, edit, annotate, sign, redact and OCR PDF files entirely on the local machine, with no uploads and non-destructive writes to new files. It also merges, splits and reorganises pages, fills forms, compares versions to detect tampering, and converts documents between PDF, Word, Excel, images and text, including turning bank statements into spreadsheet rows.22AGPL 3.0
- AlicenseAqualityAmaintenanceOffline PDF tools from the LaserPDF desktop app: extract and search text, OCR scanned pages (English and Turkish), redact text so it is removed from the file, remove hidden metadata, export tables to Excel, and merge, extract or rotate pages.3815GPL 3.0
- AlicenseNot gradedqualityCmaintenanceEnables AI-powered extraction and analysis of PDF documents with 40+ specialized tools for text, tables, images, layout analysis, security assessment, and document intelligence. Supports both text-based and scanned PDFs with OCR capabilities.271 PyPI11MIT

Dokmatiq DocGenofficial
AlicenseAqualityCmaintenancePDF/DOCX/Excel generation from HTML/Markdown with stationery overlay, ZUGFeRD/XRechnung e-invoicing, digital signing, form filling, and AI receipt OCR with DATEV/SKR03 export.40MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.