MCP Recommender
Mentioned as an example use case for database operations, suggesting the server can recommend MCP servers for SQLite database functionality
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., "@MCP Recommenderrecommend MCP servers for web scraping tasks"
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.
MCP Recommender
A smart MCP (Model Context Protocol) server that provides intelligent recommendations for other MCP servers based on your development needs.
Features
π Smart Search: Find MCP servers using natural language queries
π Rich Database: Access to 874+ curated MCP servers across 36+ categories
π― Intelligent Matching: Advanced scoring algorithm for relevant recommendations
π·οΈ Category Filtering: Filter by specific categories and programming languages
π Easy Integration: Simple setup with uv package manager
π§ Multiple Interfaces: Support for both CLI and MCP client integration
Related MCP server: MCP Registry Server
Installation
Using uv (Recommended)
# Clone the repository
git clone https://github.com/mcp-team/mcp-recommender.git
cd mcp-recommender
# Install with uv
uv sync
# Test the installation
uv run -m mcp_recommender --testUsing pip
pip install mcp-recommenderUsage
Command Line Interface
# Test mode - verify installation and see sample recommendations
uv run -m mcp_recommender --test
# Server mode - start the MCP server
uv run -m mcp_recommender --server
# Debug mode - detailed diagnostic information
uv run -m mcp_recommender --debugMCP Client Integration
Add to your MCP client configuration:
{
"mcpServers": {
"mcp-recommender": {
"isActive": true,
"name": "mcp-recommender",
"type": "stdio",
"command": "uv",
"args": [
"--directory",
"/path/to/mcp-recommender",
"run",
"-m",
"mcp_recommender"
]
}
}
}Available Tools
Once integrated, you can use these tools in your MCP client:
recommend_mcp
Get intelligent MCP server recommendations based on your needs.
Parameters:
query(string): Description of functionality you needlimit(integer, optional): Maximum number of recommendations (default: 5)category(string, optional): Filter by specific categorylanguage(string, optional): Filter by programming language
Example:
recommend_mcp("database operations with SQLite", limit=3)list_categories
List all available MCP categories with counts.
get_functional_keywords
Show functional keyword mappings for better search results.
Categories
The recommender covers 36+ categories including:
Developer Tools (120+ servers)
Databases (79+ servers)
Search & Data Extraction (69+ servers)
Cloud Platforms (39+ servers)
Security (39+ servers)
Communication (36+ servers)
Browser Automation (23+ servers)
Knowledge & Memory (22+ servers)
And many more...
Development
Setup Development Environment
# Clone and setup
git clone https://github.com/mcp-team/mcp-recommender.git
cd mcp-recommender
# Install development dependencies
uv sync --dev
# Run tests
uv run pytest
# Build package
uv buildProject Structure
mcp-recommender/
βββ mcp_recommender/ # Main package
β βββ __init__.py
β βββ __main__.py # CLI entry point
β βββ server.py # MCP server implementation
β βββ data/ # MCP database and keywords
β βββ mcp_database.json
β βββ functional_keywords.json
βββ tests/ # Test suite
βββ LICENSE # MIT License
βββ README.md # This file
βββ pyproject.toml # Package configurationContributing
Fork the repository
Create a feature branch (
git checkout -b feature/amazing-feature)Commit your changes (
git commit -m 'Add amazing feature')Push to the branch (
git push origin feature/amazing-feature)Open a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
Built with FastMCP framework
MCP database curated from the awesome MCP community
Powered by the Model Context Protocol
Support
π Documentation
π Issue Tracker
π¬ Discussions
Made with β€οΈ by the MCP community
Available Tools
3 toolsget_functional_keywordsB
Show available functional keyword mappings for better search results.
Returns: Formatted list of functional keywords
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool 'Returns: Formatted list of functional keywords,' which gives some output information, but it doesn't disclose critical behavioral traits such as whether it's read-only (implied by 'Show' but not explicit), potential rate limits, authentication needs, or any side effects. For a tool with no annotations, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded, consisting of two sentences that directly state the purpose and return value without any wasted words. Every sentence earns its place by providing essential information, making it highly efficient and well-structured for quick understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (0 parameters, no annotations, but has an output schema), the description is reasonably complete. It explains what the tool does and what it returns, and since an output schema exists, it doesn't need to detail return values further. However, it could improve by adding more behavioral context, such as usage scenarios or limitations, to better guide the AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters with 100% schema description coverage, so the input schema fully documents the lack of parameters. The description doesn't add any parameter-specific information, which is appropriate here. According to the rules, with 0 parameters, the baseline score is 4, as there's no need for the description to compensate for schema gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with 'Show available functional keyword mappings for better search results,' which is a specific verb ('Show') and resource ('functional keyword mappings'). It distinguishes from sibling tools like 'list_categories' and 'recommend_mcp' by focusing on keyword mappings rather than categories or recommendations. However, it doesn't explicitly differentiate from siblings in the text, so it's not a perfect 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It mentions 'for better search results,' which implies a context of search optimization, but there's no explicit mention of when to choose this over sibling tools like 'list_categories' or 'recommend_mcp,' nor any prerequisites or exclusions. This lack of specific usage instructions limits its effectiveness for an AI agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_categoriesB
List all available MCP categories.
Returns: Formatted list of available categories
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It mentions the return format ('Formatted list of available categories'), which adds some behavioral context, but lacks details on permissions, rate limits, or error handling. For a tool with zero annotation coverage, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core purpose in the first sentence, followed by a brief note on returns. Both sentences are essential, with no wasted words, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (0 parameters, output schema exists), the description is minimally adequate. It states the purpose and return format, but with no annotations and sibling tools present, it could benefit from more context on usage and behavior. The output schema reduces the need for return value details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters, and schema description coverage is 100%, so no parameter documentation is needed. The description does not add parameter semantics, but this is appropriate given the lack of parameters, warranting a baseline score of 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'List all available MCP categories.' It specifies the verb ('List') and resource ('MCP categories'), though it doesn't explicitly differentiate from sibling tools like 'get_functional_keywords' or 'recommend_mcp'. The purpose is unambiguous but lacks sibling comparison.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description does not mention sibling tools or contexts where this tool is preferred, such as for retrieving a broad list versus specific recommendations. Usage is implied but not explicitly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recommend_mcpB
Recommend MCP servers based on your development needs.
Args: query: Description of the functionality you need (e.g., "database operations", "web scraping", "file management") limit: Maximum number of recommendations to return (default: 5) category: Filter by specific category (optional) language: Filter by programming language (optional)
Returns: Formatted markdown string with MCP recommendations
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | ||
| limit | No | ||
| category | No | ||
| language | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the tool returns 'formatted markdown string with MCP recommendations' but doesn't describe the recommendation algorithm, whether results are ranked, what data sources are used, or any limitations (rate limits, freshness of data, etc.). For a recommendation tool with zero annotation coverage, this is insufficient behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is perfectly structured and concise. It begins with a clear purpose statement, then provides organized parameter documentation with helpful examples, and concludes with return value information. Every sentence earns its place, and the information is front-loaded with the most important details first.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (4 parameters, 1 required), no annotations, but with an output schema, the description provides good coverage. The parameter semantics are well-explained, and the existence of an output schema means the description doesn't need to detail return values. However, it lacks guidance on when to use this versus sibling tools, which is a notable gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description provides excellent parameter semantics despite 0% schema description coverage. It clearly explains each parameter's purpose with examples: 'query: Description of the functionality you need (e.g., "database operations", "web scraping", "file management")', 'limit: Maximum number of recommendations to return (default: 5)', and clarifies optionality for category and language. This fully compensates for the lack of schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Recommend MCP servers based on your development needs.' It specifies the verb ('recommend'), resource ('MCP servers'), and context ('development needs'). However, it doesn't explicitly differentiate from sibling tools like 'get_functional_keywords' or 'list_categories' - it's clear what this tool does, but not how it's distinct from those alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus the sibling tools 'get_functional_keywords' and 'list_categories'. While it mentions the tool's purpose, it doesn't indicate scenarios where this recommendation tool is preferable to the keyword or category listing tools, nor does it mention any prerequisites or constraints for usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Each tool has a clearly distinct purpose with no overlap: get_functional_keywords provides keyword mappings, list_categories shows available categories, and recommend_mcp generates server recommendations based on user needs. The tools target different aspects of the recommendation system and cannot be confused.
The naming follows a consistent verb_noun pattern (get_functional_keywords, list_categories, recommend_mcp) with clear, descriptive names. The minor deviation is that 'recommend_mcp' uses a verb-object structure rather than verb_noun, but this is still readable and maintains overall consistency.
With only 3 tools, the set feels thin for a server named 'MCP Recommender' that aims to help users find MCP servers. While the core functionality is covered, additional tools like filtering or detailed server information could enhance the scope. The count is borderline but workable.
The tool surface covers the essential workflows: exploring keywords and categories, and getting recommendations. Minor gaps exist, such as no tool to get detailed information about a specific server or to save/favorite recommendations, but agents can work around these with the provided tools.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Search 77,000+ MCP servers ranked by real adoption data to find the right one for any task.
Search the official MCP registry: 17,000+ servers with trust grades, stars, tools, install config.
Find the right MCP server for your task. 4,500+ servers ranked by community trust.
Search a nightly-refreshed directory of MCP servers by keyword, category or topic.
Related MCP Servers
- AlicenseCqualityDmaintenanceEasily find MCP servers using our MCP registry. Search with natural language.15MIT
- AlicenseNot gradedqualityDmaintenanceEnables searching and retrieving detailed information about MCP servers from the official MCP registry. Provides tools to list servers with filtering options and get comprehensive details about specific servers.573MIT
- AlicenseNot gradedqualityDmaintenanceEnables discovery and querying of available MCP servers from the official repository. Supports searching by name, description, features, categories, and provides random server suggestions for exploration.223MIT
- FlicenseNot gradedqualityDmaintenanceHelps users discover and install MCP servers from PlayMCP using hybrid search (keyword matching + semantic search) based on their requests, and provides installation guidance.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/bxzymy/mcp-recommend'
If you have feedback or need assistance with the MCP directory API, please join our Discord server