- Home
- MCP servers
- Contact Authorities
Contact Authorities
- javascript
1
GitHub Stars
javascript
Language
6 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
You deploy the Contact Authorities MCP Server to log authority contact events with built-in rate limiting and persistent storage, enabling real-time logging, easy retrieval of recent events, and a web form for manual submissions.
How to use
You interact with the server through an MCP client or the built-in web interface. Use the MCP client to log a contact event with authorities, fetch recent events, and query your current rate limit status. Those events are stored persistently and tagged with timestamps and the requesting IP for traceability.
Practical usage patterns include logging incidents to a chosen authority target, filtering recent events by target when you retrieve history, and periodically checking rate limit status to ensure compliant usage. The web form at the root URL provides a straightforward way to submit events manually if you prefer a browser-based workflow.
How to install
Prerequisites: You need Node.js and npm installed on your machine. Ensure you have access to a Supabase project or a compatible Postgres-backed database for persistent storage.
Step 1: Install dependencies for MCP and storage integration.
npm install @vercel/mcp-adapter @supabase/supabase-js
Step 2: Configure environment variables for the storage backend and client access. Create a .env file or export these variables in your runtime environment.
NEXT_PUBLIC_SUPABASE_URL=your_supabase_url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_anon_key
SUPABASE_SERVICE_ROLE_KEY=your_service_role_key
Step 3: Set up the database. Run the necessary SQL scripts in your Supabase project to create the required tables and enable Row Level Security as described for secure multi-tenant access.
Step 4: Add the MCP client configuration. Include the HTTP MCP server endpoint in your client’s MCP configuration so models and tools can communicate with the server.
{
"mcpServers": {
"contact-authorities": {
"transport": {
"type": "http",
"url": "https://your-domain.com/api/mcp"
}
}
}
}
Additional sections
Configuration notes. The server enforces 5 requests per minute per IP address, applicable to both MCP protocol calls and web submissions. Rate limit data is stored persistently in Supabase and old entries are automatically cleaned up to keep storage efficient.
Security and access. Row Level Security is enabled on all relevant tables, IP addresses are logged for requests, inputs are validated and sanitized, and the database access uses a service role key to enforce secure operations.
Tools you can use with the MCP server include logging a contact event, retrieving recent events, and checking the current rate limit status.
Notes
Web interface. A user-friendly web form is available at the root URL for manual event submissions. Real-time logging captures timestamps and IP addresses for each event.
Troubleshooting. If you encounter issues with storage, verify the Supabase credentials and ensure the provided URL and keys are correctly configured. Check rate limit status if you see access limitations and confirm you are within the 5 requests per minute per IP bound.
Available tools
log_contact_authorities
Log a contact event with a specific title, target authority, and description to the MCP server.
get_contact_events
Retrieve recent contact events, optionally filtered by target or limited by count.
get_rate_limit_status
Check the current rate limit status for the requesting IP.