AWO MCP Demo
Enables querying AWO facility data through natural language, supporting search by city, service, and counting facilities.
README
AWO MCP Demo
Overview
This project demonstrates how the Model Context Protocol (MCP) can be used to expose processed AWO data to AI assistants such as Claude Desktop.
The prototype does not replace the existing AWO data pipeline. Instead, it provides a standardized interface between AI assistants and processed organizational data.
The current implementation uses a small CSV dataset as a demonstration. In a production environment, the same MCP server can be connected to the processed AWO database or data lake.
Architecture
User
│
Claude Desktop
│
MCP Server
│
Processed Dataset (CSV)
Production Architecture
User
│
AI Assistant
│
MCP Server
│
Processed AWO Data
│
Existing AWO Pipeline
(Scraping → Cleaning → Normalization → Deduplication)
Features
- MCP server implemented with FastMCP
- Implemented Tools
Three core tools were implemented to demonstrate the server's querying capabilities:
-
count_facilities(city): Returns the total number of facilities in a specified city. -
search_facilities(city): Returns a detailed list of facilities located in a given city. -
find_facilities_by_service(service): Returns a list of facilities that offer a specific service. -
Claude Desktop integration
-
Interactive Python client for testing
Installation
Clone the repository.
git clone <repository-url>
cd awo-mcp-demo
Create and activate a Conda environment.
conda create -n awo-mcp python=3.11
conda activate awo-mcp
Install the required packages.
pip install -r requirements.txt
Running the MCP Server
Open a terminal in the project directory and activate the Conda environment.
conda activate awo-mcp
python server.py
The server will start and wait for incoming MCP requests. This is expected behavior. Leave this terminal open while testing.
Running the Demo Client
Open a second terminal in the same project directory.
Activate the Conda environment again.
conda activate awo-mcp
python client.py
The interactive menu will appear:
==============================
AWO MCP Demo
==============================
1. Count facilities
2. Search by city
3. Search by service
0. Exit
Choose an option and enter the requested information. The client will communicate with the MCP server and display the returned results. for instance:
Option 1 – Count Facilities
Select 1 and enter a city name (e.g., Berlin).
The client calls the MCP tool:
count_facilities(city="Berlin")
The server searches the dataset and returns the number of matching facilities.
Example:
City: Berlin
Result
------
2
Claude Desktop Integration
Instead of using the demo client, you can connect the MCP server directly to Claude Desktop.
Step 1 – Install Claude Desktop
Download Claude Desktop:
https://claude.ai/download
Step 2 – Configure the MCP Server
Open the Claude Desktop configuration file and add the following server configuration.
{
"mcpServers": {
"awo": {
"command": "C:\\Users\\<USERNAME>\\miniconda3\\envs\\awo-mcp\\python.exe",
"args": [
"D:\\path\\to\\awo-mcp-demo\\server.py"
]
}
}
}
Replace:
<USERNAME>with your Windows username.D:\\path\\to\\awo-mcp-demo\\server.pywith the full path to yourserver.pyfile.
Step 3 – Restart Claude Desktop
Save the configuration file and restart Claude Desktop.
The MCP server should appear under Settings → Developer → Local MCP Servers.
Once connected, Claude can automatically use the available MCP tools.
Example questions:
- How many AWO facilities are in Berlin?
- Show me all AWO facilities in Berlin.
- Find facilities that provide elderly care.
Example Questions
- How many AWO facilities are in Berlin?
- Show me all AWO facilities in Berlin.
- Find facilities that provide elderly care.
- Find childcare facilities.
Future Improvements
- Connect to the real processed AWO dataset
- Add additional MCP tools
- Connect to a production database
- Add authentication and authorization
- Improve logging and monitoring
- Containerize the application with Docker
License
MIT License
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.