{"service":"public-mcp-server","description":"Model Context Protocol server for the loc-mesh project. Serves the OpenAPI contract of every Mesh API, plus control-plane tools for setting an application up. Never on the API traffic path — it describes the data plane and never carries it.","version":"1.0.71","publicUrl":"https://mcp.mesh.locate2u.app","runtime":"cloudflare-worker","mcp":{"transport":"streamable-http","endpoint":"/mcp","spec":"https://modelcontextprotocol.io","available":true},"tools":[{"name":"list_orgs","title":"List my organisations"},{"name":"create_org","title":"Create a new organisation"},{"name":"describe_org","title":"Describe an organisation"},{"name":"get_connection_details","title":"How to authenticate and where the APIs live"},{"name":"list_services","title":"List the APIs this organisation can reach"},{"name":"list_api_operations","title":"List the endpoints an API offers"},{"name":"get_openapi_spec","title":"Get the OpenAPI contract for one API"},{"name":"list_permissions","title":"List the permission codes that can be granted"},{"name":"list_credentials","title":"List machine credentials"},{"name":"create_credential","title":"Create a machine credential"},{"name":"create_sign_in_app","title":"Register an application that signs people in"},{"name":"list_sign_in_apps","title":"List the applications that sign people in"},{"name":"get_sign_in_app","title":"Read one sign-in application"},{"name":"update_sign_in_app","title":"Change a sign-in application’s name, redirect addresses or permissions"},{"name":"delete_sign_in_app","title":"Remove a sign-in application"},{"name":"list_members","title":"List the people in an organisation"},{"name":"set_member_status","title":"Suspend or reactivate a person"},{"name":"remove_member","title":"Remove a person from an organisation"},{"name":"list_invitations","title":"List invitations to an organisation"},{"name":"invite_person","title":"Invite somebody to join an organisation"},{"name":"revoke_invitation","title":"Revoke a pending invitation"},{"name":"resend_invitation","title":"Remind somebody about an invitation"},{"name":"update_credential_permissions","title":"Change what a machine credential may do"},{"name":"revoke_credential","title":"Revoke a machine credential"},{"name":"list_modules","title":"List modules"},{"name":"describe_module_settings","title":"What can be configured on a module"},{"name":"get_module_settings","title":"Read a module’s settings"},{"name":"set_module_settings","title":"Change a module’s settings"},{"name":"get_map_quickstart","title":"How to put a Mesh map on a page"},{"name":"list_map_keys","title":"List map keys"},{"name":"create_map_key","title":"Create a map key"},{"name":"update_map_key","title":"Change where a map key may be used from"},{"name":"revoke_map_key","title":"Revoke a map key"},{"name":"list_webhooks","title":"List webhook subscriptions"},{"name":"get_webhook","title":"Get one webhook subscription"},{"name":"create_webhook","title":"Create a webhook subscription"},{"name":"update_webhook","title":"Change a webhook subscription"},{"name":"rotate_webhook_secret","title":"Rotate a webhook signing secret"},{"name":"delete_webhook","title":"Delete a webhook subscription"}],"auth":{"scheme":"bearer","header":"Authorization: Bearer <Zitadel JWT>","tokenType":"Zitadel OAuth2 access token (JWT)","metadata":"/.well-known/oauth-protected-resource"},"endpoints":[{"method":"GET","path":"/api","description":"This document."},{"method":"GET","path":"/api/health","description":"Liveness."},{"method":"GET","path":"/api/health/deps","description":"Upstream reachability."},{"method":"GET","path":"/api/health/ready","description":"Deep readiness."},{"method":"GET","path":"/api/version","description":"Build metadata."},{"method":"GET","path":"/api/whoami","description":"Authenticated identity echo."}]}