MCP server and Gemini enterprise, Mistral connection issue

Hello,

I am encountering problems with connecting Grist MCP server to Gemini Enterprise and Mistral AI. In both cases I use Custom MCP server. I use paid hosted version of Grist.

The MCP server connected to Mistral actually worked for a few actually but it suddenly stopped.

Gemini case
Gemini Enterprise requires to fill Authentication method by myself. The screen below shows how I did it.

j

The connection was created according to this google documentation:

https://docs.cloud.google.com/gemini/enterprise/docs/connectors/custom-mcp-server/set-up-custom-mcp-server

After clicking Verify Auth a Grist authentication window appeared, where I proceed to allow access.
Grist shows that third party app is authorized, however as you can seen in the google console screenshot there is a problem with authorization.

In order to auth third-party app I created an app in the Grist developer system. The scope and the client ID was checked multiple times.

Mistral AI case

As mentioned before it worked for few days without any issue. When first issues with connecting do Grist database showed up I decided to delete and recreate Grist credentials in Mistral. After deleting it, I am not able to create new credentials: after creating new MCP server, entering credential name (mistral requires it for each credential, it is just an internal name), clicking Connect the credential is not saved.

Summary
As the both platform have some problem with the auth I assumed there is problem on the Grist side. I opened there support cases, but so far nothing helpful from them.
Should I open grist support case too?

Hi @Mateusz_Jakubowski.

Thanks for the reports.

On closer inspection, it looks like the problem with Gemini is that when PKCE is enabled, the client is assumed to be public client, and Google does not include the client secret in OAuth requests to Grist. Grist currently only supports registering confidential OAuth clients, and PKCE is always required. We haven’t tested with Gemini yet, but if you don’t see a way to configure Grist as a confidential client with PKCE, or use CIMD or DCR instead of an OAuth client pre-registered on Grist, then the issue is likely just a case of Grist not supporting the combinations of OAuth methods and parameters that Gemini currently supports.

I’ll raise this issue and the Mistral one with the team.

George

Hello @georgegevoian

Thanks for the explanation. I’ll ask Google Support about it, but I can’t see this option in the Google Console for now.

Regarding the Mistral case, I can confirm that today I was able to authorise the MCP server and successfully fetch data from Grist.

Today I am facing problems with Mistral again. It was a very short successful connection.