mirror of
https://github.com/gravitational/teleport.git
synced 2026-10-12 02:15:01 +00:00
Update testplan for MCP (#64378)
* Update testplan for MCP * add more config stuff, add rbac section
This commit is contained in:
@@ -1684,6 +1684,18 @@ manualy testing.
|
||||
Configure a database agent with a database that has an unreachable URI (e.g. localhost:5432).
|
||||
- [ ] The web UI resource page shows an warning indicator for that database with error details.
|
||||
- [ ] Without restarting the agent, make the database endpoint reachable and observe that the indicator in the web UI resources page disappears after some time.
|
||||
- [ ] Verify [database access via MCP](https://goteleport.com/docs/connect-your-client/model-context-protocol/database-access/)
|
||||
- [ ] Postgres
|
||||
- [ ] Redshift
|
||||
- [ ] CockroachDB
|
||||
- [ ] Verify Teleport MCP servers can be configured and function correctly across various clients
|
||||
- [ ]`tsh mcp db config`
|
||||
- [ ] Claude Desktop
|
||||
- [ ] VSCode
|
||||
- [ ] Cursor
|
||||
- [ ] `claude`
|
||||
- [ ] `codex`
|
||||
- [ ] Dev testing via MCP inspector
|
||||
|
||||
## Git Proxy
|
||||
- [ ] [GitHub proxy](https://goteleport.com/docs/admin-guides/management/guides/github-integration/)
|
||||
@@ -2306,6 +2318,38 @@ The following should work with SSO MFA, automatically opening the SSO MFA redire
|
||||
- [ ] Desktop Access
|
||||
- [ ] Headless (`tsh ls --headless`)
|
||||
|
||||
## MCP Access
|
||||
- [ ] Verify Teleport supports MCP servers in various transports
|
||||
- [ ] Teleport demo server (special in-memory MCP)
|
||||
- [ ] stdio
|
||||
- [ ] Verify Teleport/tsh can automatically reconnect if client connection is disrupted
|
||||
- [ ] Verify the MCP process (node, python, etc.) is stopped after session is done
|
||||
- [ ] Verify docker containers are removed after session is done for docker-based MCPs.
|
||||
- [ ] Verify `run_as_host_user` with a different user than caller.
|
||||
- [ ] streamable-HTTP
|
||||
- [ ] Verify custom headers can be set via `app.rewrite.headers`
|
||||
- [ ] Verify Teleport can passthrough custom headers from client side (e.g. github PAT via `tsh db connect --header`)
|
||||
- [ ] Verify Teleport can passthrough 3rd party OAuth flow (e.g. Cloudflare OAuth)
|
||||
- [ ] Verify egress auth with JWT token (e.g. Grafana that trust's Teleport JWT)
|
||||
- [ ] Verify egress auth with OpenID token (e.g. AWS AgentCore MCP Gateway)
|
||||
- [ ] SSE (deprecated but still in-use)
|
||||
- [ ] Verify Teleport MCP servers can be configured and function correctly across various clients
|
||||
- [ ] `tsh mcp config`
|
||||
- [ ] Claude Desktop
|
||||
- [ ] VSCode
|
||||
- [ ] Cursor
|
||||
- [ ] `claude`
|
||||
- [ ] `codex`
|
||||
- [ ] Web UI deep links
|
||||
- [ ] VSCode
|
||||
- [ ] Cursor
|
||||
- [ ] Dev testing via MCP inspector
|
||||
- [ ] Verify Teleport MCP servers hint on "tsh login" when tsh session is expired (via chat/prompt)
|
||||
- [ ] RBAC
|
||||
- [ ] Verify users can only see MCP servers allowed by `allow.app_labels`
|
||||
- [ ] Verify MCP client can only see allowed tools
|
||||
- [ ] Verify `deny.mcp.tools` is greedy (deny overrides allow)
|
||||
|
||||
## Resources
|
||||
|
||||
[Quick GitHub/SAML/OIDC Setup Tips]
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
authors: STeve Huang ([email protected])
|
||||
state: draft
|
||||
state: implemented (18.1)
|
||||
---
|
||||
|
||||
# RFD 0209 - MCP Access
|
||||
@@ -531,4 +531,4 @@ the app definition as it might become a security concern when secrets like
|
||||
One workaround today is to launch the MCP server using Docker and specify the
|
||||
environment variables through an env file. Alternatively, users can set these
|
||||
environment variables when starting the Teleport process, since the MCP server
|
||||
inherits the Teleport process’s environment by default.
|
||||
inherits the Teleport process’s environment by default.
|
||||
|
||||
Reference in New Issue
Block a user