kubeflow / kubeflow/mcp-server

feat(core): MCP Server Card at /.well-known/mcp.json

Open
#185 2 comments 0 reactions 1 assignee Claimed by @Raghul-M View on GitHub
area/core kind/feature
Dominant language
Python
Stars
44
Forks
54
Avg merge
2d 18h
Merged PRs (30d)
29

Description

Serve an MCP Server Card for HTTP auto-discovery. Agents point at the base URL and discover transports, auth requirements, and capabilities without prior configuration.

## Context

- Standard MCP discovery mechanism for HTTP servers
- Already tracked in ROADMAP Phase 4
- Required for Agentgateway integration (reads Server Card for routing)

## Design

`GET /.well-known/mcp.json` (no auth required):

```json
{
"name": "kubeflow-mcp",
"version": "0.1.0",
"description": "Kubeflow MCP Server",
"transports": [{"type": "streamable-http", "url": "/mcp"}],
"authentication": {"type": "bearer"},
"capabilities": {"tools": true, "resources": true, "prompts": false},
"clients": ["trainer", "optimizer", "hub"]
}
```

Dynamic: `clients` reflects loaded modules, `version` from package.

## Acceptance Criteria

- Served when `--transport http`, 404 on stdio
- No auth on discovery endpoint
- Dynamically reflects server state
- Unit test for serialization

## References

- [MCP spec — transports](https://modelcontextprotocol.io/specification/2025-03-26/basic/transports)
- ROADMAP Phase 4

/kind feature
/area core

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.