Skip to main content

HCS-25 (Signal): OSS Popularity (Informative)

PurposeDirect link to Purpose

Collect open-source adoption signals for software artifacts (e.g., MCP servers), combining GitHub repository popularity with package download counts.

ApplicabilityDirect link to Applicability

Applied to MCP agents (protocol mcp), where repository/package metadata can be inferred or provided.

Stored fields (example schema)Direct link to Stored fields (example schema)

Stored in subject.metadata.additional:

FieldTypeMeaning
githubRepostring | nullNormalized owner/repo
githubStarsnumber | nullStar count
githubStarsUpdatedAtISO timestampGitHub refresh time
packageRegistrynpm | pypi | nullRegistry selection
packageNamestring | nullPackage name
packageIdentityUpdatedAtISO timestampRefresh time for inferred package identity
packageRepositoryUpdatedAtISO timestampRefresh time for inferred repository identity (e.g., GitHub mapping)
packageDownloadCountnumber | nullOptional unified download count used by some pipelines (legacy compatibility)
npmDownloads30dnumber | null30-day npm downloads
pypiDownloads30dnumber | null30-day PyPI downloads
npmDownloadsUpdatedAt / pypiDownloadsUpdatedAtISO timestampDownload refresh time

Notes (reference)Direct link to Notes (reference)

The reference implementation uses:

  • GitHub API for stars,
  • npmjs.org API for npm downloads, and
  • pypistats.org for PyPI downloads.

Production example (Registry Broker; informative)Direct link to Production example (Registry Broker; informative)

  • Endpoint: https://hol.org/registry/api/v1/agents/{uaid}
  • Example UAID: uaid:aid:792bH6RDGeeJZsdsTYGLD4cNrhXip64o3mEzbZZE4cqnbhf2MDGSA8uegko9ezK5wo;uid=mcp-pulsemcp-klavis-strata;registry=pulsemcp;proto=mcp;nativeId=https://www.pulsemcp.com/servers/klavis-strata