FreshMCP
About
Provides an MCP interface for FreshMCP operations using Azure Cosmos DB and AI Search.
Details
- Author
- eosho
- Categories
- Cloud Service, Other, Infrastructure, Search, Knowledge Base
Jump to
Setup
Install FreshMCP in your MCP client (Claude Desktop, Cursor, Windsurf, and others).
Repository: https://github.com/eosho/freshMCP
Follow the installation instructions in the repository README, then restart your MCP client.
A Python-based service that provides a Message Control Protocol (MCP) interface for FreshMCP operations using Azure Cosmos DB and AI Search.
FreshMCP is a comprehensive service that provides standardized interfaces for interacting with Azure services:
- Container management (create, list, delete)
- Item operations (create, read, update, delete, query)
graph TB subgraph "Client Layer" A[VSCode/Cursor Client] B[Web Application] end subgraph "APIM Gateway" C[Azure API Management] D[Rate Limiting] E[Authentication] F[Request Routing] end subgraph "MCP Agent Layer" G[Cosmos DB MCP Agent] H[Search MCP Agent] end subgraph "Azure Services" J[Cosmos DB] K[AI Search] end A --> C B --> C C --> D C --> E C --> F F --> G F --> H G --> J H --> K
- Client Request: VSCode/Cursor or web application sends request to APIM
- APIM Processing:
- Authentication and authorization
- Rate limiting and throttling
- Request routing based on service type
- Tool execution based on request type
- Service-specific operations
- Response formatting
- Direct API calls to Azure services
- Data retrieval and manipulation
- Telemetry collection
The Azure API Management (APIM) serves as the central gateway for all MCP agent communications:
- Authentication: Subscription key-based authentication
- Rate Limiting: Configurable limits per subscription
- Routing: Intelligent routing to appropriate MCP agents
- Monitoring: Built-in analytics and monitoring
- Caching: Response caching for improved performance
Each MCP agent communicates via Server-Sent Events (SSE) protocol:
- Cosmos DB Agent: Handles all database operations
- Search Agent: Manages AI Search index operations
- Python 3.11 or higher
- Azure CLI
- Azure Developer CLI (azd)
- Docker
- Azure subscription with appropriate permissions
- Create and activate a virtual environment using uv:
uv venv # Windows .venv\Scripts\activate # Linux/Mac source .venv/bin/activate
cp .env.example .env # Edit .env with your Azure credentials and service settings
The server will start onhttp://localhost:8001/cosmos/sse
The server will start onhttp://localhost:8002/search/sse
Add the tools of any MCP server to VSCode or Cursor providing a JSON configuration file below:
{ "servers": { "cosmos_mcp_local": { "type": "sse", "url": "http://localhost:8001/cosmos/sse" }, "search_mcp_local": { "type": "sse", "url": "http://localhost:8002/search/sse" } } }
{ "mcpServers": { "cosmos_mcp_local": { "type": "sse", "url": "http://localhost:8001/cosmos/sse" }, "search_mcp_local": { "type": "sse", "url": "http://localhost:8002/search/sse" } } }
Deployment with Azure Developer CLI (azd)
azd init -e dev -l eastus # -e dev is optional, it will create a new dev environment # -l eastus is optional, it will create the resources in the eastus region
- Packages the project/services
- Provision all the necessary Azure services
- Build and push the Docker images to the Azure Container Registry
- Deploy the images to the Azure Container Apps
- Grant the necessary RBAC role to the system-assigned managed identity:
az cosmosdb sql role assignment create \ --account-name <your-cosmos-account> \ --resource-group <your-resource-group> \ --role-definition-id "00000000-0000-0000-0000-000000000002" \ --principal-id <managed-identity-principal-id> \ --scope "/"
Note: The system-assigned managed identity is assigned to your cosmosdb Container App by default.
- Grant the necessary RBAC role to the system-assigned managed identity:
az role assignment create \ --assignee <managed-identity-principal-id> \ --role "Search Service Contributor" \ --scope /subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Search/searchServices/<search-service-name>
Note: The system-assigned managed identity is assigned to your search Container App by default.
Required environment variables (use a table to list them):
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Search content using Azure AI Agent Service and Azure AI Search.
Access, search, and get recommendations from public AWS documentation.
An MCP server for the Red Bee Media OTT Platform, offering tools for authentication, content search, user management, purchases, and system operations.
Find deals on virtual and dedicated server hosting
Live availability, search, listing detail and cross OTA price comparison for Airbnb, Booking.com, Vrbo and Google Hotels in one unified schema, exposed as 7 read only MCP tools and 8 REST endpoints
Search content using Azure AI Agent Service and Azure AI Search.
Provides full-text and semantic search over structured and unstructured data using Azure Cognitive Search.
A serverless NoSQL database and search platform.
Manage and interact with Microsoft Azure services.
Deploy and operate workloads, secrets, and networking across AWS, GCP, Azure, and private clouds.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.




