sosumi.ai
Converts Apple Developer documentation, HIG, WWDC transcripts, and external Swift-DocC pages into Markdown for AI consumption via MCP tools and HTTP API.
README
sosumi.ai
Making Apple docs AI-readable.
sosumi.ai provides Apple Developer documentation in an AI-readable format by converting JavaScript-rendered pages into Markdown.
Usage
HTTP API
Replace developer.apple.com with sosumi.ai
in any Apple Developer documentation URL:
Original:
https://developer.apple.com/documentation/swift/array
AI-readable:
https://sosumi.ai/documentation/swift/array
This works for all API reference docs, as well as Apple's Human Interface Guidelines (HIG).
WWDC session transcripts are also supported by replacing the same host for video URLs:
Original:
https://developer.apple.com/videos/play/wwdc2021/10133/
AI-readable:
https://sosumi.ai/videos/play/wwdc2021/10133
Sosumi can also proxy public non-Apple Swift-DocC pages using:
Original:
https://apple.github.io/swift-argument-parser/documentation/argumentparser
AI-readable:
https://sosumi.ai/external/https://apple.github.io/swift-argument-parser/documentation/argumentparser
[!NOTE] Sosumi resolves the URL to the site's underlying DocC JSON endpoint and renders Markdown, preserving any base path from the original URL. External hosts can opt out via
robots.txtby disallowing user-agentsosumi-ai(full UA:sosumi-ai/1.0 (+https://sosumi.ai/#bot)). See/botfor the crawler policy and contact details.
MCP Integration
Sosumi's MCP server supports Streamable HTTP and Server-Sent Events (SSE) transport.
If your client supports either of these,
configure it to connect directly to https://sosumi.ai/mcp.
Otherwise, you can run this command to proxy over stdio:
{
"mcpServers": {
"sosumi": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://sosumi.ai/mcp"]
}
}
}
See the website for client-specific instructions.
Available Tools
-
searchAppleDocumentation- Searches Apple Developer documentation- Parameters:
query(string) - Returns structured results with titles, URLs, descriptions, breadcrumbs, and tags
- Parameters:
-
fetchAppleDocumentation- Fetches Apple Developer documentation and Human Interface Guidelines by path- Parameters:
path(string) - Documentation path (e.g., '/documentation/swift', '/documentation/swiftui/view', '/design/human-interface-guidelines/foundations/color') - Returns content as Markdown
- Parameters:
-
fetchAppleVideoTranscript- Fetches video transcripts, including WWDC sessions- Parameters:
path(string) - video path (e.g.,/videos/play/wwdc2021/10133) - Returns transcript content as Markdown
- Parameters:
-
fetchExternalDocumentation- Fetches external Swift-DocC documentation by absolute HTTPS URL- Parameters:
url(string) - External URL (e.g.,https://apple.github.io/swift-argument-parser/documentation/argumentparser) - Returns content as Markdown
- Parameters:
CLI
Sosumi also provides a CLI that complements MCP:
npx @nshipster/sosumi fetch https://developer.apple.com/documentation/swift/array
If you use it regularly, install once:
npm i -g @nshipster/sosumi
Then use sosumi directly:
sosumi fetch https://developer.apple.com/documentation/swift/array
You can fetch all content types covered by MCP tools:
# Apple documentation / HIG / videos
sosumi fetch /documentation/swift/array
sosumi fetch /design/human-interface-guidelines/color
sosumi fetch /videos/play/wwdc2021/10133
# External Swift-DocC pages
sosumi fetch https://apple.github.io/swift-argument-parser/documentation/argumentparser
# Apple documentation search
sosumi search "SwiftData"
Run a local server from the published package:
sosumi serve
sosumi serve --port 8787
By default, output is plain text / Markdown. Use JSON output for scripts:
sosumi fetch https://developer.apple.com/documentation/swift/array --json
sosumi search "SwiftData" --json
AI Agent Skill
Want your AI coding assistant to use Sosumi consistently?
Use the hosted skill file:
https://sosumi.ai/SKILL.md
Spec-compliant clients can also install it with:
npx skills add https://sosumi.ai
Chrome Extension
You can also use Sosumi from a community-contributed Chrome extension, which adds a "Copy sosumi Link" button to Apple Developer documentation pages. Source code is available on GitHub.
Self-Hosting
This project is designed to be easily run on your own machine or deployed to a hosting provider.
Sosumi.ai is currently hosted by Cloudflare Workers.
[!NOTE]
The application is built with Hono, making it compatible with various runtimes.See the Hono docs for more information about deploying to different platforms.
Prerequisites
- Node.js 20+
- npm
Quick Start
-
Clone the repository:
git clone https://github.com/nshipster/sosumi.ai.git cd sosumi.ai -
Install dependencies:
npm install -
Start development server:
npm run dev
Once the application is up and running, press the <kbd>b</kbd> to open the URL in your browser.
To configure MCP clients to use your development server,
replace sosumi.ai with the local server address
(http://localhost:8787 by default).
External Host Restrictions
You can restrict which external Swift-DocC hosts are reachable with two environment variables (both newline-delimited):
EXTERNAL_DOC_HOST_ALLOWLIST— only listed hosts are permittedEXTERNAL_DOC_HOST_BLOCKLIST— listed hosts are always denied
[!IMPORTANT] Hostname-based private-network checks cannot fully prevent DNS rebinding. Set an explicit
EXTERNAL_DOC_HOST_ALLOWLISTin production.
Development
Testing
This project uses vitest for unit and integration testing.
npm run test # Run tests
npm run test:ui # Run tests with UI
npm run test:run # Run tests once
[!TIP] When running the CLI through npm scripts during local development, use
-s(--silent) to suppress npm's script preamble so output pipes cleanly:npm run -s cli -- fetch https://developer.apple.com/documentation/swift/array | bat -l md
Code Quality
This project uses Biome for code formatting, linting, and import organization.
npm run format- Format all code filesnpm run lint- Lint and fix code issuesnpm run check- Format, lint, and organize imports (recommended)npm run check:ci- Check code without making changes (for CI)
Editor Integration
For the best development experience, install the Biome extension for your editor:
Cloudflare Workers
Whenever you update your wrangler.toml or change your Worker bindings,
be sure to re-run:
npm run cf-typegen
Publishing
Publishing is handled by .github/workflows/release.yml.
- Trigger: pushed tags matching
v*or manual dispatch withtag - Release step:
gh release create "$TAG_NAME" --generate-notes - Publish auth: npm trusted publishing via OIDC (
id-token: write) - Publish command:
npm publish --provenance --access public
License
This project is available under the MIT license. See the LICENSE file for more info.
Legal
This is an unofficial, independent project and is not affiliated with or endorsed by Apple Inc. "Apple", "Xcode", and related marks are trademarks of Apple Inc.
This service is an accessibility-first, on‑demand renderer. It converts a single Apple Developer page to Markdown only when requested by a user. It does not crawl, spider, or bulk download; it does not attempt to bypass authentication or security; and it implements rate limiting to avoid imposing unreasonable load.
For external Swift-DocC hosts, access can be denied by robots.txt
and opt-out response directives such as X-Robots-Tag: noai.
Content is fetched transiently and may be cached briefly to improve performance. No permanent archives are maintained. All copyrights and other rights in the underlying content remain with Apple Inc. Each page links back to the original source.
Your use of this service must comply with Apple's Terms of Use and applicable law. You are solely responsible for how you access and use Apple's content through this tool. Do not use this service to circumvent technical measures or for redistribution.
Contact: info@sosumi.ai
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。