MCP server that integrates with Perplexity AI for intelligent coding assistance
Single tool 'search' has a basic but incomplete definition. The schema is present and properly typed (query required, code and language optional), but the description is extremely thin (11 words), below the 20-character threshold that triggers a hard cap. The tool lacks output schema documentation, does not declare what it returns, and provides no guidance on error conditions or when to use it vs alternatives. Parameter descriptions are minimal but present. No tool annotations, no pagination, no structured output guidance. The implementation shows hardcoded analysis text that doesn't match the Perplexity API call, suggesting incomplete or copy-pasted logic.
Search Perplexity for coding help
Tool description is 11 words ('Search Perplexity for coding help'), below 20-char minimum. Provides no context on when/why to use it, what it returns, or how it differs from general search tools.
No output schema documented. Callers cannot predict response structure, is it text, structured JSON, an array? Without this, LLMs cannot plan downstream operations.
Parameter 'language' has a default value 'auto' but no description explaining what 'auto' detection means or supported language values. LLMs cannot reason about this parameter.
No error handling guidance. Tool calls Perplexity API with axios, network failures, API errors, invalid credentials, and rate limits are all possible but undocumented. Errors should tell the LLM what to do next (retry, ask user, etc).
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-21 | F | 46 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 23 | - | v1 |
Implementation contains hardcoded 'customAnalysis' text that does not match the actual Perplexity API response structure. Code shows dead/placeholder logic (analyzeCode function returns fixed text unrelated to actual code). This suggests incomplete implementation.
No tool annotations. The 'search' tool is read-only (risk marked READ_ONLY in metadata) but the schema has no readOnlyHint. Missing destructiveHint/idempotentHint annotations per current MCP spec.
Parameter descriptions are bare minimum: 'query' → 'The error or coding question to analyze', 'code' → 'Code snippet to analyze (optional)', 'language' → no description at all.