MSP-1 Specification
discovery
The discovery term declares the canonical well-known endpoint used to locate a site's MSP-1 declaration.
1. Purpose
The discovery term provides a deterministic way to identify the canonical MSP-1 well-known endpoint for a site.
Discovery allows agents, validators, and implementation tools to locate MSP-1 metadata without guessing alternate filenames or endpoint locations. It identifies where MSP-1 metadata is located, but it does not by itself establish correctness, authority, trust, or verification.
2. Definition
A discovery declaration is an object containing the canonical well-known path and a boolean confirmation that the path is canonical for MSP-1 discovery.
The canonical MSP-1 v1.0.1 object form requires wellKnown and canonical. Both fields are constrained to fixed values.
3. Required fields
- wellKnown — required. The canonical root-relative path to the site's MSP-1 well-known declaration. This value is constrained to
/.well-known/msp.json. - canonical — required. Boolean confirmation that the declared well-known path is the canonical MSP-1 discovery endpoint. This value is constrained to
true.
4. Usage guidance
- Discovery should point to the canonical MSP-1 well-known endpoint.
wellKnownshould use the root-relative path/.well-known/msp.json.- Consumers and agents should not infer alternate filenames when the canonical endpoint is absent or unreachable.
- The discovery object is an additive clarity layer; older implementations may remain interpretable through the canonical endpoint even when the object is absent.
discovery.canonicalis a boolean endpoint-designation field and should not be interpreted as the separatecanonicalterm.- Discovery should not be treated as proof of correctness, authority, trust, verification, or ranking value by itself.
5. Examples
Canonical discovery object:
{
"discovery": {
"wellKnown": "/.well-known/msp.json",
"canonical": true
}
}
.well-known declaration with discovery:
{
"protocol": {
"name": "MSP-1",
"version": "1.0.1"
},
"discovery": {
"wellKnown": "/.well-known/msp.json",
"canonical": true
}
}
6. Relationship to related MSP-1 terms
- site describes the website as a top-level MSP-1 semantic entity.
- protocol identifies the semantic protocol being used and the MSP-1 version being implemented.
- version identifies a declared version for a site, page, section, resource, implementation, or protocol-related context.
- canonical identifies the preferred URL representation of a resource and should not be confused with
discovery.canonical. - url identifies a primary web-addressable location associated with an MSP-1 resource.
7. Validation guidance
When present, discovery should be an object containing wellKnown set to /.well-known/msp.json and canonical set to true. Additional properties should not be included.
Validators should flag alternate well-known paths, false canonical values, missing required fields, or additional fields as structural errors or advisory incompatibilities depending on implementation mode. If discovery is absent, consumers may still attempt the canonical endpoint, but should not probe alternate filenames.