Help Centerchevron_rightGenaya AIchevron_rightAI assistantschevron_rightUse Genaya from a developer tool with an API key (Cursor, VS Code, Windsurf, Zed, Gemini CLI, the Gemini and Grok APIs, Zapier, Make)
hub

Use Genaya from a developer tool with an API key (Cursor, VS Code, Windsurf, Zed, Gemini CLI, the Gemini and Grok APIs, Zapier, Make)

Genaya AI / AI assistantsschedule5 min readmenu_bookArticle 8 of 8 in AI assistants
open_in_newOpen Genaya AI in Genayaarrow_outward

Sign in with Genaya is the normal way in: a person, a consent screen, a connection that runs as them. A developer tool, a script or a server-side agent often has no browser to sign in with. For those, an existing Genaya API key - the same keys the Developer API uses - can be presented as the bearer at the Genaya MCP address, once the key's Allow MCP switch is on. The key reads and asks only: it answers who am I and questions to Genaya AI, and never prepares, confirms or sends anything. Nothing changes in Genaya through a key; a change from a developer tool needs a signed-in connection.

Before you start

  • The Developer API is on for your organization (Settings > Features). It is available on every plan: the free trial gets one read-only test key with 500 requests in total; live keys need a paid plan.
  • Your role has Use Genaya AI from ChatGPT, Claude and other assistants and Genaya AI access - a key acts as the member who created it, with that member's permissions, in that member's organization.
  • A key created for Zapier's Sign in with Genaya never works here; create a key of your own under Settings > Developer.

Turn on Allow MCP

  1. 1
    Open Settings > Developer

    Create a key, or open one you already have. Allow MCP is off for every key until you turn it on, and a key that was created for Zapier cannot be switched.

  2. 2
    Turn on Allow MCP

    The row shows when the key was last used at the MCP address. Turning the switch off again stops the key at its next call (within a minute).

    Each key carries its own Allow MCP switch and its last MCP call.
  3. 3
    Put the key in the Authorization header

    Every call to https://api.genaya.com/mcp carries Authorization: Bearer gny_live_... (or a gny_test_ key). A key in the address or in the body is refused before any work.

  4. 4
    Call whoami first

    It answers the member the key acts as, the organization and the scopes (read, ai) - free. Then ask: "How many appointments do we have this week?"

What the key can do

  • Two tools: who am I and ask Genaya AI (scopes read and ai). Prepare a change, confirm, cancel, undo and list changes answer that the key cannot use them - no confirm page, no in-chat confirmation, ever.
  • As the member who created the key. Their permissions, their company scope, their organization. If that member loses access the key stops: "The member who created this key no longer has access - create a new key."
  • Test keys work (gny_test_), flagged as test mode; they read live data like a test key on the Developer API does.
  • The organization's External assistants switch and Allowed assistants do not apply to a key - the Developer API switch, the plan and the creator's Genaya AI permissions do.
  • The key's own limits. A call spends the connector windows keyed on the key (60 a minute, 5,000 a day) and nothing on the key's Developer API request pool. A question to Genaya AI costs 10 Genaya AI credits, exactly like the app - the same credits, and nothing else. Who am I is free.
  • On the record. Every call is logged as an API-key call with the key's public prefix, the key row shows its last MCP call, and every question is a conversation in the creator's Genaya AI history, marked Other.

Configuration by tool

Each entry is the whole configuration on one line; replace gny_live_... with your key. Cursor, VS Code, Windsurf and Gemini CLI can also sign in with Genaya instead (leave the header out), which makes the connection personal and lets it prepare changes you confirm.

Cursor (~/.cursor/mcp.json)
{ "mcpServers": { "genaya": { "url": "https://api.genaya.com/mcp", "headers": { "Authorization": "Bearer gny_live_..." } } } }
VS Code (.vscode/mcp.json)
{ "servers": { "genaya": { "type": "http", "url": "https://api.genaya.com/mcp", "headers": { "Authorization": "Bearer ${input:genaya-key}" } } }, "inputs": [{ "id": "genaya-key", "type": "promptString", "password": true, "description": "Genaya API key" }] } - VS Code prompts for the key once and keeps it in its secret store.
Windsurf (mcp_config.json)
{ "mcpServers": { "genaya": { "serverUrl": "https://api.genaya.com/mcp", "headers": { "Authorization": "Bearer gny_live_..." } } } }
Zed (settings.json)
{ "context_servers": { "genaya": { "source": "custom", "url": "https://api.genaya.com/mcp", "headers": { "Authorization": "Bearer gny_live_..." } } } }
Gemini CLI (~/.gemini/settings.json)
{ "mcpServers": { "genaya": { "httpUrl": "https://api.genaya.com/mcp", "headers": { "Authorization": "Bearer gny_live_..." } } } }
Gemini API (in the request, server side)
"tools": [{ "type": "mcp_server", "name": "genaya", "url": "https://api.genaya.com/mcp", "headers": { "Authorization": "Bearer gny_live_..." }, "allowed_tools": ["whoami", "ask_genaya"] }] - the name is snake_case with no hyphens; streamable HTTP only, which Genaya is.
Grok API (in the request, server side)
"tools": [{ "type": "mcp", "server_url": "https://api.genaya.com/mcp", "server_label": "genaya", "authorization": "gny_live_...", "allowed_tools": ["whoami", "ask_genaya"] }]
Zapier MCP Client
Apps > Add connection > MCP Client: the Genaya address, Streamable HTTP, and the key as the bearer token. Use Run Read-Only Tool in a Zap or an agent. The branded Genaya app on Zapier stays the main road for triggers and actions.
Make MCP Client module
Add the module to a scenario with the Genaya address and token authentication carrying the key; pick a tool and run the scenario.
lightbulbA key in a shared config file is a credential. Keep it server-side or in the tool's secret store, and if it leaks roll it under Settings > Developer - the rolled key keeps its Allow MCP switch and its scopes.

Two doors, one key

POST https://api.genaya.com/v1/mcp is the Developer API's own MCP server: typed tools over the REST resources (list appointments, create a client), with the key's scopes and write rules. https://api.genaya.com/mcp with the same key is the connector: who am I and ask Genaya AI - the brain, read and ask only. Calls to /v1/mcp count on the key's Developer API request pool; calls to /mcp count nothing there, and a question spends Genaya AI credits like the app. The two never mix: a connection token from Sign in with Genaya is never accepted on /v1, and a Zapier key is never accepted on either.

Frequently asked

Was this article helpful?