SEP draft: pattern:// URI scheme — addressable cross-server findings (companion to #2674) #2675
UzunGridera
started this conversation in
Ideas - General
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Abstract
This is a pre-SEP discussion for an OPTIONAL URI scheme
pattern://on MCP Resources, complementary to the cross-site audit-trails Extension proposal in #2674.The proposal: let clients address a finding (a recurring observation, a warning fingerprint, a learned pattern) as a stable, dereferenceable resource — independent of the specific MCP server that produced it.
The motivating use case is the same one the Skills Over MCP WG charter calls out: "Skills should be discoverable across servers". A
pattern://<hex>URI is the discovery handle for a single Skill-emitted finding.Relationship to the cross-site audit-trails extension (#2674)
_meta.dev.agentminds.cross_site_audit.fingerprinton tool-call results so that two servers calling the same logical capability can correlate their invocations.The two are independently useful and can ship in either order; they compose cleanly.
Motivation
MCP's Resources surface today addresses content (a file, a documentation page, a database row). It does not address derived knowledge — patterns the agent has learned, warning fingerprints recurring across deployments, evaluation verdicts attached to a fingerprint cluster.
Concrete cases:
A Skill emits a finding
f1("rate-limit cascade between auth and uploads"). The same finding is independently emitted by a different Skill on a different server in a different org. With Extension proposal: dev.agentminds/cross-site-audit-trails — fingerprint + pattern_id correlation #2674's fingerprint, both servers can produce the same hash. But there is no way for a client to cite that fingerprint as a resource — to write an integration that says "watch for findings whose URI ispattern://<hex>".An MCP-aware dashboard wants to show "all findings in this org's network that are also seen at peer orgs". Without a URI scheme, the dashboard has to invent its own resource namespace.
A Skill marketplace (the WG's stated end-goal) wants to record "this Skill produces the following findings". Without an addressable URI, the marketplace falls back to free-text descriptions.
Proposed shape
_meta.fingerprint.namespacequery parameter scopes the fingerprint to a vendor's pattern taxonomy. Without it, the fingerprint is global — a collision means two producers genuinely observed the same thing.pattern://URIs are dereferenceable through the standard MCP Resources surface (resources/list,resources/read). A server that implements this scheme:resources/listresponse.resources/read—last_seen,count,severity, breadcrumbs,status(using the Sentry-aligned lifecycle from Extension proposal: dev.agentminds/cross-site-audit-trails — fingerprint + pattern_id correlation #2674).Why a URI scheme (and not just a resource path)
The MCP
Resourcessurface uses URIs as the resource handle. Without a registered scheme, every implementation inventsmy-server://patterns/<hex>and they can't be exchanged. Oncepattern://<hex>is reserved, a client can deduplicate and join patterns across servers with no out-of-band coordination.Prior art on custom URI schemes in the MCP ecosystem: SEP-2640 (
skill://).pattern://follows the same template.Out of scope
pattern://is dereferenceable through whatever Resources transport the server already exposes (Streamable HTTP, stdio).Reference implementation
AgentMinds maintains a reference implementation:
agentminds-mcp— install vianpx agentminds-mcp. Source: https://github.com/agentmindsdev/mcp-serverIf the WG endorses the scheme, AgentMinds will:
patternwith IANA's URI scheme registry under "Provisional Registration" then promote to "Permanent" once the SEP merges.pattern://URIs transparently for any MCP server implementing the scheme.Asking the WG
pattern://the right scheme name, or should it bemcp-pattern:///urn:mcp:pattern:<hex>/ something else?resources/or somewhere else (a newfindings/surface)?namespacequery parameter overengineered for v1, or critical for vendor coexistence?Happy to draft formal SEP text once a direction is endorsed.
Beta Was this translation helpful? Give feedback.
All reactions