Skip to main content
Glama
Kshitij-21

Zerodha MCP Server

by Kshitij-21
KiteConfig.ts2.01 kB
import { KiteConnect } from "kiteconnect"; import { getTokens, setTokens, Tokens } from "../utils/readWrite"; const apiKey = process.env.API_KEY!; const apiSecret = process.env.API_SECRET!; const kc = new KiteConnect({ api_key: apiKey }); // * Generates Login URL and returns it async function login(): Promise<string | undefined> { try { return kc.getLoginURL(); } catch (err) { console.error("Error getting login URL:", err); return undefined; } } // * Starts the Kite Connect instance async function startKite() { try { const { access_token } = getTokens()!; kc.setAccessToken(access_token); await getProfile(); } catch (err) { console.error(err); } } // * Generates a session and sets the access token async function generateSession(request_token: string | undefined): Promise<string | undefined> { try { if (request_token == undefined) { request_token = getTokens()!.request_token; } const response = await kc.generateSession(request_token!, apiSecret); // console.log(response.access_token) kc.setAccessToken(response.access_token); // console.log("Session generated:", response); return response.access_token; } catch (err) { console.error("Error generating session:", err); return undefined; } } // * Gets the profile of the user async function getProfile(): Promise<any> { try { const profile = await kc.getHoldings(); // console.log(profile); return profile; } catch (err) { console.error("Error getting profile:", err); } } // * Sets the tokens in the config file async function setLoginTokens(tokens: Tokens) { try { return setTokens(tokens); } catch (err) { console.error("Error setting tokens:", err); return false; } } // console.log(await login()); // await generateSession("w3afHuqqwPHBBoIBzl685TwjMuA71jCW"); // console.log(await getProfile()); export { startKite, kc, generateSession, login, setLoginTokens, getProfile };

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Kshitij-21/MCP-Server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server