Skip to main content
Glama
bbssppllvv

apple-docs-mcp-server

by bbssppllvv

search_docs

Search Apple developer documentation semantically with relevance scoring to find API references, code examples, and related topics.

Instructions

🔍 SEMANTIC SEARCH through 16,253 Apple documentation pages with intelligent relevance scoring.

SEARCH STRATEGY: • BROAD→NARROW: Start with general concepts ("SwiftUI animation") then narrow down ("SwiftUI keyframe animator") • ITERATE: If results aren't specific enough, reformulate with more precise terms • EXPLORE: Use limit 8-10 for initial exploration, limit 3-5 for focused searches • 🔗 RELATED MODE: Set includeRelated=true to auto-discover connected topics

QUERY EXAMPLES: âś… GOOD: "SwiftUI custom transition animation", "Core Data CloudKit conflict resolution"
✅ GOOD: "NSFetchRequest predicate performance", "UIKit navigation controller delegate" ✅ WITH RELATED: "SwiftUI Button" + includeRelated=true → 3 main + 5 related (ButtonStyle, UIButton, design guidelines) = comprehensive topic coverage ❌ AVOID: Single words like "Button" or "Core Data" - too broad ❌ AVOID: Non-Apple terms like "React" or "Android"

RELEVANCE SCORES: • 60%+: Highly relevant, likely contains what you need • 50-59%: Good match, worth investigating
• 40-49%: Partial match, may have related information • <40%: Weak match, consider refining search

🔗 ENHANCED BY DEFAULT: Every search includes 3-6 intelligently related documents • Semantic similarity using existing embeddings (NO extra OpenAI API calls!) • Intelligent relationship classification: 🔄 Migration, 🆕 Alternatives, ⚡ Performance, 📋 Examples • Smart threshold adaptation based on main result quality (75-85% similarity scores) • Framework-aware connections: SceneKit→RealityKit, UIKit→SwiftUI, Core Image→Metal • Quality-first approach: vector-based semantic matching replaces keyword search • Use includeRelated=false to disable and get only main search results

WORKFLOW: Use search_docs for exploration → get_doc for detailed analysis → repeat with refined queries.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoRESULT COUNT: 8-10 for exploration, 3-5 for focused search. More results = broader overview.
queryYesSEARCH QUERY: Use 2-4 specific keywords. Examples: "SwiftUI custom animation", "Core Data fetch performance", "UIKit navigation delegate methods"
minSimilarityNoRELEVANCE THRESHOLD: 0.3 (default) for broad search, 0.5+ for highly specific results. Lower = more results.
includeContentNoCONTENT PREVIEW: Always true for decision making. Provides snippet to evaluate relevance.
includeRelatedNo🔗 VECTOR-BASED AUTO-DISCOVER: Find semantically related documents using embeddings similarity (NOW ENABLED BY DEFAULT). Adds 3-6 intelligently classified docs (🔄 Migration guides, 🆕 Modern alternatives, ⚡ Performance tips, 📋 Code examples). Set to false to show only main results.
maxContentCharsNoSNIPPET SIZE: 150-200 for quick scan, 300+ for detailed preview. Balance overview vs detail.
showCodePreviewNođź’» CODE PREVIEW: Show preview of first Swift code block in each result. Perfect for AI agents to quickly see if document contains useful code examples. Use with get_code_examples(docId) for full code extraction.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description fully carries behavioral disclosure. It reveals that related results are enabled by default (3-6 docs), that semantic matching uses existing embeddings with no extra API calls, that relevance thresholds and related-doc similarity adaptation occur, and that includes framework-aware connections. This goes far beyond a basic search description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but highly organized with clear sections, examples, and emoji signposts. It is front-loaded with purpose and strategy. Some redundancy exists between the 'ENHANCED BY DEFAULT' section and the includeRelated parameter description, so it is not perfectly concise, but the density is justified by the tool's feature richness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description covers return semantics effectively: relevance score bands, related-document counts, and a concrete example of the related mode result structure. It also addresses the full workflow with siblings and parameter trade-offs, making it complete for an AI agent to select and invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the tool description adds substantial value beyond the schema: it explains how to interpret relevance scores (60%+, 50-59%, etc.), gives query examples matching the format, and describes practical limit/minSimilarity settings. The includeRelated behavior and showCodePreview integration with get_code_examples are also elaborated beyond raw parameter docs.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with 'SEMANTIC SEARCH through 16,253 Apple documentation pages with intelligent relevance scoring,' which clearly names the verb, resource, and unique value. It distinguishes from siblings by explicitly positioning search_docs for exploration versus get_doc for detailed analysis and get_code_examples for code extraction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides a detailed SEARCH STRATEGY with broad-to-narrow iteration, specific limit recommendations, query examples with good and bad patterns, and explicit alternatives (get_doc, get_code_examples). The workflow line 'Use search_docs for exploration → get_doc for detailed analysis → repeat' makes when-to-use unmistakable.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

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/bbssppllvv/apple-docs-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server