Skip to content

Add endpoint, types and API hooks for MCP server catalog#2277

Open
ppadti wants to merge 3 commits intokubeflow:mainfrom
ppadti:mcp-server-catalog
Open

Add endpoint, types and API hooks for MCP server catalog#2277
ppadti wants to merge 3 commits intokubeflow:mainfrom
ppadti:mcp-server-catalog

Conversation

@ppadti
Copy link
Contributor

@ppadti ppadti commented Feb 25, 2026

Description

This PR aims to add endpoint, types, mocks and api hooks for mcp server catalog.
Need to add unit test for hooks - will be done in follow-up PR.

How Has This Been Tested?

run the application in mock mode and try this curl commands:

List MCP servers

curl -s -H "kubeflow-userid: user@example.com" \ "http://localhost:4000/api/v1/model_catalog/mcp_servers?namespace=kubeflow"

MCP filter options
curl -s -H "kubeflow-userid: user@example.com" \ "http://localhost:4000/api/v1/model_catalog/mcp_servers_filter_options?namespace=kubeflow"

Get a MCP server
curl -s -H "kubeflow-userid: user@example.com" \ "http://localhost:4000/api/v1/model_catalog/mcp_servers/prometheus-mcp?namespace=kubeflow"

MCP server tools
curl -s -H "kubeflow-userid: user@example.com" \ "http://localhost:4000/api/v1/model_catalog/mcp_servers/prometheus-mcp/tools?namespace=kubeflow"

modified source endpoint

curl -s "http://localhost:4000/api/v1/model_catalog/sources?namespace=kubeflow&assetType=models" -H "kubeflow-userid: [user@example.com](mailto:user@example.com)"

curl -s "http://localhost:4000/api/v1/model_catalog/sources?namespace=kubeflow&assetType=mcp_servers" -H "kubeflow-userid: [user@example.com](mailto:user@example.com)"

curl -X GET "http://localhost:4000/api/v1/model_catalog/sources?namespace=kubeflow" \
  -H "kubeflow-userid: user@example.com"

Merge criteria:

  • All the commits have been signed-off (To pass the DCO check)
  • The commits have meaningful messages
  • Automated tests are provided as part of the PR for major new functionalities; testing instructions have been added in the PR body (for PRs involving changes that are not immediately obvious).
  • The developer has manually tested the changes and verified that the changes work.
  • Code changes follow the kubeflow contribution guidelines.
  • For first time contributors: Please reach out to the Reviewers to ensure all tests are being run, ensuring the label ok-to-test has been added to the PR.

If you have UI changes

  • The developer has added tests or explained why testing cannot be added.
  • Included any necessary screenshots or gifs if it was a UI change.
  • Verify that UI/UX changes conform the UX guidelines for Kubeflow.

Signed-off-by: ppadti <ppadti@redhat.com>
Signed-off-by: ppadti <ppadti@redhat.com>
Signed-off-by: ppadti <ppadti@redhat.com>
@google-oss-prow
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign alexcreasy for approval. For more information see the Kubernetes Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant