Tutorial / Models help via MCP servers
Nowadays, a lot of folks get their info from interacting with LLMs/code assistants. One frequently used helper are MCP servers that "distill" a large set of information into a LLM-maintained wiki that can be used (by the LLMs) to answer questions specific to a given topic.
I can imagine one such MCP server that would take its ground-truth info from the onnx repo, maybe augmented by a few other repos under the umbrella of the onyx-org. I can see queries of several natures:
Standard related questions
What is the difference between the Attention op from this current opset vs another older one (all this info already exists but in a more descriptive manner).
What does this op do, can you give me an example (some of this exists in the definition and the examples)
Does this PyTorch operation exists in ONNX (maybe tap in some PyTorch description, or rely on the LLM augmented by the precise def of the ONNX ops via this MCP).
Usage related questions
How do I download an ONNX model from HF?
How can I use it with xxx framework [ possibly out of scope, but maybe not for a reference implementation within ONNX?]
If there is no ONNX model for this PyTorch model, what are recommended steps to extract an ONNX model.
Sure there are more categories, such as for example "how do I add an operator in ONNX code base...," "what are best practices for managing the next release..."
MCP Mechanics
It is easy to build a wiki that "encodes" references in the latest release, and create diffs so that it can responds to questions such as "what would that be in Opset X". It is very easy to update this info using LLMs within the MCP server to upgrade a version.
Ideally, such MCP gather info directly from the code (of the spec) and from trusted pages (e.g. pages that are directly created from the specs). So the info would always be "grounded" to references in the actual source/trusted doc.
We are experimenting with one such MCP for onnx-mlir, internal at this time. If someone is interested, happy to provide info and share ideas. Don't have the bandwidth to do one; possibly willing to help if someone were to take the lead.
Source: onnx/onnx