spm-search-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_swift_packagesA | Search the Swift Package Index for packages matching your criteria. This is a QUERY tool — read-only, safe to call multiple times. At least one parameter must be provided. Parameters are combined with AND logic. Args: query: Free-text search (e.g. "networking", "json parsing"). author: Filter by repository owner (e.g. "apple", "vapor"). Prefix with "!" to exclude (e.g. "!vapor"). keyword: Filter by package keyword tag (e.g. "server", "ui"). Prefix with "!" to exclude (e.g. "!deprecated"). min_stars: Minimum GitHub star count (e.g. 100, 1000). max_stars: Maximum GitHub star count. platforms: Filter by compatible platform(s). Multiple = AND (must support all). Valid: ios, macos, watchos, tvos, visionos, linux. license_filter: License filter. Use "compatible" for App Store compatible, or a specific SPDX ID like "mit", "apache-2.0", "lgpl-2.1". Prefix with "!" to exclude (e.g. "!gpl-3.0"). last_activity_after: ISO8601 date (YYYY-MM-DD). Only packages with maintenance activity after this date. Example: "2024-01-01". last_activity_before: ISO8601 date (YYYY-MM-DD). Only packages with maintenance activity before this date. Combine with last_activity_after for a date window. last_commit_after: ISO8601 date (YYYY-MM-DD). Only packages with commits after this date. last_commit_before: ISO8601 date (YYYY-MM-DD). Only packages with commits before this date. Combine with last_commit_after for a date window. product_type: Filter by product type: library, executable, plugin, or macro. page: Page number for pagination (default 1). Check has_more in the response. If you are unsure what values are valid for platforms or product_type, call list_search_filters() first. After getting results, use get_package_readme(owner, repo) to read the README of any package that looks interesting. |
| list_search_filtersA | Return all valid values for the constrained parameters of search_swift_packages. This is a DISCOVERY tool — call this first if you are unsure what values are accepted for the platforms or product_type parameters. Returns a dict with keys 'platforms' and 'product_types', each containing the list of accepted string values. |
| get_package_readmeA | Fetch the README of a Swift package from GitHub. This is a QUERY tool — read-only, safe to call multiple times. Use this after search_swift_packages to get details about a specific package. The owner and repo values come from search results (e.g. "apple" and "swift-nio"). Args: owner: GitHub repository owner (user or org). Example: "Alamofire". repo: GitHub repository name. Example: "Alamofire". max_length: Maximum characters to return (default 4000). Set to 0 for full content. Larger values use more tokens. Returns the README content as markdown. If the README is longer than max_length, it is truncated with a note about the full length. After reading the README, you can suggest the package to the user with its Swift Package Index URL: https://swiftpackageindex.com/{owner}/{repo} |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
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/detailobsessed/spm-search'
If you have feedback or need assistance with the MCP directory API, please join our Discord server