Nerve MCP Server: Search Company Data Across SaaS
Search and act on all your company data across every SaaS app with Nerve's MCP server, centralizing insights and automating workflows.
npx -y @nerve-hq/nerve-mcp-serverOverview
Nerve MCP Server is a lightweight service that unifies searchable company context from multiple SaaS apps and exposes it to models and automation workflows. It harvests content from connected sources (docs, tickets, messages, code, CRM) and provides a single API for search, retrieval, and action orchestration across those sources. That centralization makes it easier to build AI assistants, embeddings-powered search, and automated workflows that need consistent, up-to-date company context.
For developers, the MCP server acts as the bridge between heterogeneous SaaS data and downstream model-driven tools. You can connect new data sources via connectors, index and surface contextual snippets, and call standard endpoints to query or act on your data — enabling functionality such as contextual responses, incident triage, or automated ticket creation without wiring each SaaS API into your application.
Features
- Unified search across multiple SaaS sources (docs, messages, tickets, repos, CRM)
- Pluggable connectors for common apps (Google Drive, Slack, GitHub, Jira, Zendesk)
- Embeddings-friendly indexing for semantic search
- REST API for search, ingestion, and action orchestration
- Webhook and polling ingestion options
- Role-based API keys / simple auth for integrations
- Extensible: add custom connectors and transformation logic
- Local development with Docker and environment configuration
Installation / Configuration
Clone the repository and run locally or with Docker Compose.
Clone and run locally (Node-based example)
# install dependencies (npm or yarn)
# start in development
Run with Docker
# build and run
Docker Compose (example)
version: '3.8'
services:
mcp:
image: nerve-mcp-server:latest
ports:
environment:
- PORT=8080
- DATABASE_URL=postgres://user:pass@db:5432/nerve
- REDIS_URL=redis://redis:6379
- MCP_API_KEY=your_mcp_api_key
db:
image: postgres:15
redis:
image: redis:7
Common environment variables
| Name | Purpose |
|---|---|
| PORT | HTTP port (default 8080) |
| DATABASE_URL | Postgres connection string for indexing/metadata |
| REDIS_URL | Redis connection string for caching/queues |
| MCP_API_KEY | API key for authenticating client requests |
| EMBEDDING_PROVIDER_KEY | API key for embedding/model provider (optional) |
| LOG_LEVEL | log verbosity (info, debug, warn) |
After starting, point your client to http://localhost:8080 and authenticate using the MCP_API_KEY header or a configured auth mechanism.
Available Resources
The server exposes a small set of REST endpoints (paths are illustrative and may vary by release):
- POST /v1/search — semantic + keyword search across indexed content
- POST /v1/ingest — push new documents or snippets for indexing
- POST /v1/connectors/:name/auth — complete OAuth or credential setup for a connector
- POST /v1/actions/run — invoke an action (e.g., create ticket, post message) across a connector
- GET /v1/status — health and metrics
Example search request
Example ingest request
Use Cases
Contextual assistant for support agents
- Sync tickets, knowledgebase articles, and Slack threads into the MCP server. When an agent receives a ticket, query /v1/search with the ticket text to surface related KB articles and prior incidents. Use /v1/actions/run to create follow-up tasks or update ticket fields.
Incident triage
- Ingest runbooks, on-call schedules, and past postmortems. A responder can ask the model for remediation steps; the backend uses MCP search to surface the exact runbook snippets and can trigger automated actions such as paging via PagerDuty connector.
Engineering onboarding and code search
- Index internal docs, READMEs, and relevant PR discussions. New hires can query a single endpoint to find setup steps, code ownership, and sample configs across repos and docs.
Automated CRM workflows
- Aggregate CRM records, email threads, and contract docs. Build automations that detect renewal windows from the aggregated context and create sales tasks in the appropriate CRM via the action connectors.
Extending Connectors
Adding a new connector typically involves:
- Implementing an ingestion adapter to fetch or receive data from the service.
- Normalizing content into the server’s document model (id, source, text, metadata).
- Registering any action handlers required to perform outbound operations on that service (create/update resources).
The repository includes a connector template and examples for common SaaS apps to get you started.
Getting help and contribution
Report issues, request features, or contribute connectors on the project GitHub: https://github.com/nerve-hq/nerve-mcp-server. Follow the repository’s contribution guidelines to submit new connectors or improvements.