ninjapayofficial/nin-mcp-server
If you are the rightful owner of nin-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
The NINX MCP Server is a Model Context Protocol server designed to provide financial trading tools and market analysis capabilities, enabling AI assistants to access real-time market data, execute trades, and perform comprehensive financial analysis.
NINX MCP Server
A Model Context Protocol (MCP) server that provides financial trading tools and market analysis capabilities. This server enables AI assistants to access real-time market data, execute trades, analyze portfolios, and perform comprehensive financial analysis.
🚀 Features
Trading & Portfolio Management
- Binance Integration: Access account holdings, balances, and trading data
- Groww Integration: Complete trading platform with holdings, positions, orders, and margin data
- Portfolio Analysis: Comprehensive portfolio performance and risk assessment
- Real-time Market Data: Live prices, OHLC data, and market quotes
Market Analysis Tools
- Fundamental Analysis: Company financials, ratios, and valuation metrics
- Technical Analysis: RSI, MACD, Bollinger Bands, moving averages, and chart patterns
- Options Analysis: Greeks, implied volatility, and options strategies
- Market Overview: Sector performance, market trends, and news sentiment
- Stock Screening: Filter stocks based on various criteria
- Risk Assessment: Portfolio risk metrics and stress testing
📋 Prerequisites
- Node.js >= 22.x
- TypeScript (included in dependencies)
- API Keys for trading platforms:
- Binance API Key & Secret (optional)
- Groww API Key (optional)
🛠️ Installation
- Clone the repository:
git clone <repository-url>
cd nin-mcp-server
- Install dependencies:
npm install
- Set up environment variables:
cp config_env.example .env
Edit .env and add your API credentials:
# Binance API (optional)
BINANCE_API_KEY=your_binance_api_key
BINANCE_SECRET_KEY=your_binance_secret_key
# Groww API (optional)
GROWW_API_KEY=your_groww_api_key
🚀 Usage
Development Mode
npm run dev
Production Mode
npm start
Build
npm run build
Type Checking
npm run type-check
🔧 Available MCP Tools
Market Analysis
analyzeFundamentals(symbol)- Fundamental analysis for a stockanalyzeMarket(query)- Overall market conditions analysisanalyzeTechnicals(symbol)- Technical indicators and chart analysisanalyzeOptions(symbol)- Options chain and Greeks analysisgetMarketNews(query)- Latest market news and sentiment
Portfolio & Holdings
getUserHoldings()- Get user's portfolio holdingsgetUserBinanceHoldings()- Binance account holdingsanalyzePortfolio(holdings)- Portfolio performance analysis
Groww Platform Integration
getGrowwHoldings()- Groww portfolio holdingsgetGrowwPositions(segment?)- Positions datagetGrowwSymbolsLTP(symbols, segment?)- Last traded pricesgetGrowwSymbolsOHLC(symbols, segment?)- OHLC market datagetGrowwSymbolQuote(symbol, exchange?, segment?)- Detailed quotes
Trading Operations (Groww)
placeGrowwOrder(orderParams)- Place new ordersmodifyGrowwOrder(orderParams)- Modify existing orderscancelGrowwOrder(orderId, segment?)- Cancel ordersgetGrowwOrderStatus(orderId, segment?)- Order status
Margin & Risk
getGrowwUserMargin()- Available margingetGrowwOrderMargin(orders, segment?)- Calculate required margin
Stock Screening
screenStocks(criteria)- Filter stocks by criteria
🏗️ Project Structure
nin-mcp-server/
├── server/
│ ├── mcp-server-sdk.ts # Main MCP server implementation
│ ├── mcp-server.ts # Express server (legacy, not used)
│ └── manifest.ts # Server manifest
├── services/
│ ├── mcpService.ts # MCP service layer
│ └── mcpTools/ # Individual MCP tools
│ ├── fundamentalAnalysis.ts
│ ├── technicalAnalysis.ts
│ ├── portfolioAnalysis.ts
│ ├── marketAnalysis.ts
│ ├── optionsAnalysis.ts
│ ├── stockScreener.ts
│ ├── marketNews.ts
│ ├── riskAssessment.ts
│ ├── userHoldings.ts
│ ├── userBinanceHoldings.ts
│ ├── growwHoldings.ts
│ ├── growwPositions.ts
│ ├── growwLiveData.ts
│ ├── growwOrders.ts
│ ├── growwMargins.ts
│ └── index.ts
├── types/
│ └── mcp.ts # MCP type definitions
├── config_env.example # Environment variables template
└── package.json
🧪 Development
Code Formatting
# Check formatting
npm run format:check
# Auto-fix formatting
npm run format:write
Type Checking
npm run typecheck
🔒 Security
- Store API keys in environment variables, never in code
- Use
dotenvfor local development environment management - API keys are loaded securely from environment variables
📊 Integration with AI Assistants
This MCP server can be integrated with various AI assistants that support the Model Context Protocol:
Claude Desktop Configuration
- Copy the following configuration from your
config_env.examplefile - Add your actual API keys
- Update the file paths to match your installation
- Paste into Claude Desktop's MCP configuration
{
"mcpServers": {
"nin-terminal": {
"command": "ts-node",
"args": [
"/Users/YOUR_USERNAME/path/to/nin-mcp-server/server/mcp-server-sdk.ts"
],
"cwd": "/Users/YOUR_USERNAME/path/to/nin-mcp-server",
"env": {
"NINX_API_KEY": "your_actual_ninx_api_key",
"NINX_SECRET_KEY": "your_actual_ninx_secret_key",
"BINANCE_API_KEY": "your_actual_binance_api_key",
"BINANCE_SECRET_KEY": "your_actual_binance_secret_key",
"GROWW_API_KEY": "your_actual_groww_api_key"
}
}
}
}
Other MCP-Compatible Clients
For other MCP clients, use the stdio transport protocol with similar configuration, adjusting the format as needed for your specific client.
🤝 Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Run tests and type checking
- Submit a pull request
📄 License
MIT License - see LICENSE file for details
🆘 Support
For issues and questions:
- Check the existing issues
- Create a new issue with detailed description
- Include logs and environment information