Malaysia Open Data▌
by hithereiamaliff
Discover Malaysia Open Data: AI-first access, intelligent search, and seamless integration for Malaysia's leading open d
A unified AI-first bridge to Malaysia's open data ecosystem with intelligent search, context-aware geocoding, and comprehensive documentation for seamless AI integration.
Both formats append explainx.ai attribution and the canonical URL for this MCP server listing.
best for
- / Researchers analyzing Malaysian government statistics
- / Developers building apps with Malaysian location data
- / Data scientists working with Southeast Asian datasets
- / Applications requiring Malaysian weather or transport data
capabilities
- / Search Malaysian government datasets with intelligent query handling
- / Parse Parquet data files directly with support for up to 500 rows
- / Geocode Malaysian addresses using multiple providers (Google Maps, GrabMaps, OpenStreetMap)
- / Access real-time weather forecasts and warnings
- / Retrieve public transport and GTFS data
- / Browse interactive data visualization dashboards
what it does
Provides AI-friendly access to Malaysia's government open datasets through unified search, data parsing, and geocoding capabilities. Connects to official Malaysian government data sources including statistics, weather, and transport data.
about
Malaysia Open Data is a community-built MCP server published by hithereiamaliff that provides AI assistants with tools and capabilities via the Model Context Protocol. Discover Malaysia Open Data: AI-first access, intelligent search, and seamless integration for Malaysia's leading open d It is categorized under analytics data.
how to install
You can install Malaysia Open Data in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.
license
MIT
Malaysia Open Data is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.
readme
Malaysia Open Data MCP
MCP Endpoint: https://mcp.techmavie.digital/datagovmy/mcp
Analytics Dashboard: https://mcp.techmavie.digital/datagovmy/analytics/dashboard
MCP (Model Context Protocol) server for Malaysia's Open Data APIs, providing easy access to government datasets and collections.
Do note that this is NOT an official MCP server by the Government of Malaysia or anyone from Malaysia's Open Data/Jabatan Digital Negara/Ministry of Digital team.
Features
- Enhanced Unified Search with flexible tokenization and synonym expansion
- Intelligent query handling with term normalization
- Support for plurals and common prefixes (e.g., "e" in "epayment")
- Smart prioritization for different data types
- Parquet File Support using pure JavaScript
- Parse Parquet files directly in the browser or Node.js
- Support for BROTLI compression
- Intelligent date field handling for empty date objects
- Increased row limits (up to 500 rows) for comprehensive data retrieval
- Fallback to metadata estimation when parsing fails
- Automatic dashboard URL mapping for visualization
- Live Data Access Architecture
- Real-time index fetching from GitHub (data-gov-my/datagovmy-meta)
- In-memory caching with configurable TTL
- Dynamic API calls for detailed metadata
- Multi-Provider Geocoding
- Support for Google Maps, GrabMaps, and Nominatim (OpenStreetMap)
- Intelligent service selection based on location and available API keys
- GrabMaps optimization for locations in Malaysia
- Automatic fallback between providers
- Comprehensive Data Sources
- Malaysia's Data Catalogue with rich metadata
- Interactive Dashboards for data visualization
- Department of Statistics Malaysia (DOSM) data
- Weather forecast and warnings
- Public transport and GTFS data
- Multi-Provider Malaysian Geocoding
- Optimized for Malaysian addresses and locations
- Three-tier geocoding system: GrabMaps, Google Maps, and Nominatim
- Prioritizes local knowledge with GrabMaps for better Malaysian coverage
- Automatic fallback to Nominatim when no API keys are provided
Architecture
This MCP server fetches dataset and dashboard metadata live from the data-gov-my/datagovmy-meta GitHub repository:
- Live GitHub Indexes — Fetches all dataset and dashboard metadata via the GitHub Trees API and raw content URLs
- Cache Pre-Warming — Indexes are fetched immediately on server startup, so the first user request is fast
- In-Memory Caching — Indexes are cached in memory with a configurable TTL (default: 1 hour)
- Background Refresh — When cache expires, stale data is served instantly while a background refresh fetches updated indexes. Users never experience fetch delays after the initial startup.
- Dynamic Detail Fetching — Individual dataset/dashboard details are fetched on-demand from GitHub raw content
This approach provides several benefits:
- Always up-to-date with the latest datasets and dashboards
- No static data that goes stale
- Zero-latency responses (pre-warmed cache + background refresh)
- Consistent data access patterns
Documentation
- TOOLS.md - Detailed information about available tools and best practices
- PROMPT.md - AI integration guidelines and usage patterns
AI Integration
When integrating this MCP server with AI models:
- Use the unified search tool first - Always start with
search_allfor any data queries - Follow the correct URL patterns - Use
https://data.gov.my/...andhttps://open.dosm.gov.my/... - Leverage Parquet file tools - Use
parse_parquet_fileto access data directly orget_parquet_infofor metadata - Live indexes - Dataset and dashboard indexes are fetched live from GitHub and cached in memory
- Consider dashboard visualization - For complex data, use the dashboard links provided by
find_dashboard_for_parquet - Leverage the multi-provider Malaysian geocoding - For Malaysian location queries, the system automatically selects the best provider (GrabMaps, Google Maps, or Nominatim) with fallback to Nominatim when no API keys are configured
Refer to PROMPT.md for comprehensive AI integration guidelines.
Installation
npm install
Quick Start (Hosted Server)
The easiest way to use this MCP server is via the hosted endpoint. No installation required!
Server URL:
https://mcp.techmavie.digital/datagovmy/mcp
Using Your Own API Keys
You can provide your own API keys via URL query parameters:
https://mcp.techmavie.digital/datagovmy/mcp?googleMapsApiKey=YOUR_KEY
Or via headers:
X-Google-Maps-Api-Key: YOUR_KEYX-GrabMaps-Api-Key: YOUR_KEYX-AWS-Access-Key-Id: YOUR_KEYX-AWS-Secret-Access-Key: YOUR_KEYX-AWS-Region: ap-southeast-5
Supported Query Parameters:
| Parameter | Description |
|---|---|
googleMapsApiKey | Google Maps API key for geocoding |
grabMapsApiKey | GrabMaps API key for Southeast Asia geocoding |
awsAccessKeyId | AWS Access Key ID for AWS Location Service |
awsSecretAccessKey | AWS Secret Access Key |
awsRegion | AWS Region (default: ap-southeast-5) |
⚠️ Important: GrabMaps Requirements
To use GrabMaps geocoding, you need ALL FOUR parameters:
grabMapsApiKeyawsAccessKeyIdawsSecretAccessKeyawsRegionGrabMaps uses AWS Location Service under the hood, so AWS credentials are required alongside the GrabMaps API key.
Client Configuration
For Claude Desktop / Cursor / Windsurf, add to your MCP configuration:
{
"mcpServers": {
"malaysia-opendata": {
"transport": "streamable-http",
"url": "https://mcp.techmavie.digital/datagovmy/mcp"
}
}
}
With your own API key:
{
"mcpServers": {
"malaysia-opendata": {
"transport": "streamable-http",
"url": "https://mcp.techmavie.digital/datagovmy/mcp?googleMapsApiKey=YOUR_KEY"
}
}
}
Self-Hosted (VPS)
If you prefer to run your own instance, see deploy/DEPLOYMENT.md for detailed VPS deployment instructions with Docker and Nginx.
Analytics Dashboard
The hosted server includes a built-in analytics dashboard:
Dashboard URL: https://mcp.techmavie.digital/datagovmy/analytics/dashboard
Analytics Endpoints
| Endpoint | Description |
|---|---|
/analytics | Full analytics summary (JSON) |
/analytics/tools | Detailed tool usage stats (JSON) |
/analytics/dashboard | Visual dashboard with charts (HTML) |
The dashboard tracks:
- Total requests and tool calls
- Tool usage distribution
- Hourly request trends (last 24 hours)
- Requests by endpoint
- Top clients by user agent
- Recent tool calls feed
Auto-refreshes every 30 seconds.
Available Tools
Unified Search
search_all: Primary search tool — searches across both datasets and dashboards with intelligent fallback and scoring
Data Catalogue
list_datasets_catalogue: Lists available datasets in the Data Cataloguesearch_datasets_catalogue: Searches datasets in the Data Cataloguefilter_datasets_catalogue: Filters datasets by frequency, geography, demography, data source, or year rangeget_dataset_details: Gets metadata/details for a specific datasetget_dataset_filters: Gets available filter options for datasets
Dashboards
list_dashboards: Lists all available dashboardssearch_dashboards: Searches dashboards by queryget_dashboard_details: Gets comprehensive metadata for a dashboardget_dashboard_charts: Gets chart configurations for a specific dashboard
Department of Statistics Malaysia (DOSM)
list_dosm_datasets: Lists available datasets from DOSMget_dosm_dataset: Gets data from a specific DOSM dataset
Parquet File Handling
parse_parquet_file: Parse and display data from a Parquet file URL- Supports up to 500 rows for comprehensive data analysis
- Automatically handles empty date objects with appropriate formatting
- Processes BigInt values for proper JSON serialization
get_parquet_info: Get metadata and structure information about a Parquet filefind_dashboard_for_parquet: Find the corresponding dashboard URL for a Parquet file
Weather
get_weather_forecast: Gets weather forecast for Malaysiaget_weather_warnings: Gets current weather warnings for Malaysiaget_earthquake_warnings: Gets earthquake warnings for Malaysia
Transport
list_transport_agencies: Lists available transport agencies with GTFS dataget_transport_data: Gets GTFS data for a specific transport agency
GTFS Parsing
parse_gtfs_static: Parses GTFS Static data (ZIP files with CSV data) for a specific transport providerparse_gtfs_realtime: Parses GTFS Realtime data (Protocol Buffer format) for vehicle positionsget_transit_routes: Extracts route information from GTFS dataget_transit_stops: Extracts stop information from GTFS data, optionally filtered by route
Flood Warnings
get_flood_warnings: Gets current flood warnings for Malaysia, filterable by state, district, and severity
Test
hello: A simple test tool to verify that the MCP server is working correctly
Data-Catalogue Information Retrieval
The MCP server provides robust handling for data-catalogue information retrieval:
Date Handling in Parquet Files
- Empty Date Objects: The system automatically detects and handles empty date objects in parquet files
- Dataset-Specific Handling: Special handling for known datasets like
employment_sectorwith annual data from 2001-2022 - Pattern Recognition: Detects date patterns in existing data to maintain co
FAQ
- What is the Malaysia Open Data MCP server?
- Malaysia Open Data is a Model Context Protocol (MCP) server profile on explainx.ai. MCP lets AI hosts (e.g. Claude Desktop, Cursor) call tools and resources through a standard interface; this page summarizes categories, install hints, and community ratings.
- How do MCP servers relate to agent skills?
- Skills are reusable instruction packages (often SKILL.md); MCP servers expose live capabilities. Teams frequently combine both—skills for workflows, MCP for APIs and data. See explainx.ai/skills and explainx.ai/mcp-servers for parallel directories.
- How are reviews shown for Malaysia Open Data?
- This profile displays 57 aggregated ratings (sample rows for discoverability plus signed-in user reviews). Average score is about 4.7 out of 5—verify behavior in your own environment before production use.
Use Cases▌
Extended AI Capabilities
Add new capabilities to Claude beyond text generation
Example
Access external data sources, execute code, interact with tools and services
Transform Claude from chatbot to action-taking agent
Context Enhancement
Provide Claude with access to relevant context and data
Example
Load project documentation, access knowledge bases, query databases
Get more accurate, context-aware responses
Workflow Automation
Automate multi-step workflows combining AI and external tools
Example
Research → Summarize → Create document → Send notification
Complete complex tasks end-to-end without manual steps
Implementation Guide▌
Prerequisites
- ›Claude Desktop 0.7.0+ or Cursor IDE with MCP support
- ›Basic understanding of MCP architecture and capabilities
- ›Access credentials for integrated services (if required)
- ›Willingness to experiment and iterate on configuration
Time Estimate
15-60 minutes depending on server complexity
Installation Steps
- 1.Install MCP server: npm install -g [package-name] or via GitHub
- 2.Add server configuration to ~/.claude/mcp.json
- 3.Provide required credentials and configuration
- 4.Restart Claude Desktop to load new server
- 5.Test basic functionality with simple prompts
- 6.Explore capabilities and experiment with use cases
- 7.Document successful patterns for reuse
Troubleshooting
- ⚠MCP server not loading: Check config syntax, verify installation
- ⚠Connection errors: Check network, firewall, credentials
- ⚠Feature not working: Read server docs, check required parameters
- ⚠Performance issues: Monitor resource usage, check for network latency
- ⚠Conflicts with other servers: Check port assignments, namespace collisions
Best Practices▌
✓ Do
- +Read server documentation thoroughly before setup
- +Start with simple use cases to validate functionality
- +Test in non-production environment first
- +Monitor resource usage and performance
- +Keep servers updated for bug fixes and new features
- +Document configuration for team members
- +Use environment variables for sensitive configuration
✗ Don't
- −Don't grant overly permissive access to MCP servers
- −Don't skip reading security considerations in docs
- −Don't expose sensitive data without proper controls
- −Don't run untrusted MCP servers without code review
- −Don't ignore error messages—investigate root cause
💡 Pro Tips
- ★Combine multiple MCP servers for powerful workflows
- ★Create custom MCP servers for your specific needs
- ★Share successful configurations with team
- ★Use MCP inspector for debugging
- ★Join MCP community for tips and troubleshooting
Technical Details▌
Architecture
Model Context Protocol standardizes how AI hosts (Claude, Cursor) communicate with external tools and data sources through server implementations.
Protocols
- Model Context Protocol (MCP)
- JSON-RPC 2.0
- stdio or HTTP transport
Compatibility
- Claude Desktop
- Cursor IDE
- Custom MCP clients
When to Use This▌
✓ Use When
Use when you need Claude to access external data, execute actions, or integrate with tools. Best for extending AI capabilities beyond conversation.
✗ Avoid When
Avoid when native integrations exist (use official APIs directly), for real-time critical systems, or when security/compliance requires zero external dependencies.
Integration▌
- →Tool composition: Chain multiple MCP tools in workflows
- →Context augmentation: Provide AI with relevant external data
- →Action delegation: Let AI execute tasks on external systems
- →Bidirectional sync: Keep AI context and external systems in sync
Discussion
Product Hunt–style comments (not star reviews)- No comments yet — start the thread.
List & Promote Your MCP Server
Share your MCP server with the developer community
Ratings
4.7★★★★★57 reviews- ★★★★★Li Chawla· Dec 24, 2024
We evaluated Malaysia Open Data against two servers with overlapping tools; this profile had the clearer scope statement.
- ★★★★★Ganesh Mohane· Dec 20, 2024
We wired Malaysia Open Data into a staging workspace; the listing’s GitHub and npm pointers saved time versus hunting across READMEs.
- ★★★★★Diya Patel· Dec 20, 2024
Malaysia Open Data is a well-scoped MCP server in the explainx.ai directory — install snippets and categories matched our Claude Code setup.
- ★★★★★Diya Chen· Dec 16, 2024
Malaysia Open Data is among the better-indexed MCP projects we tried; the explainx.ai summary tracks the official description.
- ★★★★★Diya Li· Dec 12, 2024
Malaysia Open Data reduced integration guesswork — categories and install configs on the listing matched the upstream repo.
- ★★★★★Diya Gill· Nov 15, 2024
Malaysia Open Data is among the better-indexed MCP projects we tried; the explainx.ai summary tracks the official description.
- ★★★★★Rahul Santra· Nov 11, 2024
Malaysia Open Data reduced integration guesswork — categories and install configs on the listing matched the upstream repo.
- ★★★★★Liam Chawla· Nov 11, 2024
I recommend Malaysia Open Data for teams standardizing on MCP; the explainx.ai page compares cleanly with sibling servers.
- ★★★★★Li Bansal· Nov 11, 2024
Strong directory entry: Malaysia Open Data surfaces stars and publisher context so we could sanity-check maintenance before adopting.
- ★★★★★Alexander Huang· Nov 7, 2024
We evaluated Malaysia Open Data against two servers with overlapping tools; this profile had the clearer scope statement.
showing 1-10 of 57