RIP.ie MCP Server
A Model Context Protocol (MCP) compliant server that provides access to the RIP.ie GraphQL backend, allowing users to query and retrieve death notices and related information from RIP.ie.
README
RIP.ie MCP Server
A Model Context Protocol (MCP) compliant server that provides access to the RIP.ie GraphQL backend. This server enables seamless integration with various MCP-compatible client applications, allowing users to query and retrieve death notices and related information from RIP.ie.
Overview
This server implements a fully compliant MCP server with proper JSON-RPC 2.0 protocol support and provides a set of tools to interact with RIP.ie's GraphQL API:
- Tool Discovery: Automatic tool listing with detailed schemas and descriptions
- Error Handling: Proper JSON-RPC error responses with meaningful error codes
Available Functionality
- Retrieve death notices and funeral arrangements
- Search through counties and towns
- Access detailed funeral director information
- Obtain comprehensive death notice details
Installation
- Ensure Python 3.7 or higher is installed on your system
- Clone this repository:
git clone https://github.com/CiaranMcAleer/RipIEMCP.git cd RipIEMCP - Install the required dependencies:
pip install -r requirements.txt
Testing
Run the test suite to verify the server functionality:
python test_rip_ie_mcp.py
The test suite will:
- Initialize the MCP server
- Test tool discovery
- Verify all available tools
- Test actual API calls to RIP.ie
Configuration
For Claude Desktop
- Open Claude Desktop settings
- Navigate to the MCP Servers section
- Add a new server with the following configuration:
{ "mcpServers": { "ripie": { "command": "python", "args": ["path/to/RipIEMCP/rip-ie-server/rip_ie_server.py"] } } }
For Other MCP Clients
This server follows the MCP 2025-06-18 specification and should work with any compliant MCP client. Configure your client to use:
- Transport: stdio
- Command:
python path/to/RipIEMCP/rip-ie-server/rip_ie_server.py - Protocol Version: 2025-06-18
Available Tools
The server automatically advertises the following tools via the MCP tools/list endpoint:
get_counties: Get all counties in Ireland from Rip.ieget_counties_for_filters: Get counties filtered by search criteriaget_towns_for_filters: Get towns in a specific countysearch_death_notices: Search for death notices with filtersget_death_notice_full: Get full details of a death noticeget_death_notice_fd_info: Get funeral director and location information for a death notice
Each tool includes detailed JSON schema validation for parameters and comprehensive error handling.
Protocol Features
JSON-RPC 2.0 Compliance
- Proper request/response ID handling
- Standard error codes and messages
- Protocol version negotiation
MCP Specification Support
- Server initialization with capability negotiation
- Tool discovery through
tools/list - Structured tool execution via
tools/call - Proper content block formatting for responses
Usage Examples
MCP Client Integration
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "search_death_notices",
"arguments": {
"list": {
"page": 1,
"records": 5,
"searchFields": [],
"filters": [
{"field": "a.createdAt", "operator": "gte", "value": "2025-06-01 00:00:00"}
],
"orders": [
{"field": "a.createdAtCastToDate", "type": "DESC"}
]
},
"isTiledView": false
}
}
}
Tool Parameters
get_counties_for_filters
{
"input": {
"search": "Dublin"
}
}
get_towns_for_filters
{
"countyId": 10,
"input": {
"page": 1,
"records": 10
}
}
Error Handling
The server implements robust JSON-RPC 2.0 error handling:
- -32600: Invalid Request (malformed JSON-RPC)
- -32601: Method Not Found (unknown tool or method)
- -32602: Invalid Params (missing required parameters)
- -32603: Internal Error (API failures, network issues)
- -32002: Server Not Initialized (server state error)
Technical Requirements
- Python 3.7+ (updated requirement)
- requests library (for API calls)
- Internet connection to access RIP.ie API
- MCP-compatible client (Claude Desktop, VS Code, etc.)
CI/CD
This project includes GitHub Actions for automated testing:
- Runs tests on Python 3.7, 3.8, 3.9, 3.10, 3.11
- Tests all MCP protocol functionality
- Validates API integration
- Reports test results with detailed output
Support
For issues, questions, or contributions, please create an issue in the project repository.
Legal Notice
Users should comply with RIP.ie's terms of service and use the tool responsibly.
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.