PSX MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@PSX MCP ServerShow me top 5 gainers today"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
PSX MCP Server
A Model Context Protocol (MCP) server that provides tools to scrape and access Pakistan Stock Exchange (PSX) market data.
🎥 Demo Video
Watch this demo to see the PSX MCP Server in action with real-time market data!
Related MCP server: Stocks MCP Server
Features
This MCP server provides 12 powerful tools for comprehensive PSX data access:
📊 Basic Tools (Simple & Intuitive)
market_data() - Get current market data for all 460+ stocks listed on PSX
intraday(symbol) - Get intraday time series data for a specific stock
history(symbol) - Get end-of-day historical data for a specific stock (past 5 years)
sector(sector) - Search stocks by sector
gainers(limit) - Get top gaining stocks
losers(limit) - Get top losing stocks
🎯 Advanced Tools (Clean & Powerful)
date_range(symbol, start, end) - Get EOD data for specific date range (YYYY-MM-DD format)
time_range(symbol, start, end) - Get intraday data for specific time range (YYYY-MM-DD HH:MM:SS format)
ohlcv(symbol) - Get OHLCV (Open, High, Low, Close, Volume) data for specific stock
multi_ohlcv(symbols) - Get OHLCV data for multiple stocks (comma-separated symbols)
price_at_time(symbol, timestamp) - Get closest price data at specific Unix timestamp
volume_analysis(symbol, days) - Analyze volume patterns over specified number of days
Installation
Option 1: Direct Installation
Install dependencies:
pip install -r requirements.txtConfigure Gemini CLI (copy and customize the template):
cp gemini_config.template.json gemini_config.json
# Edit gemini_config.json with your project pathRun the MCP server:
python scripts/start_server.pyOption 2: Development Installation
Install with development tools:
make setup
# or
pip install -e ".[dev]"Run with Makefile:
make run-serverOption 3: Docker
Build the Docker image:
docker build -t psx-mcp-server .Run the container:
docker run -it psx-mcp-serverConfiguration
Template Files
The project includes template configuration files for easy setup:
gemini_config.template.json- Simple Gemini CLI configuration templatemcp_config.template.json- Advanced MCP configuration template with additional settings
Quick Setup
Copy the template file:
cp gemini_config.template.json gemini_config.jsonEdit the configuration with your project path:
{
"mcpServers": {
"psx-scraper": {
"command": "python",
"args": ["/your/actual/path/scripts/start_server.py"],
"env": {
"PYTHONPATH": "/your/actual/path/src"
}
}
}
}Connect Gemini CLI:
gemini --config gemini_config.jsonDevelopment
Available Commands
make help # Show all available commands
make test # Run test suite
make lint # Run linting checks
make format # Format code with black
make run-demo # Run demonstrations
make clean # Clean build artifactsData Sources
The server scrapes data from the following PSX endpoints:
https://dps.psx.com.pk/market-watch- Market watch datahttps://dps.psx.com.pk/timeseries/int/{SYMBOL}- Intraday datahttps://dps.psx.com.pk/timeseries/eod/{SYMBOL}- End-of-day data
Usage
The server can be used with any MCP client, such as Gemini CLI. The tools return JSON data that can be processed by the client.
Example Queries
Basic Data (Super Simple):
"Show me market data" →
market_data()"Get HBL intraday data" →
intraday('HBL')"Show HBL history" →
history('HBL')"Find banking stocks" →
sector('Banking')"Top 5 gainers" →
gainers(5)
Advanced Filtering (Clean & Intuitive):
"HBL data from Jan to Feb" →
date_range('HBL', '2024-01-01', '2024-02-01')"HBL intraday 9AM to 3PM" →
time_range('HBL', '2024-10-04 09:00:00', '2024-10-04 15:00:00')"HBL OHLCV data" →
ohlcv('HBL')"OHLCV for HBL,OGDC" →
multi_ohlcv('HBL,OGDC')"HBL volume analysis" →
volume_analysis('HBL', 30)
Example Stock Symbols
HBL - Habib Bank Limited
OGDC - Oil and Gas Development Company
PTC - Pakistan Telecommunication Company
LUCK - Lucky Cement
ENGRO - Engro Corporation
Data Models
Stock Data
Symbol, Sector, Listed In
LDCP, Open, High, Low, Current prices
Change amount and percentage
Volume traded
Time Series Data
Unix timestamp
Price/Close price
Volume
Open price (for EOD data)
Error Handling
All tools include proper error handling and return error messages in JSON format if requests fail.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
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/ahad-raza24/PSX-MCP-Server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server