CoolPC MCP Server
The CoolPC MCP Server allows users to search and analyze computer component prices from CoolPC to assist in generating PC configuration quotes. With this server, you can:
Search Products: Search for components by keyword, brand, or specifications with optional filters for category and price range.
Get Product Details: Retrieve detailed information about a specific product using its model number.
List Categories: Browse all available product categories.
Get Category Products: View all products within a specific category or subcategory with options to limit results.
Enables querying Intel CPU prices and specifications from the CoolPC database
Supports integration with Claude Desktop on macOS systems through configuration file setup
Serves as the runtime environment for the MCP server that provides CoolPC product data access
Used for managing Node.js dependencies and running the MCP server
Enables comparison of NVIDIA graphics card specifications and prices through the CoolPC database
Used for parsing and processing CoolPC product data to generate JSON files consumed by the MCP server
Used as the programming language for implementing the MCP server functionality
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@CoolPC MCP Server幫我找 AM5 腳位的主機板,預算 5000 元以下"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
CoolPC MCP Server
一個基於 Model Context Protocol (MCP) 的伺服器,提供台灣原價屋 (CoolPC) 電腦零組件價格查詢功能,讓 Claude Desktop 等 MCP 客戶端能夠透過 AI 協助生成電腦報價單。
功能特色
🔍 智能搜尋: 支援關鍵字、分類、價格範圍搜尋
📊 產品分析: 提供產品規格比較和價格分析
💰 報價生成: 根據需求自動生成電腦配置報價單
🔥 即時標記: 顯示熱銷商品、降價商品、限時優惠等標記
🏷️ 分類瀏覽: 完整的產品分類和統計資訊
Related MCP server: AKShare MCP Server
專案結構
coolpc-mcp-server/
├── coolpc_parser.py # Python 解析器
├── evaluate.html # 範例 HTML 資料
├── product-sample.json # 範例產品資料
├── src/
│ └── index.ts # MCP Server 主程式
├── package.json # Node.js 相依性
├── tsconfig.json # TypeScript 設定
└── README.md # 說明文件快速開始
1. 環境需求
Python 3.x (用於資料解析)
Node.js 18+ (用於 MCP Server)
Claude Desktop (作為 MCP 客戶端)
2. 安裝相依性
# 安裝 Node.js 相依性
npm install3. 產生 product.json
從原價屋網站取得最新資料並產生產品資料檔:
# 方法一:直接下載最新資料並解析 (推薦)
python3 coolpc_parser.py --download --json product.json
# 方法二:使用本地 HTML 檔案
# 1. 開啟瀏覽器到 https://www.coolpc.com.tw/evaluate.php
# 2. 另存網頁為 evaluate.html
# 3. 執行解析器
python3 coolpc_parser.py evaluate.html --json product.json4. 建置 MCP Server
# 開發模式 (即時編譯)
npm run dev
# 或建置生產版本
npm run build
npm startClaude Desktop 設定
在 Claude Desktop 中設定 MCP Server,讓 Claude 能夠使用電腦零組件查詢功能。
設定步驟
開啟 Claude Desktop 設定檔
找到 Claude Desktop 的設定檔位置:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\\Claude\\claude_desktop_config.json
新增 MCP Server 設定
在設定檔中新增以下設定:
{ "mcpServers": { "coolpc": { "command": "node", "args": ["/path/to/coolpc-mcp-server/build/index.js"], "env": {} } } }請將
/path/to/coolpc-mcp-server替換為專案的實際路徑重新啟動 Claude Desktop
儲存設定檔後,重新啟動 Claude Desktop 讓設定生效。
使用範例
設定完成後,您可以在 Claude Desktop 中使用以下指令:
請幫我查詢 Intel CPU 的價格範圍
幫我配電腦菜單,能順跑 4K 解析度 3A 大作,並且 CP 值要非常高,儘可能節省預算
請推薦一套預算 3 萬元的遊戲電腦配置
整理一套預算 15000 元內的準系統文書機
比較 NVIDIA RTX 4070 和 RTX 4060 的規格和價格
列出所有主機板的分類和數量
查詢 AM5 腳位的 CPU,價格由低到高排序
找出 6 核心的處理器
搜尋 RTX 4060 顯示卡,價格由低到高
找出 DDR5 32GB 的記憶體
查詢 1TB 的 M.2 SSD
找 AM5 腳位的 B650 晶片組主機板可用工具
MCP Server 提供以下工具供 Claude 使用:
search_products
搜尋產品,支援關鍵字、分類、價格範圍篩選
search_products({
keyword?: string, // 搜尋關鍵字
category?: string, // 產品分類
minPrice?: number, // 最低價格
maxPrice?: number // 最高價格
})get_product_by_model
根據型號取得特定產品資訊
get_product_by_model({
model: string // 產品型號
})list_categories
列出所有產品分類及統計資訊
list_categories()get_category_products
取得特定分類的所有產品
get_category_products({
category: string // 分類名稱
})search_cpu
專門搜尋 CPU 處理器,支援腳位、核心數篩選和價格排序
search_cpu({
socket?: string, // CPU 腳位 (如 'AM5', '1700', '1851', 'AM4')
cores?: number, // 核心數量
sort_by?: string, // 排序方式 ('price_asc' | 'price_desc')
limit?: number // 結果數量限制 (預設: 10)
})search_gpu
專門搜尋顯示卡,支援晶片型號、記憶體容量篩選和價格排序
search_gpu({
chipset?: string, // GPU 晶片 (如 'RTX 4060', 'RTX 4070', 'RX 7600')
memory?: number, // 記憶體容量 (GB)
sort_by?: string, // 排序方式 ('price_asc' | 'price_desc')
limit?: number // 結果數量限制 (預設: 10)
})search_ram
專門搜尋記憶體,支援類型、容量、頻率篩選和價格排序
search_ram({
type?: string, // 記憶體類型 (如 'DDR4', 'DDR5')
capacity?: number, // 總容量 (GB)
frequency?: number, // 頻率 (MHz,如 3200, 4800, 5600)
sort_by?: string, // 排序方式 ('price_asc' | 'price_desc')
limit?: number // 結果數量限制 (預設: 10)
})search_ssd
專門搜尋固態硬碟,支援介面、容量篩選和價格排序
search_ssd({
interface?: string, // 介面類型 (如 'M.2', 'SATA', 'NVMe', 'PCIe')
capacity?: number, // 容量 (GB)
sort_by?: string, // 排序方式 ('price_asc' | 'price_desc')
limit?: number // 結果數量限制 (預設: 10)
})search_motherboard
專門搜尋主機板,支援腳位、晶片組、尺寸規格篩選和價格排序
search_motherboard({
socket?: string, // CPU 腳位 (如 'AM5', '1700', '1851', 'AM4')
chipset?: string, // 晶片組 (如 'B650', 'X670', 'Z790', 'B760')
form_factor?: string,// 尺寸規格 (如 'ATX', 'mATX', 'ITX')
sort_by?: string, // 排序方式 ('price_asc' | 'price_desc')
limit?: number // 結果數量限制 (預設: 10)
})開發指南
更新產品資料
定期更新產品資料以確保價格和庫存資訊準確:
# 方法一:直接下載最新資料 (推薦)
python3 coolpc_parser.py --download --json product.json
# 方法二:手動下載 HTML 檔案
# 1. 從 https://www.coolpc.com.tw/evaluate.php 下載最新 HTML
# 2. 解析資料
python3 coolpc_parser.py evaluate.html --json product.json
# 重新建置 MCP Server
npm run build開發模式
# 開發模式 (自動重載)
npm run dev除錯
檢查 Claude Desktop 的 MCP 連線狀態:
開啟 Claude Desktop
檢查左下角是否顯示 🔌 圖示
點擊查看 MCP Server 連線狀態
故障排除
常見問題
Q: Claude Desktop 無法連接到 MCP Server
檢查設定檔路徑是否正確
確認 Node.js 和相依性已正確安裝
檢查 product.json 檔案是否存在
Q: 搜尋結果為空
確認 product.json 包含資料
檢查搜尋關鍵字是否正確
嘗試使用不同的搜尋條件
Q: 產品資料過舊
重新從原價屋網站取得 HTML 資料
執行解析器更新 product.json
重新啟動 MCP Server
日誌檢查
# 檢查 MCP Server 輸出
npm run dev
# 檢查解析器輸出
python3 coolpc_parser.py evaluate.html --summary授權條款
本專案僅供學習和研究用途。使用時請遵守原價屋網站的使用條款。
貢獻
歡迎提交 Issue 和 Pull Request 來改善這個專案。
注意: 本工具僅提供價格參考,實際價格請以原價屋官網為準。
Available Tools
9 toolsget_category_productsA
Browse all products within a specific category. Useful for exploring all options in a product type when you don't have specific search criteria. Returns products with full details including prices and specifications.
| Name | Required | Description | Default |
|---|---|---|---|
| category_id | Yes | Category ID from list_categories. Examples: 'cat_cpu' for processors, 'cat_vga' for graphics cards. Use list_categories first to get valid IDs | |
| subcategory_name | No | Filter by specific subcategory name. Example: 'Intel Raptor Lake-s 14代1700 腳位' for 14th gen Intel CPUs. Optional - omit to see all subcategories | |
| limit | No | Maximum products to return. Valid range: 1-100, default: 20. Higher values to see more products in the category |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the tool returns 'full details including prices and specifications', which adds useful context beyond the input schema. However, it lacks information on potential limitations like pagination, error handling, or performance characteristics that would be helpful for a read operation.
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?
The description is efficiently structured in two sentences that each serve a distinct purpose: stating the core functionality and providing usage context. There's no wasted language, and the information is front-loaded with the essential purpose statement.
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 read operation with 3 parameters and no output schema, the description provides adequate but minimal context. It explains what the tool does and when to use it, but doesn't address return format details, error cases, or how results are structured. Given the lack of annotations and output schema, more completeness would be beneficial.
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 input schema has 100% description coverage, providing detailed documentation for all three parameters. The description doesn't add any meaningful parameter semantics beyond what's already in the schema, so it meets the baseline expectation without adding extra value.
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?
The description clearly states the tool's purpose with the verb 'browse' and resource 'products within a specific category', making it easy to understand. However, it doesn't explicitly differentiate from siblings like 'search_products' or 'get_product_by_model', which might offer overlapping functionality with different approaches.
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 description provides clear context for when to use this tool ('when you don't have specific search criteria'), which helps distinguish it from search-based siblings. It doesn't explicitly state when not to use it or name alternatives, but the implied guidance is sufficient for basic decision-making.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_product_by_modelA
Get detailed specifications and pricing for a specific product by exact model number. Use when you know the exact product model and need full details including specs, current price, and availability markers.
| Name | Required | Description | Default |
|---|---|---|---|
| model | Yes | Exact product model number (case-insensitive). Examples: 'i5-14400F', 'RTX 4060', 'B650M-PLUS', 'WD_BLACK SN770'. Must match exactly as listed |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It mentions 'detailed specifications and pricing' and 'availability markers', giving some behavioral context about return content. However, it doesn't disclose error handling for invalid models, rate limits, authentication needs, or response format details, leaving gaps for a tool with no annotation coverage.
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 with zero waste: the first states purpose and input requirement, the second provides usage guidelines. Each sentence earns its place by adding distinct value, and the description is appropriately sized and front-loaded.
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?
Given no annotations and no output schema, the description partially compensates by outlining return content (specs, price, availability). However, for a tool with 100% schema coverage but no structured output definition, it should ideally specify response structure or error cases more explicitly to be fully complete.
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 description coverage is 100%, so the schema already fully documents the single 'model' parameter with examples and matching rules. The description adds marginal value by reinforcing 'exact model number' but doesn't provide additional syntax or format details beyond what the schema specifies.
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?
The description clearly states the verb 'Get' and resource 'detailed specifications and pricing for a specific product by exact model number', specifying the exact input requirement. It distinguishes from siblings by emphasizing 'exact model number' retrieval rather than category listing or search operations.
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?
Explicitly states 'Use when you know the exact product model and need full details including specs, current price, and availability markers', providing clear when-to-use guidance. It implicitly distinguishes from sibling tools (e.g., search_* tools) by requiring exact model matching rather than keyword searches.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_categoriesA
Get a complete list of all product categories with statistics. Shows category names, product counts, and special markers (hot items, discounts). Useful for browsing available product types or understanding the catalog structure.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that the tool returns a 'complete list' with statistics, which implies it's a read-only operation without side effects. However, it lacks details on behavioral traits such as pagination, rate limits, authentication needs, or error handling. The description adds some context but misses key operational aspects.
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?
The description is concise and well-structured in two sentences. The first sentence states the purpose and output, and the second provides usage context. Every sentence adds value without waste. It could be slightly more front-loaded by emphasizing the core action first, but overall it's efficient.
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?
Given the tool's complexity (simple list operation with 0 parameters) and no annotations or output schema, the description is moderately complete. It explains what the tool does and its use cases, but it lacks details on the output format (e.g., structure of statistics) and behavioral constraints. For a tool with no structured data support, more completeness is needed to fully guide an agent.
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 input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description does not mention any parameters, which is appropriate. It earns a baseline score of 4 because it avoids redundancy and focuses on the tool's purpose and output, adding value without unnecessary details.
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?
The description clearly states the tool's purpose: 'Get a complete list of all product categories with statistics.' It specifies the verb ('Get') and resource ('product categories'), and lists the data returned (names, counts, markers). However, it does not explicitly distinguish this from sibling tools like 'get_category_products' or 'search_products', which reduces the score from a 5.
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 description provides implied usage guidance: 'Useful for browsing available product types or understanding the catalog structure.' This suggests when to use it (for overview purposes), but it does not explicitly state when not to use it or name alternatives among the sibling tools (e.g., use 'search_products' for specific queries). The guidance is helpful but not comprehensive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_cpuB
Specialized CPU/processor search tool. Find CPUs by socket compatibility, core count, and sort by price. Best for building compatible systems or finding CPUs with specific performance characteristics.
| Name | Required | Description | Default |
|---|---|---|---|
| socket | No | CPU socket type for motherboard compatibility. Intel examples: '1700' (12-14th gen), '1851' (Core Ultra). AMD examples: 'AM5' (Ryzen 7000/8000/9000), 'AM4' (older Ryzen) | |
| cores | No | Number of physical CPU cores (not threads). Common values: 4, 6, 8, 10, 12, 16, 24, 32. Example: 6 for hex-core CPUs | |
| sort_by | No | Price sorting order. 'price_asc' = cheapest first (budget builds), 'price_desc' = most expensive first (high-end builds) | |
| limit | No | Maximum results to return. Valid range: 1-50, default: 10. Use higher values to see more options |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It mentions search functionality and sorting but doesn't describe what the tool returns (list of CPUs? with what fields?), pagination behavior, error conditions, or rate limits. For a search tool with 4 parameters and no output schema, this is inadequate.
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 concise sentences with zero waste. First sentence states purpose and key parameters, second provides usage context. Well-structured and appropriately sized for the tool's complexity.
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 search tool with 4 parameters, no annotations, and no output schema, the description is incomplete. It doesn't explain what results look like, what fields are returned, or how to interpret results. The schema covers parameters well, but the overall context for using the tool effectively is lacking.
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 description coverage is 100%, so the schema already documents all parameters thoroughly. The description mentions the three main parameters (socket, cores, sort_by) but adds no meaningful semantics beyond what's in the schema descriptions. Baseline 3 is appropriate when schema does the heavy lifting.
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?
The description clearly states the tool's purpose: 'Specialized CPU/processor search tool' with specific search criteria (socket compatibility, core count, price sorting). It distinguishes from generic search tools but doesn't explicitly differentiate from 'search_products' or other hardware-specific search siblings.
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 description provides implied usage context ('Best for building compatible systems or finding CPUs with specific performance characteristics') but doesn't explicitly state when to use this vs. alternatives like 'search_products' or 'get_product_by_model'. No when-not-to-use guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_gpuB
Specialized graphics card (VGA) search tool. Find GPUs by chipset model, VRAM capacity, and price. Perfect for gaming builds, content creation, or AI workloads.
| Name | Required | Description | Default |
|---|---|---|---|
| chipset | No | GPU chipset model. NVIDIA examples: 'RTX 4090', 'RTX 4070', 'RTX 4060', 'RTX 3060'. AMD examples: 'RX 7900', 'RX 7600'. Intel: 'Arc B580', 'Arc B570' | |
| memory | No | Video memory (VRAM) capacity in GB. Common values: 8, 12, 16, 24. Example: 12 for 12GB VRAM cards suitable for 1440p gaming | |
| sort_by | No | Price sorting order. 'price_asc' = cheapest first (value gaming), 'price_desc' = most expensive first (premium performance) | |
| limit | No | Maximum results to return. Valid range: 1-50, default: 10. Higher values show more brand/model variations |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It describes the tool as a 'search tool' which implies read-only behavior, but doesn't specify whether it queries a database, API, or local inventory, nor does it mention rate limits, authentication needs, or error handling. The description adds minimal behavioral context beyond the basic search function.
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?
The description is concise and front-loaded, stating the tool's purpose in the first sentence and adding context in the second. Both sentences earn their place by defining specialization and use cases, with no wasted words.
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 search tool with 4 parameters, 100% schema coverage, and no output schema, the description is adequate but has gaps. It covers purpose and use cases but lacks details on behavioral aspects like data source, result format, or error conditions. Without annotations or output schema, more context would improve completeness.
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 input schema has 100% description coverage, providing detailed explanations for all parameters. The description adds value by mentioning the search criteria (chipset, VRAM, price) and use cases, but doesn't provide additional semantic context beyond what's in the schema. Baseline 3 is appropriate as the schema does the heavy lifting.
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?
The description clearly states the tool's purpose as a 'search tool' for 'graphics cards (VGA)' with specific search criteria (chipset, VRAM, price) and target use cases (gaming, content creation, AI). It distinguishes from siblings like 'search_cpu' or 'search_products' by specializing in GPUs, though it doesn't explicitly contrast with 'search_products' which might also handle GPUs.
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 description implies usage context ('Perfect for gaming builds, content creation, or AI workloads') but doesn't explicitly state when to use this tool versus alternatives like 'search_products' or 'get_product_by_model'. It provides general scenarios but lacks specific guidance on tool selection among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_motherboardA
Specialized motherboard (MB/mainboard) search tool. Find motherboards by CPU socket, chipset, and size. Critical for system compatibility - must match CPU socket and case size.
| Name | Required | Description | Default |
|---|---|---|---|
| socket | No | CPU socket - MUST match your CPU. Intel: '1700' (12-14th gen), '1851' (Core Ultra). AMD: 'AM5' (Ryzen 7000+), 'AM4' (older Ryzen). Check CPU specs first! | |
| chipset | No | Motherboard chipset determines features. Intel: 'Z790' (high-end), 'B760' (mainstream), 'H610' (budget). AMD: 'X670' (high-end), 'B650' (mainstream), 'A620' (budget) | |
| form_factor | No | Physical size - must fit your case. 'ATX' (full size, most expansion), 'mATX' or 'MATX' (compact, good balance), 'ITX' (mini, small builds) | |
| sort_by | No | Price sorting order. 'price_asc' = budget boards first, 'price_desc' = feature-rich boards first | |
| limit | No | Maximum results to return. Valid range: 1-50, default: 10. More results = more brand/feature options |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions the tool's critical role in compatibility but does not detail behavioral traits like response format, error handling, or performance characteristics. The description adds some context about the importance of matching parameters but lacks specifics on what the tool returns or how it behaves operationally.
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?
The description is front-loaded and efficient: two sentences that clearly state the tool's purpose and critical usage context. Every sentence earns its place by conveying essential information without redundancy or unnecessary details, making it easy to understand quickly.
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?
Given the tool's complexity (5 parameters, no output schema, no annotations), the description is adequate but has gaps. It explains the tool's purpose and importance but does not cover behavioral aspects like return format or error conditions. With no output schema, more detail on what results to expect would improve completeness, but the description meets minimum viability for a search tool.
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 description coverage is 100%, so the schema already documents all parameters thoroughly. The description adds minimal value beyond the schema by emphasizing the importance of socket and size matching for compatibility. However, it does not provide additional semantic context or usage examples that go beyond the schema's detailed descriptions.
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?
The description explicitly states the tool's purpose: 'Specialized motherboard (MB/mainboard) search tool. Find motherboards by CPU socket, chipset, and size.' It uses specific verbs ('search', 'find') and resources ('motherboards'), and distinguishes itself from siblings like 'search_cpu' or 'search_products' by focusing on motherboard-specific parameters.
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 description provides clear context for when to use this tool: 'Critical for system compatibility - must match CPU socket and case size.' It implies usage in PC building scenarios where motherboard compatibility is essential. However, it does not explicitly state when not to use it or name alternatives among sibling tools, such as 'search_products' for broader searches.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_productsA
General search across all computer components. Use this for broad searches or when component type is uncertain. For specific components, use dedicated search tools (search_cpu, search_gpu, etc.)
| Name | Required | Description | Default |
|---|---|---|---|
| keyword | Yes | Search keyword - can be brand name (Intel, AMD, NVIDIA), model number, or specifications. Examples: 'Intel', 'RTX', '32GB', 'B650' | |
| category | No | Filter by product category. Examples: 'CPU', 'GPU', 'RAM', 'SSD', 'MB' (motherboard). Leave empty to search all categories | |
| min_price | No | Minimum price in TWD. Example: 5000 for products above NT$5,000 | |
| max_price | No | Maximum price in TWD. Example: 20000 for products under NT$20,000 | |
| limit | No | Maximum number of results to return. Valid range: 1-100, default: 10 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. The description mentions it's a 'general search' which implies read-only behavior, but doesn't explicitly state whether this requires authentication, has rate limits, or what the return format looks like. It provides some context about scope but lacks details on behavioral traits like pagination, error handling, or performance characteristics.
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?
The description is extremely concise with just two sentences that each serve a clear purpose. The first sentence states the tool's purpose, and the second provides explicit usage guidelines. There's no wasted text, and the information is front-loaded with the most important details first.
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?
Given the tool's moderate complexity (5 parameters, no output schema, no annotations), the description provides good contextual completeness. It clearly explains the tool's purpose and when to use it versus alternatives. However, without annotations or output schema, it could benefit from more information about what the search returns (e.g., result format, pagination) and any behavioral constraints.
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?
With 100% schema description coverage, the input schema already provides comprehensive documentation for all 5 parameters. The description doesn't add any parameter-specific information beyond what's in the schema. It mentions the tool's general purpose but doesn't explain parameter interactions or provide additional semantic context, so it meets the baseline for good schema coverage.
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?
The description clearly states the tool's purpose as a 'general search across all computer components' with a specific verb ('search') and resource ('computer components'). It explicitly distinguishes this from sibling tools by mentioning dedicated search tools for specific components (search_cpu, search_gpu, etc.), making it easy to understand when this tool is appropriate versus alternatives.
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 description provides explicit guidance on when to use this tool ('for broad searches or when component type is uncertain') and when to use alternatives ('For specific components, use dedicated search tools'). This directly addresses the sibling tools listed, giving clear context for tool selection without any misleading information.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_ramB
Specialized memory (RAM) search tool. Find desktop or laptop memory by DDR generation, total capacity, speed, and price. Essential for system upgrades or new builds.
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | RAM generation/type. Options: 'DDR4' (older systems, cheaper), 'DDR5' (newest, faster). Must match motherboard compatibility | |
| capacity | No | Total memory capacity in GB. Common values: 8, 16, 32, 64. Example: 32 for 32GB total (can be 2x16GB or 4x8GB kit) | |
| frequency | No | Memory speed in MHz. DDR4 common: 3200, 3600. DDR5 common: 4800, 5600, 6000. Higher = better performance | |
| sort_by | No | Price sorting order. 'price_asc' = budget options first, 'price_desc' = premium/performance kits first | |
| limit | No | Maximum results to return. Valid range: 1-50, default: 10. More results = more brand choices |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It mentions the tool is for searching/finding memory, which implies a read-only operation, but doesn't disclose behavioral traits like whether it requires authentication, rate limits, error handling, or what the output format looks like (e.g., list of products with details). This leaves significant gaps for an agent to understand how to interact with it effectively.
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?
The description is appropriately sized with two sentences: the first states the purpose and parameters, and the second provides usage context. It's front-loaded with key information and avoids unnecessary details, though it could be slightly more structured (e.g., bullet points for parameters).
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?
Given the complexity (5 parameters, no annotations, no output schema), the description is incomplete. It doesn't explain what the tool returns (e.g., product listings, availability, links), how results are formatted, or any prerequisites (e.g., authentication). For a search tool with multiple parameters and no output schema, this leaves the agent without crucial context for successful invocation.
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 description lists the search criteria (DDR generation, capacity, speed, price), which aligns with the input schema parameters. However, with 100% schema description coverage, the schema already provides detailed parameter information (e.g., options, examples, ranges). The description adds minimal value beyond restating the parameters, so it meets the baseline of 3.
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?
The description clearly states the tool's purpose: 'Find desktop or laptop memory by DDR generation, total capacity, speed, and price.' It specifies the resource (memory/RAM) and the search criteria, though it doesn't explicitly differentiate from sibling tools like 'search_products' or 'search_cpu' beyond mentioning it's 'specialized' for RAM.
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 description provides implied usage context: 'Essential for system upgrades or new builds.' This suggests when to use the tool, but it doesn't explicitly state when not to use it or name alternatives among sibling tools (e.g., 'search_products' might be a broader alternative).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_ssdB
Specialized SSD/solid-state drive search tool. Find storage drives by interface type, capacity, and price. Covers M.2 NVMe, SATA, and PCIe drives for OS and data storage.
| Name | Required | Description | Default |
|---|---|---|---|
| interface | No | Storage interface/connection type. Options: 'M.2' (compact, fast), 'NVMe' (PCIe-based, fastest), 'SATA' (2.5", compatible), 'PCIe' (add-in card). 'M.2 NVMe' for modern builds | |
| capacity | No | Storage capacity in GB. Common values: 256, 512, 1000 (1TB), 2000 (2TB), 4000 (4TB). Example: 1000 for 1TB drives | |
| sort_by | No | Price sorting order. 'price_asc' = value drives first, 'price_desc' = premium/high-performance drives first | |
| limit | No | Maximum results to return. Valid range: 1-50, default: 10. More results show various brands/speeds |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions the tool is for 'search' and 'find' operations, implying read-only behavior, but doesn't specify if it's safe, requires authentication, has rate limits, or what the output format looks like (e.g., list of products with details). For a search tool with zero annotation coverage, this leaves significant gaps in understanding its behavior and constraints.
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?
The description is appropriately sized with two sentences: the first states the purpose and key parameters, and the second adds context about drive types and usage. It's front-loaded with essential information and avoids redundancy. However, the second sentence could be slightly more concise by integrating 'for OS and data storage' more smoothly.
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?
Given the tool's complexity (search with 4 parameters), no annotations, and no output schema, the description is moderately complete. It covers the purpose and basic parameters but lacks details on behavioral traits (e.g., safety, output format) and doesn't fully compensate for the absence of structured data. For a search tool, it's adequate but has clear gaps in providing a holistic understanding.
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 schema description coverage is 100%, meaning all parameters are well-documented in the input schema. The description adds minimal value beyond the schema by mentioning 'interface type, capacity, and price' as search criteria, but doesn't provide additional syntax, format details, or examples not already covered. With high schema coverage, the baseline score of 3 is appropriate as the description doesn't significantly enhance parameter understanding.
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?
The description clearly states the tool's purpose: 'Specialized SSD/solid-state drive search tool. Find storage drives by interface type, capacity, and price.' It specifies the resource (SSDs) and key search parameters, distinguishing it from general search tools like 'search_products' by focusing on SSDs. However, it doesn't explicitly differentiate from 'search_cpu' or 'search_gpu' beyond mentioning SSD-specific attributes.
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 description implies usage context: 'Covers M.2 NVMe, SATA, and PCIe drives for OS and data storage,' suggesting it's for finding storage drives in computing builds. It doesn't provide explicit when-to-use guidance versus alternatives like 'search_products' (general) or 'get_product_by_model' (specific), nor does it mention exclusions or prerequisites. The context is clear but lacks sibling differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Most tools have distinct purposes, with dedicated search tools for specific components (CPU, GPU, motherboard, RAM, SSD) and general tools for browsing categories and products. However, there is some overlap between 'search_products' and the specialized search tools, as the description suggests using the general tool when component type is uncertain, which could lead to confusion about when to choose which.
All tool names follow a consistent snake_case pattern with clear verb_noun structures (e.g., get_category_products, search_cpu, list_categories). The naming is predictable and readable, making it easy for agents to understand the action and target resource.
With 9 tools, the count is well-scoped for a computer component catalog server. It covers essential operations like browsing categories, retrieving specific products, and searching across general and specialized components, ensuring each tool has a clear role without being overwhelming.
The tool set provides strong coverage for browsing and searching computer components, including categories, specific products, and specialized searches for key parts like CPU, GPU, and RAM. A minor gap is the lack of tools for actions like adding to a cart or checking out, but these might be outside the server's intended scope, and core retrieval and search workflows are well-covered.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
A Model Context Protocol server for Wix AI tools
MCP server unifying ERPs, CRMs, APIs and knowledge base for Claude, ChatGPT and Gemini.
Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server utilizing Claude AI for generating intelligent queries and offering documentation assistance based on API documentation analysis.193MIT
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that enables Claude Desktop to access and analyze Chinese and global financial market data through the AKShare library.54MIT
- FlicenseDqualityDmaintenanceA server built on mcp-framework that enables integration with Claude Desktop through the Model Context Protocol.11
- AlicenseNot gradedqualityDmaintenanceA Model Control Protocol server that integrates with Claude Desktop to enable simultaneous querying and cross-checking of responses from multiple LLM providers including OpenAI, Anthropic, Perplexity AI, and Google Gemini.15MIT
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/shyuan/coolpc-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server