pub-dev-mcp-server
v1.1.0
Published
MCP server for pub.dev package information and GitHub README access
Downloads
13
Maintainers
Readme
Pub.dev MCP Server
Model Context Protocol server for pub.dev package information and GitHub README access.
🚀 Live API: https://web-production-e619b.up.railway.app
📦 NPM Package: pub-dev-mcp-server
Quick Start
Add to your MCP config:
{
"servers": {
"pub-dev": {
"command": "npx",
"args": ["pub-dev-mcp-server@latest"]
}
}
}Tools
list_pub_packages- Get all pub.dev package namesget_package_details- Get package info (version, description, etc.)get_github_readme- Fetch README from package repository
HTTP API
# Get package details
curl https://web-production-e619b.up.railway.app/package/flutter
# Get README
curl https://web-production-e619b.up.railway.app/readme/dio
# List tools
curl https://web-production-e619b.up.railway.app/toolsManual Installation
git clone https://github.com/hammadparveez/pub_dev_mcp.git
cd pub_dev_mcp
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
python server.pyLicense
MIT ├── test_suite.py # Comprehensive test suite ├── setup.sh # Automated setup script └── requirements.txt # Python dependencies
## Quick Start
### Automated Setup
```bash
./setup.shManual Setup
# Create virtual environment
python3 -m venv venv
source venv/bin/activate
# Install dependencies
pip install -r requirements.txtTesting
Run All Tests
source venv/bin/activate
python test_suite.pyThis comprehensive test suite validates:
- ✅ pub.dev API client functionality
- ✅ GitHub client functionality
- ✅ MCP tools implementation
- ✅ MCP protocol communication
Interactive Testing with MCP Inspector
# Install MCP Inspector
npm install -g @modelcontextprotocol/inspector
# Run server with inspector
source venv/bin/activate
npx @modelcontextprotocol/inspector python server.pyAvailable Tools
1. list_pub_packages
Fetches all package names available on pub.dev (20,000+ packages).
Parameters: None
Returns: List of package names with count information.
2. get_package_details
Gets detailed information about a specific package.
Parameters:
package_name(string): The package name
Returns: JSON with package metadata including version, description, dependencies, etc.
3. get_github_readme
Fetches README.md from a package's GitHub repository.
Parameters:
package_name(string): The package name
Returns: README content with source URL information.
Features:
- ✅ Checks
repositoryfield first - 🔄 Falls back to
homepagefield if repository is null - 📝 Clear indication of URL source used
- 🌲 Tries multiple README file names and Git branches
Usage with Claude Desktop
Add to your Claude Desktop configuration:
{
"mcpServers": {
"pub-dev-server": {
"command": "python",
"args": ["/path/to/pub_dev_mcp/server.py"],
"env": {}
}
}
}Status
- ✅ Production Ready: All tests passing
- ✅ MCP Compliant: Follows protocol specifications
- ✅ Well Tested: Comprehensive test suite
- ✅ Clean Architecture: Modular, maintainable codebase
