- Notifications
You must be signed in to change notification settings - Fork 0
Description
It is a Golang HTTP gateway, it uses Beego 1.x as the HTTP web framework. it has middleware system to support HTTP middleware to be stacked in this mcp-gateway.
Casbin should be one HTTP authorization middleware
we should also support the HTTP middleware of OAuth authentication. because MCP recommends to use OAuth as authentication. After OAuth authentication middleware, the HTTP request has be identified as a user. and then we can use the Casbin authorization middleware to do enforcement and check permission.
need to have source code, tests, and CI scripts (with semantic-release to publish to GitHub releases)
in go.mod, go version should use 1.21.0, casbin version should use latest v3.4.1
the default beego backend port is 9000
need to have frontend support. the frontend code is based on React + Tailwind CSS + shadcn/ui, the code is in the /web folder.
the frontend code dev mode can run at port 8001. if frontend code is compiled into static files, the backend port 9000 will also serve the frontend static files. so accessing port 9000 will have both backend APIs and frontend files and it will show web pages normally in browser