evsoch-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@evsoch-mcpCheck the health of the EVSocho ingest API"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
evsoch-mcp
Secured MCP bridge for EVSocho vehicle ingest.
This process is a thin client. It never talks to Supabase directly and must never be given SUPABASE_SERVICE_ROLE_KEY or other DB credentials. All privileged work (token verification, rate limits, Zod validation, upsert_vehicle_graph) stays on the EVSocho Next.js server.
Cursor / agent
│ stdio (MCP)
▼
evsoch-mcp ── HTTPS + Bearer daily token ──► EVSocho /api/ingest/*
│
▼
server-side auth + DBAuth model
Who | Credential | Can |
MCP / partners | MCP Daily API Key from admin dashboard ( | Call |
EVSocho server |
| Validate + Draft upsert/delete in DB |
Admin humans | Supabase Auth + roles | Copy today’s key, review Drafts, Make Live in UI |
Never put Supabase service-role keys in MCP env or share them with agents.
Each morning (IST), open Admin → dashboard (or API Keys), copy the current MCP Daily API Key into Cursor MCP env as EVSOCH_INGEST_TOKEN.
Related MCP server: Discord MCP Server
Tools
Tool | Purpose |
| Reachability + API key acceptance |
| Resolve |
| Create brand if missing (idempotent by name; research online first) |
| Server schema check, no write |
| Create/update Draft only (server DB write) |
| Soft-delete Draft only (server DB write) |
| Local contract notes |
publish_status is always forced to Draft. Live/Verified vehicles cannot be updated or deleted via ingest — use the admin UI.
Failed upserts/deletes return structured fields: reason, code, details, hint, resolution, and existing (when a slug/id conflict exists). MCP surfaces these to the agent — do not treat a bare “Could not save” as complete.
Slug conflicts:
Live/Verified owns slug → keep it; create Draft under a new slug (e.g.
slug-draft).Draft owns slug → update with
vehicle_id, or soft-delete only if that Draft was a mistake.
Setup
export PATH="/usr/local/bin:/opt/homebrew/bin:$PATH"
cd /path/to/evsoch-mcp
npm install
cp .env.example .env # optional; prefer Cursor MCP envRequired env:
EVSOCH_API_BASE_URL— HTTPS app origin (http only for localhost)EVSOCH_INGEST_TOKEN— daily token from admin panel (min length enforced)
Cursor MCP config
Add to your Cursor MCP settings (example):
{
"mcpServers": {
"evsoch": {
"command": "npx",
"args": ["tsx", "/absolute/path/to/evsoch-mcp/src/index.ts"],
"env": {
"EVSOCH_API_BASE_URL": "https://www.evsoch.com",
"EVSOCH_INGEST_TOKEN": "paste-daily-token-here"
}
}
}
}Do not commit tokens. Prefer the Cursor env UI over checking .env into git.
Local run
export EVSOCH_API_BASE_URL=http://localhost:3000
export EVSOCH_INGEST_TOKEN=your-token
npm startUse stderr for logs; stdout is reserved for MCP JSON-RPC.
Security model
See SECURITY.md.
License
Private — EVSOCH.
This server cannot be deployed
Maintenance
Related MCP Connectors
Jinn gateway MCP — brand DNA, brand kits, design systems, and agency tools behind one bearer token.
A paid remote MCP for AI SDK eval dashboard, built to return verdicts, receipts, usage logs, and aud
A paid remote MCP for CLI tool MCP, built to return verdicts, receipts, usage logs, and audit-ready
A paid remote MCP for AI SDK benchmark dashboard, built to return verdicts, receipts, usage logs, an
Related MCP Servers
- -licenseNot gradedqualityNot gradedmaintenanceA secure bridge that allows Large Language Models (LLMs) to interact with corporate APIs and services in a controlled and contextualized manner.-
- FlicenseNot gradedqualityDmaintenanceA secure server that enables interaction with Discord channels through JWT-authenticated API calls, allowing users to send messages, fetch channel data, search content, and perform moderation actions.-
- FlicenseNot gradedqualityNot gradedmaintenanceA secure two-layer MCP integration system that connects local thin clients to a Google Cloud backend for authenticated access to internal corporate tools. It enables users to manage Odoo ERP records, Shopify products, and internal knowledge bases through natural language commands.-
- AlicenseNot gradedqualityBmaintenanceSecure MCP protocol proxy with OAuth2 + Dynamic Client Registration (DCR), JWT auth, RBAC, rate limiting, multi-server aggregation, and a monitoring/admin dashboard.11MIT