Provides persistent storage for contact events and rate limiting data, allowing the MCP server to store and retrieve logged authority contact information.
Integrates with Vercel's MCP adapter (@vercel/mcp-adapter) to enable full Model Context Protocol support for the contact authorities functionality.
Contact Authorities MCP Server
A Model Context Protocol (MCP) server for logging contact events with authorities, featuring rate limiting and persistent storage with Supabase.
Features
- MCP Integration: Full Model Context Protocol support using @vercel/mcp-adapter
- Rate Limiting: 5 requests per minute per IP address
- Persistent Storage: Supabase database for events and rate limiting
- Multiple Authority Targets: Police, Fire, Medical, FBI, Cybercrime, Local
- Web Interface: User-friendly form for manual event submission
- Real-time Logging: All events logged with timestamps and IP addresses
MCP Tools
contact_authorities
Log a contact event with authorities.
Parameters:
title
(string, required): Brief title describing the incidenttarget
(string, required): Authority target (police, fire, medical, fbi, cybercrime, local)description
(string, required): Detailed description of the contact reason
get_contact_events
Retrieve recent contact authority events.
Parameters:
limit
(number, optional): Maximum events to retrieve (default: 20, max: 100)target
(string, optional): Filter by authority target
get_rate_limit_status
Check current rate limit status for the requesting IP.
Setup
- Install Dependencies ```bash npm install @vercel/mcp-adapter @supabase/supabase-js ```
- Environment Variables ```env NEXT_PUBLIC_SUPABASE_URL=your_supabase_url NEXT_PUBLIC_SUPABASE_ANON_KEY=your_anon_key SUPABASE_SERVICE_ROLE_KEY=your_service_role_key ```
- Database Setup Run the SQL scripts in your Supabase project to create the required tables.
- MCP Client Configuration Add to your MCP client configuration: ```json { "mcpServers": { "contact-authorities": { "transport": { "type": "http", "url": "https://your-domain.com/api/mcp" } } } } ```
Usage
Via MCP Client
AI models can use the MCP tools to:
- Log contact events with authorities
- Retrieve recent events
- Check rate limit status
Via Web Interface
Users can manually submit contact events through the web form at the root URL.
Rate Limiting
- 5 requests per minute per IP address
- Applies to both MCP and web interface
- Persistent tracking via Supabase
- Automatic cleanup of old rate limit entries
Security
- Row Level Security (RLS) enabled on all tables
- IP address logging for all requests
- Input validation and sanitization
- Service role authentication for database access
This server cannot be installed
A Model Context Protocol server that allows AI models to log and retrieve contact events with various authorities (police, fire, medical, etc.) with rate limiting and persistent storage via Supabase.
Related MCP Servers
- -securityFlicense-qualityA Model Context Protocol server that provides AI assistants with structured access to your Logseq knowledge graph, enabling retrieval, searching, analysis, and creation of content within your personal knowledge base.Last updated -19TypeScript
- AsecurityAlicenseAqualityA Model Context Protocol server that enables AI agents to interact with local Logseq knowledge graphs, supporting operations like creating/editing pages and blocks, searching content, and managing journal entries.Last updated -137PythonMIT License
- -security-license-qualityA Model Context Protocol server that enables AI assistants like Claude to track events, page views, user signups, set user properties, and track revenue in Amplitude analytics.Last updated -JavaScriptMIT License
- -securityAlicense-qualityA Model Context Protocol server that enables AI tools to interact with Supabase databases, providing tools for reading, creating, updating, and deleting records in Supabase tables.Last updated -PythonMIT License