이 MCP로 할 수 있는 일
Searches application, game, and operating-system release notes and identifies changes, migration notes, security issues, and missing dependency updates.
도구
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'sort': {'enum': ['curated', 'popular'], 'type': 'string', 'description': '"popular" ranks by current audience popularity â\x80\x94 outside signals (stars, downloads, players) blended with this site\'s own readers â\x80\x94 and answers "what are the most popular software right now?". Default is the curated catalog order (or search relevance when query is set, which ignores sort).'}, 'query': {'type': 'string', 'maxLength': 64, 'description': 'Filter by name, e.g. "terminal" or "jetbrains".'}, 'category': {'enum': ['Developer Tools', 'Frameworks & Libraries', 'Languages & Runtimes', 'Infrastructure & DevOps', 'Databases & Data', 'Security & Privacy', 'Games', 'Gaming Tools', 'Operating Systems', 'System Utilities', 'Browsers', 'Communication', 'Media', 'Creative Tools', 'AI', 'Productivity', 'Lifestyle & Apps', 'Firmware', 'Drivers'], 'type': 'string', 'description': 'Limit results to one product category.'}}}
출력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['total', 'returned', 'products'], 'properties': {'total': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Matches before the cap.'}, 'products': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'name', 'vendor', 'category', 'description', 'url', 'homepage'], 'properties': {'url': {'type': 'string', 'description': "This product's page on What's New."}, 'name': {'type': 'string'}, 'slug': {'type': 'string'}, 'labels': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Provenance to keep with any quote, e.g. â\x80\x9cSample dataâ\x80\x9d.'}, 'vendor': {'type': 'string'}, 'license': {'type': 'string', 'description': "SPDX expression as the product's own source states it, e.g. MIT or LicenseRef-proprietary; absent when unknown."}, 'archived': {'type': 'boolean', 'description': 'Whether the upstream repository is archived; absent when unknown.'}, 'category': {'enum': ['Developer Tools', 'Frameworks & Libraries', 'Languages & Runtimes', 'Infrastructure & DevOps', 'Databases & Data', 'Security & Privacy', 'Games', 'Gaming Tools', 'Operating Systems', 'System Utilities', 'Browsers', 'Communication', 'Media', 'Creative Tools', 'AI', 'Productivity', 'Lifestyle & Apps', 'Firmware', 'Drivers'], 'type': 'string'}, 'homepage': {'type': 'string', 'description': "The vendor's own site."}, 'language': {'type': 'string'}, 'platforms': {'type': 'array', 'items': {'type': 'string'}}, 'description': {'type': 'string'}}, 'additionalProperties': False}}, 'returned': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'truncated': {'type': 'boolean', 'const': True}}, 'additionalProperties': False}
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['dependencies'], 'properties': {'dependencies': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'from'], 'properties': {'from': {'type': 'string', 'maxLength': 100, 'minLength': 1, 'description': "The version installed now â\x80\x94 a version, not a range: npm outdated's `current`, pip's `version`, go's `Version`."}, 'name': {'type': 'string', 'maxLength': 214, 'minLength': 1, 'description': 'The package as its ecosystem spells it: "better-auth", "@tanstack/react-query", a Maven "group:artifact", a Go module path, or an Action\'s "owner/repo@ref".'}, 'purl': {'type': 'string', 'pattern': '^[Pp][Kk][Gg]:', 'maxLength': 300, 'description': 'The package as a purl (package URL), e.g. "pkg:maven/com.squareup.okhttp3/okhttp", "pkg:golang/github.com/spf13/cobra" or "pkg:nuget/Newtonsoft.Json" â\x80\x94 what an SBOM, OSV or Renovate already names it by. Takes precedence over name and registry; a version inside it is ignored in favour of the versions passed beside it.'}, 'latest': {'type': 'string', 'maxLength': 100, 'minLength': 1, 'description': "The newest version published â\x80\x94 outdated's `latest`, pip's `latest_version`, go's `Update.Version`. Omit for everything tracked after `wanted` (or `from`)."}, 'wanted': {'type': 'string', 'maxLength': 100, 'minLength': 1, 'description': "The greatest version the declared range admits â\x80\x94 npm/pnpm outdated's `wanted`, what an update reaches without editing the manifest. Omit where the tool reports none."}, 'registry': {'enum': ['npm', 'pypi', 'crates', 'rubygems'], 'type': 'string', 'description': "Default npm â\x80\x94 unless purl, or the name's own shape (group:artifact, a Go module path), says otherwise."}, 'repository': {'type': 'string', 'maxLength': 300, 'description': "The package's source repository â\x80\x94 its package.json `repository`, or the repo a Maven or NuGet package is built from (any GitHub URL, github:owner/repo or owner/repo). Resolves scoped and renamed packages the name alone cannot, and makes the match exact."}}}, 'maxItems': 100, 'minItems': 1, 'description': 'Up to 100 per call; split a larger project.'}, 'recordMisses': {'type': 'boolean', 'description': 'Default true. A Maven, Go or NuGet package this server does not track is checked against deps.dev after the answer and counted per day, with nothing about the caller, to decide what to track next. Pass false for private packages.'}}}
출력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['summary', 'dependencies'], 'properties': {'notes': {'type': 'array', 'items': {'type': 'string'}}, 'summary': {'type': 'object', 'required': ['dependencies', 'tracked', 'behindInRange', 'withSecurity', 'cves'], 'properties': {'cves': {'type': 'array', 'items': {'type': 'string'}}, 'tracked': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'dependencies': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'withSecurity': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Dependencies missing a security release or a CVE fix in either interval.'}, 'behindInRange': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Dependencies with at least one release inside toWanted.'}}, 'additionalProperties': False}, 'dependencies': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'from', 'status'], 'properties': {'from': {'type': 'string'}, 'name': {'type': 'string'}, 'purl': {'type': 'string', 'description': 'The package as a versionless purl, as it was matched.'}, 'match': {'type': 'object', 'required': ['slug', 'name', 'vendor', 'url', 'tier', 'matchedKey'], 'properties': {'url': {'type': 'string', 'description': "The product's page on What's New."}, 'name': {'type': 'string'}, 'slug': {'type': 'string'}, 'tier': {'enum': ['identifier', 'namespace', 'name'], 'type': 'string', 'description': "identifier: a registry id, a purl or a repository the catalog tracks. namespace: the package sits under a namespace the product claims (a Maven group, say) â\x80\x94 the notes are the family's. name: a name-only guess â\x80\x94 check the product before trusting it, and pass purl or repository to make it exact."}, 'vendor': {'type': 'string'}, 'matchedKey': {'type': 'string'}}, 'additionalProperties': False}, 'notes': {'type': 'array', 'items': {'type': 'string'}, 'description': 'How the package was resolved.'}, 'latest': {'type': 'string'}, 'status': {'enum': ['ok', 'untracked'], 'type': 'string', 'description': 'untracked is not in the catalog.'}, 'wanted': {'type': 'string'}, 'registry': {'enum': ['npm', 'pypi', 'crates', 'rubygems'], 'type': 'string'}, 'toLatest': {'type': 'object', 'required': ['from', 'status', 'releases', 'unordered'], 'properties': {'to': {'type': 'object', 'required': ['label', 'tracked'], 'properties': {'url': {'type': 'string', 'description': "The release's page here, when tracked."}, 'date': {'type': 'string', 'description': 'ISO 8601, when tracked.'}, 'label': {'type': 'string'}, 'tracked': {'type': 'boolean', 'description': 'Whether this exact version is in the history we hold.'}}, 'description': 'Absent when the interval runs to the newest we track.', 'additionalProperties': False}, 'cost': {'type': 'object', 'required': ['majorBump', 'breakingMentions', 'removed', 'deprecated'], 'properties': {'removed': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'majorBump': {'type': 'boolean'}, 'deprecated': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'breakingMentions': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Releases whose notes say â\x80\x9cbreaking changeâ\x80\x9d.'}}, 'description': "What moving would cost â\x80\x94 deterministic signals, no model's reading. upgrade_notes has the vendor's own breaking and migration sections.", 'additionalProperties': False}, 'from': {'type': 'object', 'required': ['label', 'tracked'], 'properties': {'url': {'type': 'string', 'description': "The release's page here, when tracked."}, 'date': {'type': 'string', 'description': 'ISO 8601, when tracked.'}, 'label': {'type': 'string'}, 'tracked': {'type': 'boolean', 'description': 'Whether this exact version is in the history we hold.'}}, 'additionalProperties': False}, 'gain': {'type': 'object', 'required': ['security', 'fixed', 'cves', 'uncategorized'], 'properties': {'cves': {'type': 'array', 'items': {'type': 'string'}}, 'fixed': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Releases carrying a fix.'}, 'security': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Releases carrying a security change.'}, 'uncategorized': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Releases with no categorized changes â\x80\x94 not enriched, or notes that yielded none; they may hold fixes the counts miss.'}}, 'description': 'What the project is missing, counted over every release in the interval.', 'additionalProperties': False}, 'ahead': {'type': 'boolean', 'const': True, 'description': '`from` is newer than anything we track.'}, 'items': {'type': 'object', 'required': ['security', 'fixed'], 'properties': {'fixed': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'versions'], 'properties': {'text': {'type': 'string'}, 'versions': {'type': 'array', 'items': {'type': 'string'}, 'description': 'The versions that shipped it, newest first.'}, 'truncated': {'type': 'boolean', 'const': True, 'description': "Cut at the cap; the release's page has it whole."}, 'synthesized': {'type': 'boolean', 'const': True, 'description': 'Summarized from commit messages because the vendor published no notes.'}}, 'additionalProperties': False}}, 'security': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'versions'], 'properties': {'text': {'type': 'string'}, 'versions': {'type': 'array', 'items': {'type': 'string'}, 'description': 'The versions that shipped it, newest first.'}, 'truncated': {'type': 'boolean', 'const': True, 'description': "Cut at the cap; the release's page has it whole."}, 'synthesized': {'type': 'boolean', 'const': True, 'description': 'Summarized from commit messages because the vendor published no notes.'}}, 'additionalProperties': False}}}, 'description': 'A sample of the changes themselves, security first.', 'additionalProperties': False}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'status': {'enum': ['ok', 'unversioned', 'unreadable', 'unplaceable', 'same', 'reversed', 'unorderable'], 'type': 'string', 'description': 'ok answers; unreadable is a version the grammar cannot read (a range is not a version); unversioned is a source whose notes carry no numbers; the rest name why the pair has no interval.'}, 'releases': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Releases numbered inside the interval.'}, 'truncated': {'type': 'boolean', 'const': True, 'description': '`from` sits below the history we hold, so every count is a lower bound.'}, 'unordered': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Rows the comparator could not place against it.'}, 'compareUrl': {'type': 'string', 'description': "The interval as one page on What's New."}, 'itemsTruncated': {'type': 'boolean', 'const': True, 'description': 'More security or fixed items exist than are listed; compareUrl or upgrade_notes has them all.'}, 'compareMarkdownUrl': {'type': 'string', 'description': "The same interval as markdown, with every release's notes."}}, 'description': 'wanted (or from) â\x86\x92 latest: what needs the range changed. Absent when wanted was passed without latest, or equals it.', 'additionalProperties': False}, 'toWanted': {'type': 'object', 'required': ['from', 'status', 'releases', 'unordered'], 'properties': {'to': {'type': 'object', 'required': ['label', 'tracked'], 'properties': {'url': {'type': 'string', 'description': "The release's page here, when tracked."}, 'date': {'type': 'string', 'description': 'ISO 8601, when tracked.'}, 'label': {'type': 'string'}, 'tracked': {'type': 'boolean', 'description': 'Whether this exact version is in the history we hold.'}}, 'description': 'Absent when the interval runs to the newest we track.', 'additionalProperties': False}, 'cost': {'type': 'object', 'required': ['majorBump', 'breakingMentions', 'removed', 'deprecated'], 'properties': {'removed': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'majorBump': {'type': 'boolean'}, 'deprecated': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'breakingMentions': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Releases whose notes say â\x80\x9cbreaking changeâ\x80\x9d.'}}, 'description': "What moving would cost â\x80\x94 deterministic signals, no model's reading. upgrade_notes has the vendor's own breaking and migration sections.", 'additionalProperties': False}, 'from': {'type': 'object', 'required': ['label', 'tracked'], 'properties': {'url': {'type': 'string', 'description': "The release's page here, when tracked."}, 'date': {'type': 'string', 'description': 'ISO 8601, when tracked.'}, 'label': {'type': 'string'}, 'tracked': {'type': 'boolean', 'description': 'Whether this exact version is in the history we hold.'}}, 'additionalProperties': False}, 'gain': {'type': 'object', 'required': ['security', 'fixed', 'cves', 'uncategorized'], 'properties': {'cves': {'type': 'array', 'items': {'type': 'string'}}, 'fixed': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Releases carrying a fix.'}, 'security': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Releases carrying a security change.'}, 'uncategorized': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Releases with no categorized changes â\x80\x94 not enriched, or notes that yielded none; they may hold fixes the counts miss.'}}, 'description': 'What the project is missing, counted over every release in the interval.', 'additionalProperties': False}, 'ahead': {'type': 'boolean', 'const': True, 'description': '`from` is newer than anything we track.'}, 'items': {'type': 'object', 'required': ['security', 'fixed'], 'properties': {'fixed': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'versions'], 'properties': {'text': {'type': 'string'}, 'versions': {'type': 'array', 'items': {'type': 'string'}, 'description': 'The versions that shipped it, newest first.'}, 'truncated': {'type': 'boolean', 'const': True, 'description': "Cut at the cap; the release's page has it whole."}, 'synthesized': {'type': 'boolean', 'const': True, 'description': 'Summarized from commit messages because the vendor published no notes.'}}, 'additionalProperties': False}}, 'security': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'versions'], 'properties': {'text': {'type': 'string'}, 'versions': {'type': 'array', 'items': {'type': 'string'}, 'description': 'The versions that shipped it, newest first.'}, 'truncated': {'type': 'boolean', 'const': True, 'description': "Cut at the cap; the release's page has it whole."}, 'synthesized': {'type': 'boolean', 'const': True, 'description': 'Summarized from commit messages because the vendor published no notes.'}}, 'additionalProperties': False}}}, 'description': 'A sample of the changes themselves, security first.', 'additionalProperties': False}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'status': {'enum': ['ok', 'unversioned', 'unreadable', 'unplaceable', 'same', 'reversed', 'unorderable'], 'type': 'string', 'description': 'ok answers; unreadable is a version the grammar cannot read (a range is not a version); unversioned is a source whose notes carry no numbers; the rest name why the pair has no interval.'}, 'releases': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Releases numbered inside the interval.'}, 'truncated': {'type': 'boolean', 'const': True, 'description': '`from` sits below the history we hold, so every count is a lower bound.'}, 'unordered': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Rows the comparator could not place against it.'}, 'compareUrl': {'type': 'string', 'description': "The interval as one page on What's New."}, 'itemsTruncated': {'type': 'boolean', 'const': True, 'description': 'More security or fixed items exist than are listed; compareUrl or upgrade_notes has them all.'}, 'compareMarkdownUrl': {'type': 'string', 'description': "The same interval as markdown, with every release's notes."}}, 'description': 'from â\x86\x92 wanted: what an update within the declared range would bring. Present when wanted was passed.', 'additionalProperties': False}}, 'additionalProperties': False}, 'description': 'Most exposed first â\x80\x94 CVEs, then security releases, then fixes, then releases behind; untracked last, in the order given.'}}, 'additionalProperties': False}
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['query'], 'properties': {'query': {'type': 'string', 'maxLength': 200, 'description': 'Search products and release notes. At least 2 characters.'}, 'category': {'enum': ['Developer Tools', 'Frameworks & Libraries', 'Languages & Runtimes', 'Infrastructure & DevOps', 'Databases & Data', 'Security & Privacy', 'Games', 'Gaming Tools', 'Operating Systems', 'System Utilities', 'Browsers', 'Communication', 'Media', 'Creative Tools', 'AI', 'Productivity', 'Lifestyle & Apps', 'Firmware', 'Drivers'], 'type': 'string', 'description': 'Limit results to one product category.'}}}
출력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['query', 'products', 'releases'], 'properties': {'note': {'type': 'string', 'description': 'Present when nothing matched.'}, 'query': {'type': 'string', 'description': 'The query as searched â\x80\x94 trimmed and capped.'}, 'category': {'enum': ['Developer Tools', 'Frameworks & Libraries', 'Languages & Runtimes', 'Infrastructure & DevOps', 'Databases & Data', 'Security & Privacy', 'Games', 'Gaming Tools', 'Operating Systems', 'System Utilities', 'Browsers', 'Communication', 'Media', 'Creative Tools', 'AI', 'Productivity', 'Lifestyle & Apps', 'Firmware', 'Drivers'], 'type': 'string', 'description': 'Limit results to one product category.'}, 'products': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'name', 'vendor', 'category', 'description', 'url', 'homepage'], 'properties': {'url': {'type': 'string', 'description': "This product's page on What's New."}, 'name': {'type': 'string'}, 'slug': {'type': 'string'}, 'labels': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Provenance to keep with any quote, e.g. â\x80\x9cSample dataâ\x80\x9d.'}, 'vendor': {'type': 'string'}, 'license': {'type': 'string', 'description': "SPDX expression as the product's own source states it, e.g. MIT or LicenseRef-proprietary; absent when unknown."}, 'archived': {'type': 'boolean', 'description': 'Whether the upstream repository is archived; absent when unknown.'}, 'category': {'enum': ['Developer Tools', 'Frameworks & Libraries', 'Languages & Runtimes', 'Infrastructure & DevOps', 'Databases & Data', 'Security & Privacy', 'Games', 'Gaming Tools', 'Operating Systems', 'System Utilities', 'Browsers', 'Communication', 'Media', 'Creative Tools', 'AI', 'Productivity', 'Lifestyle & Apps', 'Firmware', 'Drivers'], 'type': 'string'}, 'homepage': {'type': 'string', 'description': "The vendor's own site."}, 'language': {'type': 'string'}, 'platforms': {'type': 'array', 'items': {'type': 'string'}}, 'description': {'type': 'string'}}, 'additionalProperties': False}}, 'releases': {'type': 'array', 'items': {'type': 'object', 'required': ['title', 'date', 'url', 'sourceUrl', 'product'], 'properties': {'url': {'type': 'string', 'description': "This release's page on What's New."}, 'date': {'type': 'string', 'description': 'ISO 8601 timestamp.'}, 'title': {'type': 'string'}, 'labels': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Provenance to keep with any quote, e.g. â\x80\x9cPre-releaseâ\x80\x9d.'}, 'changes': {'type': 'array', 'items': {'type': 'object', 'required': ['category', 'text'], 'properties': {'text': {'type': 'string'}, 'category': {'enum': ['added', 'changed', 'fixed', 'removed', 'deprecated', 'security'], 'type': 'string'}}, 'additionalProperties': False}}, 'channel': {'type': 'string', 'description': "The source's own classification, e.g. â\x80\x9clongtermâ\x80\x9d."}, 'product': {'type': 'object', 'required': ['slug', 'name'], 'properties': {'name': {'type': 'string'}, 'slug': {'type': 'string'}}, 'additionalProperties': False}, 'summary': {'type': 'string'}, 'version': {'type': 'string'}, 'sourceUrl': {'type': 'string', 'description': "The vendor's own release notes."}, 'prerelease': {'type': 'boolean', 'const': True}}, 'additionalProperties': False}}}, 'additionalProperties': False}
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['dependencies'], 'properties': {'dependencies': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'from'], 'properties': {'to': {'type': 'string', 'maxLength': 100, 'minLength': 1, 'description': 'The version being moved to. Omit for everything after `from` that is tracked.'}, 'from': {'type': 'string', 'maxLength': 100, 'minLength': 1, 'description': 'The version installed now â\x80\x94 a version, not a range: read it from the lockfile.'}, 'name': {'type': 'string', 'maxLength': 214, 'minLength': 1, 'description': 'The package as its ecosystem spells it: "better-auth", "@tanstack/react-query", a Maven "group:artifact", a Go module path, or an Action\'s "owner/repo@ref".'}, 'purl': {'type': 'string', 'pattern': '^[Pp][Kk][Gg]:', 'maxLength': 300, 'description': 'The package as a purl (package URL), e.g. "pkg:maven/com.squareup.okhttp3/okhttp", "pkg:golang/github.com/spf13/cobra" or "pkg:nuget/Newtonsoft.Json" â\x80\x94 what an SBOM, OSV or Renovate already names it by. Takes precedence over name and registry; a version inside it is ignored in favour of the versions passed beside it.'}, 'registry': {'enum': ['npm', 'pypi', 'crates', 'rubygems'], 'type': 'string', 'description': "Default npm â\x80\x94 unless purl, or the name's own shape (group:artifact, a Go module path), says otherwise."}, 'repository': {'type': 'string', 'maxLength': 300, 'description': "The package's source repository â\x80\x94 its package.json `repository`, or the repo a Maven or NuGet package is built from (any GitHub URL, github:owner/repo or owner/repo). Resolves scoped and renamed packages the name alone cannot, and makes the match exact."}}}, 'maxItems': 20, 'minItems': 1, 'description': 'Up to 20 per call; split a larger upgrade.'}, 'recordMisses': {'type': 'boolean', 'description': 'Default true. A Maven, Go or NuGet package this server does not track is checked against deps.dev after the answer and counted per day, with nothing about the caller, to decide what to track next. Pass false for private packages.'}}}
출력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['dependencies'], 'properties': {'notes': {'type': 'array', 'items': {'type': 'string'}}, 'dependencies': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'from', 'status'], 'properties': {'to': {'type': 'string'}, 'from': {'type': 'string'}, 'name': {'type': 'string'}, 'purl': {'type': 'string', 'description': 'The package as a versionless purl, as it was matched.'}, 'match': {'type': 'object', 'required': ['slug', 'name', 'vendor', 'url', 'tier', 'matchedKey'], 'properties': {'url': {'type': 'string', 'description': "The product's page on What's New."}, 'name': {'type': 'string'}, 'slug': {'type': 'string'}, 'tier': {'enum': ['identifier', 'namespace', 'name'], 'type': 'string', 'description': "identifier: a registry id, a purl or a repository the catalog tracks. namespace: the package sits under a namespace the product claims (a Maven group, say) â\x80\x94 the notes are the family's. name: a name-only guess â\x80\x94 check the product before trusting it, and pass purl or repository to make it exact."}, 'vendor': {'type': 'string'}, 'matchedKey': {'type': 'string'}}, 'additionalProperties': False}, 'notes': {'type': 'array', 'items': {'type': 'string'}, 'description': 'How the package and its versions were resolved, and what was cut.'}, 'status': {'enum': ['ok', 'untracked', 'unreadable', 'unversioned', 'unplaceable', 'same', 'reversed', 'unorderable'], 'type': 'string', 'description': 'ok answers; untracked is not in the catalog; unreadable is a from/to the version grammar cannot read (a range is not a version); the rest name why the pair has no interval.'}, 'changes': {'type': 'array', 'items': {'type': 'object', 'required': ['category', 'items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'versions'], 'properties': {'text': {'type': 'string'}, 'versions': {'type': 'array', 'items': {'type': 'string'}, 'description': 'The versions that shipped it, newest first â\x80\x94 several when a fix landed on more than one branch.'}, 'synthesized': {'type': 'boolean', 'const': True, 'description': 'Summarized from commit messages because the vendor published no notes.'}}, 'additionalProperties': False}}, 'category': {'enum': ['added', 'changed', 'fixed', 'removed', 'deprecated', 'security'], 'type': 'string'}}, 'additionalProperties': False}, 'description': 'Every categorized change across the interval, merged across releases, removed/deprecated/security first.'}, 'signals': {'type': 'object', 'required': ['majorBump', 'breakingMentions', 'removed', 'deprecated', 'security', 'cves'], 'properties': {'cves': {'type': 'array', 'items': {'type': 'string'}}, 'removed': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'security': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'majorBump': {'type': 'boolean'}, 'deprecated': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'breakingMentions': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}}, 'description': "Deterministic, over every release in the interval: a SemVer major bump, Keep a Changelog removed/deprecated/security items, the vendor's literal â\x80\x9cbreakingâ\x80\x9d wording, CVE ids. No model judged anything.", 'additionalProperties': False}, 'interval': {'type': 'object', 'required': ['from', 'releases', 'unordered'], 'properties': {'to': {'type': 'object', 'required': ['label', 'tracked'], 'properties': {'url': {'type': 'string', 'description': "The release's page here, when tracked."}, 'date': {'type': 'string', 'description': 'ISO 8601, when tracked.'}, 'label': {'type': 'string'}, 'tracked': {'type': 'boolean', 'description': 'Whether this exact version is in the history we hold.'}}, 'description': 'Absent when the call named no `to`.', 'additionalProperties': False}, 'from': {'type': 'object', 'required': ['label', 'tracked'], 'properties': {'url': {'type': 'string', 'description': "The release's page here, when tracked."}, 'date': {'type': 'string', 'description': 'ISO 8601, when tracked.'}, 'label': {'type': 'string'}, 'tracked': {'type': 'boolean', 'description': 'Whether this exact version is in the history we hold.'}}, 'additionalProperties': False}, 'ahead': {'type': 'boolean', 'const': True, 'description': '`from` is newer than anything we track.'}, 'newest': {'type': 'string', 'description': 'The newest version we hold.'}, 'oldest': {'type': 'string', 'description': 'The oldest version we hold.'}, 'releases': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Releases numbered inside the interval.'}, 'truncated': {'type': 'boolean', 'const': True, 'description': '`from` sits below the history we hold, so `releases` is a lower bound.'}, 'unordered': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Rows the comparator could not place against it.'}}, 'additionalProperties': False}, 'registry': {'enum': ['npm', 'pypi', 'crates', 'rubygems'], 'type': 'string', 'description': 'The registry, when the package is in one of these four; absent for a Maven, Go, NuGet or Actions package.'}, 'releases': {'type': 'array', 'items': {'type': 'object', 'required': ['version', 'title', 'date', 'url'], 'properties': {'url': {'type': 'string', 'description': "This release's page on What's New."}, 'date': {'type': 'string', 'description': 'ISO 8601 timestamp.'}, 'title': {'type': 'string'}, 'cveIds': {'type': 'array', 'items': {'type': 'string'}}, 'labels': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Provenance to keep with any quote, e.g. â\x80\x9cSample dataâ\x80\x9d.'}, 'removed': {'type': 'boolean', 'const': True}, 'version': {'type': 'string'}, 'sections': {'type': 'array', 'items': {'type': 'object', 'required': ['key', 'heading', 'text'], 'properties': {'key': {'enum': ['breaking', 'security', 'deprecated', 'migration'], 'type': 'string'}, 'text': {'type': 'string', 'description': "Verbatim from the vendor's notes."}, 'under': {'type': 'string', 'description': "The heading this section sits under â\x80\x94 in a monorepo's release note, the package it is about."}, 'heading': {'type': 'string'}, 'truncated': {'type': 'boolean', 'const': True, 'description': "Cut at the cap; the release's permalink has it whole."}}, 'additionalProperties': False}, 'description': 'What the vendor filed under its own breaking / security / deprecation / migration headings.'}, 'security': {'type': 'boolean', 'const': True}, 'sourceUrl': {'type': 'string', 'description': "The vendor's own release notes; present when the notes were read."}, 'deprecated': {'type': 'boolean', 'const': True}, 'notesOmitted': {'type': 'boolean', 'const': True, 'description': 'Past the per-call body budget: listed by version only; the permalink has the notes.'}, 'breakingMention': {'type': 'boolean', 'const': True, 'description': "The vendor's own words say â\x80\x9cbreaking changeâ\x80\x9d."}, 'sectionsOmitted': {'type': 'boolean', 'const': True, 'description': 'A budget cut a section or left one out; the permalink has them all.'}}, 'additionalProperties': False}, 'description': 'Newest first.'}, 'compareUrl': {'type': 'string', 'description': "The interval as one page on What's New."}, 'uncategorized': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Versions in the interval with no categorized changes.'}, 'changesTruncated': {'type': 'boolean', 'const': True}, 'compareMarkdownUrl': {'type': 'string', 'description': "The same interval as markdown, with every release's notes."}}, 'additionalProperties': False}}}, 'additionalProperties': False}
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['product'], 'properties': {'limit': {'type': 'integer', 'maximum': 25, 'minimum': 1, 'description': 'Releases to return, default 10.'}, 'product': {'type': 'string', 'maxLength': 100, 'minLength': 1, 'description': 'Product slug or name, e.g. "next-js" or "Next.js".'}, 'since_version': {'type': 'string', 'maxLength': 100, 'description': 'The version you run. Returns only the releases above it in the history, matched exactly or as the same version spelled with fewer trailing zeros. A version we do not hold is reported as a miss rather than guessed into an ordering.'}}}
출력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['product', 'returned', 'releases'], 'properties': {'notes': {'type': 'array', 'items': {'type': 'string'}, 'description': 'How the product or the version was resolved.'}, 'product': {'type': 'object', 'required': ['slug', 'name', 'vendor', 'category', 'description', 'url', 'homepage'], 'properties': {'url': {'type': 'string', 'description': "This product's page on What's New."}, 'name': {'type': 'string'}, 'slug': {'type': 'string'}, 'labels': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Provenance to keep with any quote, e.g. â\x80\x9cSample dataâ\x80\x9d.'}, 'vendor': {'type': 'string'}, 'license': {'type': 'string', 'description': "SPDX expression as the product's own source states it, e.g. MIT or LicenseRef-proprietary; absent when unknown."}, 'archived': {'type': 'boolean', 'description': 'Whether the upstream repository is archived; absent when unknown.'}, 'category': {'enum': ['Developer Tools', 'Frameworks & Libraries', 'Languages & Runtimes', 'Infrastructure & DevOps', 'Databases & Data', 'Security & Privacy', 'Games', 'Gaming Tools', 'Operating Systems', 'System Utilities', 'Browsers', 'Communication', 'Media', 'Creative Tools', 'AI', 'Productivity', 'Lifestyle & Apps', 'Firmware', 'Drivers'], 'type': 'string'}, 'homepage': {'type': 'string', 'description': "The vendor's own site."}, 'language': {'type': 'string'}, 'platforms': {'type': 'array', 'items': {'type': 'string'}}, 'description': {'type': 'string'}}, 'additionalProperties': False}, 'releases': {'type': 'array', 'items': {'type': 'object', 'required': ['title', 'date', 'url', 'sourceUrl'], 'properties': {'url': {'type': 'string', 'description': "This release's page on What's New."}, 'body': {'type': 'string'}, 'date': {'type': 'string', 'description': 'ISO 8601 timestamp.'}, 'title': {'type': 'string'}, 'labels': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Provenance to keep with any quote, e.g. â\x80\x9cPre-releaseâ\x80\x9d.'}, 'changes': {'type': 'array', 'items': {'type': 'object', 'required': ['category', 'text'], 'properties': {'text': {'type': 'string'}, 'category': {'enum': ['added', 'changed', 'fixed', 'removed', 'deprecated', 'security'], 'type': 'string'}}, 'additionalProperties': False}}, 'channel': {'type': 'string', 'description': "The source's own classification, e.g. â\x80\x9clongtermâ\x80\x9d."}, 'summary': {'type': 'string'}, 'version': {'type': 'string'}, 'sourceUrl': {'type': 'string', 'description': "The vendor's own release notes."}, 'prerelease': {'type': 'boolean', 'const': True}, 'bodyTruncated': {'type': 'boolean', 'const': True, 'description': 'The body was cut at the cap; the permalink has it all.'}}, 'additionalProperties': False}}, 'returned': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'truncated': {'type': 'boolean', 'const': True}, 'newerCount': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Releases above the pinned version, before the limit.'}, 'changeCounts': {'type': 'object', 'description': 'Change items across the whole span, even when truncated.', 'propertyNames': {'enum': ['added', 'changed', 'fixed', 'removed', 'deprecated', 'security'], 'type': 'string'}, 'additionalProperties': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}}, 'sinceVersion': {'type': 'string', 'description': 'The version you passed.'}, 'sinceVersionFound': {'type': 'boolean', 'description': 'Whether that version was found in the history. False means the releases below are the latest, not the ones after yours.'}}, 'additionalProperties': False}
최근 도구 변경
유사한 MCP 서버
cypher-mcp
Provides named Cypher graph queries and code-orientation tools for tracing capabilities, symbols, invariants, provenance, changes…
canton-ccpedia
Searches and explains Canton Network and Daml documentation, governance proposals, forums, code examples, APIs, releases, and eco…
ALM X++ MCP Server
Supports D365 Finance and Operations development with X++ and AOT search, code analysis, Azure DevOps workflows, telemetry querie…
Kaiku
Manages team issues, comments, attachments, projects, wiki pages, and related development workflows.
api-evangelist
Provides API governance analysis, OpenAPI overlays and version diffs, security-sensitive field classification, code samples, matu…
Forge Engine
Manages software design specifications, systems, milestones, tasks, code mappings, project decisions, UI screens, and implementat…
Avalanche AVAX MCP
Searches and retrieves Avalanche documentation, community proposals, CLI guidance, Builder Console workflows, blockchain identifi…
Github
Reads public GitHub repository files, releases, commits, issues, repository metadata, user profiles, and trending repositories.