mcp-servers-search
This is an MCP server that provides tools for querying and discovering available MCP servers. Users can browse all available MCP servers filtered by category, search by name, description, or author, and discover servers with specific capabilities. It also offers random server suggestions for exploration.
GitHub Stars
2
User Rating
Not Rated
Favorites
0
Views
32
Forks
0
Issues
0
MCP Servers Search
An MCP (Model Context Protocol) server that provides tools for querying and discovering available MCP servers from the official modelcontextprotocol/servers repository.
547 MCP servers as of June 2025.
Features
- List Servers: Browse all available MCP servers with filtering by category
- Search: Find servers by name, description, or author
- Feature Search: Discover servers that provide specific capabilities
- Random Discovery: Get random server suggestions for exploration
- Caching: Efficient caching to minimize GitHub API calls
Installation
Using npm
npm install -g @atonomus/mcp-servers-search
From source
git clone https://github.com/atonomus/mcp-servers-search.git
cd mcp-servers-search
npm install
Usage
Standalone
# Run directly with npx
npx @atonomus/mcp-servers-search
# Or if installed globally
mcp-servers-search
With Claude Desktop
Add to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"servers-search": {
"command": "npx",
"args": ["-y", "@atonomus/mcp-servers-search"]
}
}
}
Available Tools
1. list_servers
List all available MCP servers with optional filtering.
Parameters:
category(optional): Filter by category - "reference", "official", "community", or "all" (default)search(optional): Search servers by name or descriptionlimit(optional): Maximum number of results (default: 20)
Example:
{
"name": "list_servers",
"arguments": {
"category": "official",
"search": "database",
"limit": 10
}
}
2. get_server_details
Get detailed information about a specific MCP server.
Parameters:
name(required): The name of the MCP server
Example:
{
"name": "get_server_details",
"arguments": {
"name": "GitHub"
}
}
3. search_servers_by_feature
Search for servers that provide specific features or capabilities.
Parameters:
feature(required): The feature to search for (e.g., "database", "api", "blockchain")limit(optional): Maximum number of results (default: 10)
Example:
{
"name": "search_servers_by_feature",
"arguments": {
"feature": "blockchain",
"limit": 5
}
}
4. get_random_servers
Get a random selection of MCP servers for discovery.
Parameters:
count(optional): Number of random servers (default: 5)category(optional): Filter by category (default: "all")
Example:
{
"name": "get_random_servers",
"arguments": {
"count": 3,
"category": "community"
}
}
5. refresh_server_list
Force refresh the cached list of MCP servers from GitHub.
Example:
{
"name": "refresh_server_list",
"arguments": {}
}
Development
Setup
# Install dependencies
npm install
# Run normally
npm start
# Run tests
npm test
Testing
The project includes a comprehensive Mocha test suite that tests the README parsing functionality. The tests cover:
- Standard format entries:
[Name](link) - description - Bold format entries:
**[Name](link)** - description - List format entries:
- [Name](link) - description - Author extraction:
(by AuthorName) - Category detection (reference, official, community)
- Description cleaning (removing embedded links)
- Special character handling (preserving backticks)
Run tests with:
npm test
Examples
Using with Claude Desktop
Once configured, you can ask Claude:
- "What MCP servers are available for database operations?"
- "Show me all official MCP servers"
- "Find MCP servers related to AI or machine learning"
- "Give me 5 random community servers to explore"
- "Tell me more about the GitHub MCP server"
Programmatic Usage
// Example of using the server programmatically
import { MCPToolsQueryServer } from '@atonomus/mcp-servers-search';
const server = new MCPToolsQueryServer();
await server.run();
Caching
The server caches the list of available MCP servers for 1 hour to minimize API calls to GitHub. You can force a refresh using the refresh_server_list tool.
Contributing
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
License
MIT - see LICENSE file for details
Acknowledgments
- Built on the Model Context Protocol SDK
- Data sourced from the official MCP Servers Repository
MCP Bar is an all-in-one CLI manager for MCP servers, featuring over 1500 ready-to-use servers. It implements a standardized `mcp.json` manifest file for easy installation and management. Supporting a decentralized distribution model, it allows installation from URLs or local files. The tool securely handles server configurations and provides an open registry for developers to discover and share tools effortlessly.
NPM Helper is a tool designed to assist with npm package management, providing features for updating dependencies and searching for packages. It allows for safe upgrades of a project's package.json, ensuring that dependencies are updated to the latest compatible versions without conflicts. This tool enhances efficiency in managing project dependencies while minimizing errors.