MoonshotAI / MoonshotAI/kimi-cli

MCP OAuth fails when server returns client_secret_basic: OAuthClientInformationFull only accepts 'none' or 'client_secret_post'

Open Beginner friendly
#2,172 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
11.4k
Forks
1.3k
Avg merge
9h 47m
Merged PRs (30d)
2

Description

Bug Description

When connecting to an MCP server that uses OAuth with as the , the Kimi CLI fails with a validation error.

Environment

  • kimi-cli version: 1.41.0
  • OS: macOS
  • Python: 3.13

Steps to Reproduce

  1. Add an MCP server that uses OAuth with :
    Added MCP server 'cumbuca-openfinance' to /Users/wesleyazevedo/.kimi/mcp.json.

  2. Try to test/auth the connection:
    Testing connection to 'cumbuca-openfinance'...
    Authorizing with 'cumbuca-openfinance'...
    A browser window will open for authorization.

Expected Behavior

The OAuth flow should start, allowing the user to authenticate with the MCP server.

Actual Behavior

Root Cause

The model in the MCP client auth module only accepts or for , but according to RFC 7591 and OAuth 2.0 Dynamic Client Registration, is a valid and commonly used value.

Affected MCP Servers

This affects MCP servers like Cumbuca Open Finance () and potentially any other OAuth-enabled MCP server using .

Suggested Fix

Update the model (or the underlying Pydantic schema) to also accept as a valid value for .

According to OAuth 2.0 Dynamic Client Registration Metadata, valid values include:

Workaround

Currently, there is no workaround within Kimi CLI. Users must use a different MCP client (e.g., Claude Desktop) that supports .


/cc @MoonshotAI team — thanks for the great CLI tool! This fix would enable Brazilian users to connect to Open Finance data via Cumbuca MCP. 🇧🇷

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in the MCP client auth module at OAuthClientInformationFull and trace validation of the client authentication method. Compare the accepted values with RFC 7591, add coverage for a server returning client_secret_basic, and verify that the OAuth flow proceeds without a validation error.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
authentication, cli
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
72/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.