Apple Doc MCP
A Model Context Protocol (MCP) server that provides seamless access to Apple's Developer Documentation directly within your AI coding assistant.
๐ Changelog
1.0.1 Update
- ๐ฏ Intelligent Fallback System: When searching for frameworks instead of symbols (e.g., "SwiftUI"), the server now provides helpful framework information and guidance on correct usage
- ๐ง Tool Consolidation: Streamlined from 4 tools to 4 focused tools:
list_technologies
- Browse all Apple frameworksget_documentation
- Get symbol or framework docs (handles both automatically)search_symbols
- Search with wildcards and filterscheck_updates
- Check for repository updates via git
- ๐ Pre-built Distribution: No more manual building required - clone and use immediately
- ๐งน Dynamic Framework Discovery: Removed all hard-coded framework lists for fully dynamic operation
- โก Automatic Update Notifications: Server automatically checks for updates on startup and notifies users when new versions are available
- ๐ก๏ธ Enhanced Error Handling: Better null safety and professional error messages
๐ Features
- ๐ Smart Search: Find symbols across all Apple frameworks with wildcard support (
*
,?
) - ๐ Framework Browsing: Explore any Apple framework structure (SwiftUI, UIKit, Foundation, etc.)
- ๐ Detailed Documentation: Get comprehensive symbol documentation with examples
- ๐ฏ Advanced Filtering: Filter by platform (iOS, macOS, etc.), symbol type, or framework
- โก Real-time Data: Always up-to-date with Apple's latest documentation
- ๐ Auto-Update Alerts: Automatic notifications when repository updates are available
- ๐ง AI-Optimized: Clean markdown output perfect for AI assistants
๐ฆ Installation
Clone this repository:
git clone https://github.com/MightyDillah/apple-doc-mcp.git cd apple-doc-mcp
Ready to use! (Pre-built distribution included)
# No build step required - just configure your MCP client
๐ Quick Setup
Step 1: Configure Your AI Assistant
Claude Desktop: Edit ~/.config/claude/claude_desktop_config.json
Cursor: Settings (Cmd/Ctrl + ,
) โ Extensions โ MCPContinue.dev: Edit ~/.continue/config.json
VS Code (Claude): Settings โ MCP Servers
{
"mcpServers": {
"apple-doc-mcp": {
"command": "node",
"args": ["/path/to/apple-doc-mcp/dist/index.js"]
}
}
}
Replace /path/to/apple-doc-mcp
with the actual path to your cloned repository.
Step 2: Restart & Test
- Restart your AI assistant
- Try: "List available Apple technologies"
- You should see 4 new tools available
- The server will automatically notify you if updates are available on startup
๐ฏ How to Use
Once configured, just talk naturally to your AI assistant. Here are examples:
Browse Available Technologies
"Use apple-doc-mcp to list all current Apple frameworks"
"Get the latest available Apple technologies from Apple's docs"
"Search Apple documentation for all available frameworks"
Explore a Framework
"Use apple-doc-mcp to browse SwiftUI framework structure"
"Get current UIKit topics from Apple documentation"
"Search Apple docs for Foundation framework details"
Search for Specific APIs
"Search Apple's SwiftUI docs for drag and drop APIs"
"Use apple-doc-mcp to find RPBroadcast* classes in ReplayKit"
"Look up current *View* symbols across Apple frameworks"
"Find all *Controller classes in UIKit using Apple docs"
Get Detailed Documentation
"Get the latest SwiftUI View protocol docs from Apple"
"Use apple-doc-mcp to look up UIViewController documentation"
"Search Apple's current docs for NSURLSession details"
The AI will automatically use the MCP tools to fetch current Apple documentation and provide comprehensive answers.
๐ ๏ธ Available Tools
list_technologies
Browse all available Apple frameworks and technologies.
get_documentation
Get detailed documentation for symbols or frameworks (automatically detects type).
path
(required): Documentation path (e.g., "documentation/SwiftUI/View") or framework name (e.g., "SwiftUI")
Examples:
{"path": "SwiftUI"}
{"path": "documentation/SwiftUI/View"}
{"path": "Foundation"}
search_symbols
Search for symbols across Apple frameworks with advanced filtering.
query
(required): Search query with wildcard supportframework
(optional): Search within specific frameworksymbolType
(optional): Filter by symbol type (class, protocol, struct, etc.)platform
(optional): Filter by platform (iOS, macOS, etc.)maxResults
(optional): Maximum results (default: 20)
Examples:
{"query": "RPBroadcast*"}
{"query": "*Controller", "framework": "UIKit"}
{"query": "*View*", "platform": "iOS", "maxResults": 5}
check_updates
Check for available updates from the git repository.
- No parameters required
- Shows current branch status, available updates, and update instructions
- Note: The server automatically checks for updates on startup and displays notifications
๐จ Troubleshooting
Server Won't Start
- Ensure Node.js 18+ is installed
- Verify the path in your MCP config points to the correct
dist/index.js
location - Check your MCP configuration syntax
- Restart your AI assistant after config changes
"0 tools" Showing Up
- This usually means the server isn't starting properly
- Check the file path in your configuration is correct and absolute
- The
dist
directory is included - no build step required - Try testing the server directly:
node /path/to/apple-doc-mcp/dist/index.js
No Results Found
- Try broader search terms
- Use wildcard patterns:
"*View*"
instead of"View"
- Remove filters to expand search scope
Performance Issues
- First search may be slower (builds cache)
- Subsequent searches are much faster
- Reduce
maxResults
for faster responses
โ๏ธ Technical Details
- 10-minute caching to avoid API rate limits
- 15-second timeouts for reliable performance
- Smart framework prioritization for faster searches
- Graceful error handling for robust operation
๐ Requirements
- Node.js: 18.0.0 or higher
- Memory: ~50MB RAM during operation
- Network: Internet connection to Apple's documentation API
๐ค Contributing
Found a bug or want to add a feature? Contributions welcome!
- Fork the repository
- Create a feature branch
- Submit a pull request
See CONTRIBUTING.md for detailed guidelines.