amazon-q-developer-cli icon indicating copy to clipboard operation
amazon-q-developer-cli copied to clipboard

OAuth Workflow failures prevent Amazon Q CLI and Developer to connect to Figma Desktop or Remote MCP servers

Open andy-root opened this issue 2 months ago • 0 comments

Checks

Operating system

macOS 15.7.1 (24G231)

Expected behaviour

Amazon Q Developer or Q CLI should connect to Figma MCP Desktop or Remote servers following OAuth workflow.

Actual behaviour

Both Amazon Q Developer and Q CLI fail to connect to Figma MCP Desktop and Remote servers because the OAuth workflow is not triggered, both connections fail in error.

Steps to reproduce

​ The provided directions for Amazon Q from https://www.figma.com/mcp-catalog/ do not work.

Repro steps for Remote MCP server

  1. Go to https://www.figma.com/mcp-catalog/ click on Amazon Q View install guide
  2. Click on Remote MCP server
  3. Apply MCP config
"figma": {
       "url": "https://mcp.figma.com/mcp",
       "type": "http"
     }

Amazon Q Developer Error

MCP: server 'figma' failed to connect: SSE error: Non-200 status code (405)

Amazon Q CLI Error

Mcp error: -32002: Client error: HTTP status client error (405 Method Not Allowed) for url (https://mcp.figma.com/mcp)

2025-11-12T20:43:22.964897Z ERROR rmcp::transport::worker: 128: worker quit with fatal: Transport channel closed, when AuthRequired(AuthRequiredError { www_authenticate_header: "Bearer resource_metadata=\"https://mcp.figma.com/.well-known/oauth-protected-resource\",scope=\"mcp:connect\",authorization_uri=\"https://api.figma.com/.well-known/oauth-authorization-server\"" })
2025-11-12T20:43:22.964952Z ERROR chat_cli::mcp_client::oauth_util: 392: ## mcp: open http handshake attempted failed for https://mcp.figma.com/mcp: TransportError { error: DynamicTransportError { transport_name: "rmcp::transport::worker::WorkerTransport<rmcp::transport::streamable_http_client::StreamableHttpClientWorker<reqwest::async_impl::client::Client>>", transport_type_id: TypeId(0x3967ec071fb6b6bdda82f38f72411a83), error: AuthRequired(AuthRequiredError { www_authenticate_header: "Bearer resource_metadata=\"https://mcp.figma.com/.well-known/oauth-protected-resource\",scope=\"mcp:connect\",authorization_uri=\"https://api.figma.com/.well-known/oauth-authorization-server\"" }) }, context: "send initialize request" }. Attempting sse
2025-11-12T20:43:23.053272Z ERROR chat_cli::cli::chat::tool_manager: 1562: Error loading server figma: McpError(ErrorData { code: ErrorCode(-32002), message: "Client error: HTTP status client error (405 Method Not Allowed) for url (https://mcp.figma.com/mcp)", data: None })

Repro steps for Desktop MCP server

  1. Go to https://www.figma.com/mcp-catalog/ click on Amazon Q View install guide
  2. Click on Desktop MCP server https://developers.figma.com/docs/figma-mcp-server/local-server-installation/
  3. Download Figma Desktop for MacOS https://www.figma.com/downloads/
  4. Install Figma Desktop
  5. Open Figma Desktop
  6. Toggle dev mode
  7. Enable MCP Server
  8. Copy url http://127.0.0.1:3845/mcp
  9. Back on Desktop MCP server at https://developers.figma.com/docs/figma-mcp-server/local-server-installation/ There are no specific Amazon Q instructions, scroll to Other editors Configs to try
"figma-desktop1": {
      "url": "http://127.0.0.1:3845/mcp"
    }

"figma-desktop2": {
       "type": "http",
       "url": "http://127.0.0.1:3845/mcp"
     }

Amazon Q Developer

MCP: server 'figma-desktop1' failed to connect: SSE error: Non-200 status code (400)

MCP: server 'figma-desktop2' failed to connect: SSE error: Non-200 status code (400)

Amazon Q CLI

2025-11-12T20:53:38.119056Z ERROR chat_cli::cli::chat::tool_manager: 1562: Error loading server figma-desktop1: McpError(ErrorData { code: ErrorCode(-32002), message: "MCP config is malformed: transport type is specified to be stdio but command is empty", data: None })
2025-11-12T20:53:38.286191Z ERROR chat_cli::mcp_client::oauth_util: 392: ## mcp: open http handshake attempted failed for http://127.0.0.1:3845/mcp: ExpectedInitResult(Some(EmptyResult(EmptyObject))). Attempting sse
2025-11-12T20:53:38.287371Z ERROR chat_cli::cli::chat::tool_manager: 1562: Error loading server figma-desktop2: McpError(ErrorData { code: ErrorCode(-32002), message: "Client error: HTTP status client error (400 Bad Request) for url (http://127.0.0.1:3845/mcp)", data: None })

Environment

<This will be visible to anyone. Do not include personal or sensitive information>

[q-details]
version = "1.19.4"
hash = "d1c473eaf5578603895f6d4975536fcb2c043eaa"
date = "2025-11-07T19:12:16.55651Z (5d ago)"
variant = "full"

[system-info]
os = "macOS 15.7.1 (24G231)"
chip = "Apple M3 Pro"
total-cores = 12
memory = "36.00 GB"

[environment]
cwd = "/Users/USER"
cli-path = "/Users/USER"
os = "Mac"
shell-path = "/bin/zsh"
shell-version = "5.9"
terminal = "iTerm 2"
install-method = "unknown"

[env-vars]
PATH = "/Users/USER/.local/share/mise/installs/uv/latest/uv-aarch64-apple-darwin:/Users/USER/.local/share/mise/installs/node/20.19.5/bin:/Users/USER/.local/share/mise/installs/python/3.12.7/bin:/Users/USER/.local/share/mise/installs/python/3.11.10/bin:/Users/USER/.local/share/mise/installs/python/3.10.15/bin:/Users/USER/.local/share/mise/installs/python/3.9.20/bin:/Users/USER/.local/share/mise/installs/python/3.8.20/bin:/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/Users/USER/.cargo/bin:/Applications/iTerm.app/Contents/Resources/utilities:/Users/USER/.local/bin:/Applications/Visual Studio Code.app/Contents/Resources/app/bin:/Users/USER/Library/Application Support/JetBrains/Toolbox/scripts:/Users/USER/.toolbox/bin:/Users/USER/workplace:/Users/USER/workplace:/Users/USER/workplace"
QTERM_SESSION_ID = "0c20b43b56a64b3aa7e0cb81caadf328"
Q_SET_PARENT_CHECK = "1"
Q_TERM = "1.19.4"
SHELL = "/bin/zsh"
TERM = "xterm-256color"
__CFBundleIdentifier = "com.googlecode.iterm2"

andy-root avatar Nov 12 '25 21:11 andy-root