A Python-based MCP (Model Context Protocol) server that enables AI assistants to search and retrieve people information from a Supabase database using natural language queries.
- Natural Language Search: Search for people using natural language queries
- Detailed Person Information: Get comprehensive details about specific individuals
- Image Search: Find images associated with people by email
- List All People: Browse all people in the database with pagination
Search for people using natural language queries.
Examples:
- "find John Smith"
- "who works at Tech Corp"
- "person with email john@example.com"
- "people from San Francisco"
- "software engineer position"
Get comprehensive information about a specific person by their email address.
Find images associated with a person by their email address.
List all people in the database with an optional limit (default: 10, max: 100).
- Install dependencies:
pip install -r requirements.txt- Run the server:
python src/server.pyThe server will start on http://localhost:8000/mcp
- Install MCP Inspector:
npm install -g @modelcontextprotocol/inspector- Run MCP Inspector:
npx @modelcontextprotocol/inspector- Connect to the server:
- Go to http://localhost:3000
- Select "Streamable HTTP" as transport
- Enter URL:
http://localhost:8000/mcp - Click "Connect"
All configuration is hardcoded in src/server.py:
- Supabase URL:
https://afwpcbmhvjwrnolhrocz.supabase.co - Supabase Service Key: Hardcoded service role key with full access
- Tables Used:
nyne_results: Main people data tableimages_names: Image storage table
email(text) - Primary identifiername(text) - Full namephone(text) - Phone numbercompany(text) - Company nametitle(text) - Job titlelocation(text) - Geographic locationdata(json) - Extended structured data containing:- displayname, bio, gender
- fullphone (array), altemails (array)
- social_profiles (object)
- organizations (array)
email(text) - Person's emailimage(bytea) - Binary image data
The server intelligently parses natural language queries to extract:
- Email addresses: Detected using regex patterns
- Phone numbers: Recognized in various formats
- Company names: Keywords like "works at", "from company"
- Job titles: Keywords like "title", "position", "role"
- Locations: Keywords like "from", "in", "location"
- Names: Default extraction when no specific fields detected
Click the "Deploy to Render" button above.
- Fork or push this repository to GitHub
- Connect your GitHub account to Render
- Create a new Web Service on Render
- Connect your repository
- Render will automatically detect the
render.yamlconfiguration
Your server will be available at:
https://your-service-name.onrender.com/mcp
conda create -n people-mcp python=3.13
conda activate people-mcp
pip install -r requirements.txtpython src/server.pyPORT=3000 python src/server.pyOnce connected via MCP Inspector or an AI assistant:
-
Search for people:
- Tool:
search_people - Input: "find people who work at Google"
- Tool:
-
Get detailed information:
- Tool:
get_person_details - Input: "john.doe@example.com"
- Tool:
-
List people:
- Tool:
list_all_people - Input: 20 (to see 20 people)
- Tool:
You can connect this MCP server to Poke at poke.com/settings/connections.
To test the connection explicitly, ask Poke something like:
Tell the subagent to use the "People MCP" integration's "search_people" tool to find John Smith
MIT