registry icon indicating copy to clipboard operation
registry copied to clipboard

Platform Independent Registry Service

Open kidehen opened this issue 7 months ago • 2 comments

Problem: Registry Service Platform Dependency

MongoDB (or any specific database platform) should not be a prerequisite for implementing a registry.

Solution: Platform-Independent Registry Service

Service descriptions should be provided in a structured format, such as JSON. Servers can expose these descriptions using an open protocol—such as MCP itself—enabling platform-independent access to their managed snapshots of these JSON-based service descriptions.

Alternative Approach

Service descriptions can also be retrieved from GitHub repositories or discovered via web crawling. This is possible when web pages embed MCP server discovery relationship links as Plain Old Semantic HTML (POSH) metadata.

kidehen avatar May 22 '25 16:05 kidehen

MongoDB (or any specific database platform) should not be a prerequisite for implementing a registry.

There is no requirement to use a specific database when implementing a registry implementation that conforms to our proposed registry API. But maybe I'm not following what you are implying here?

Service descriptions should be provided in a structured format, such as JSON.

We are providing it as examples + and OpenAPI schema. Is that what you are looking for?

I think at some point we should more formally define the difference between the centralized official registry and the schema we expect other implementations of the registry to adhere to. I think it probably still makes sense to do this with OpenAPI, but open to further feedback and thinking on this (would OpenAPI fall short in some way?).

Service descriptions can also be retrieved from GitHub repositories or discovered via web crawling.

This is orthogonal to the registry work (I believe we should continue to work on .well-known separate from the registry work).

tadasant avatar May 26 '25 03:05 tadasant

There is no requirement to use a specific database when implementing a registry implementation that conforms to our proposed registry API. But maybe I'm not following what you are implying here?

My issue is related to these prerequisites that include MongoDB

kidehen avatar May 26 '25 05:05 kidehen

There is no requirement to use a specific database when implementing a registry implementation that conforms to our proposed registry API. But maybe I'm not following what you are implying here?

My issue is related to these prerequisites that include MongoDB

It is not clear to me why this is a problem. We are not designing for community members to stand up alternative versions of this same codebase:

Reusability of infrastructure, implementation detail decisions: While we expect the ecosystem to reuse the shapes (such as OpenAPI shape, mcp.json shape) associated with this work, we are not designing for reuse of the underlying implementation details and infrastructure. As such, we will not provide instructions on "how to serve your own instance of this metaregistry".

tadasant avatar May 26 '25 15:05 tadasant

You solve my problem by pointing me to the starting point for a registry initiative that doesn't include a designated DBMS as a prerequisite. That's all I need really. It might be that I started off at the wrong point. :)

kidehen avatar May 26 '25 17:05 kidehen

It sounds like you are asking for guidance on how to stand up your own MCP server registry implementation?

It is fair that you are trying to build a third party registry (we encourage this), however it is out of scope of the official modelcontextprotocol/registry project to provide implementation guidance.

That may be a good use case to find other community members interested in the same idea via the unofficial community working groups - indeed there was some interest in this kind of idea there.

I'm going to close this issue as something we are not planning to do in this repository at this time. If there is some traction for the idea in the community working groups, could make sense to reconsider down the line.

tadasant avatar May 26 '25 18:05 tadasant

It sounds like you are asking for guidance on how to stand up your own MCP server registry implementation?

Nope.

It is fair that you are trying to build a third party registry (we encourage this), however it is out of scope of the official modelcontextprotocol/registry project to provide implementation guidance.

Again, I just want to know that an official repository doesn't mandate a specific DBMS platform via its prerequisites. Naturally, if that's the case, simply say so.

I hope my issue is now crystal clear i.e., the official repository is either DBMS-specific or it isn't.

One more thing: It might also be that what I've raised my concerns about is a reference implementation of an MCP repository, if so just confirm that to be the case.

My goal here is clarity.

kidehen avatar May 27 '25 11:05 kidehen

There is a discussion here where we can consolidate community recommendations on what should be the datastore for the official registry.

tadasant avatar May 27 '25 13:05 tadasant