MCP Sumo Logic Server
by samwang0723
README.md
[](https://mseep.ai/app/samwang0723-mcp-sumologic)
# MCP Sumo Logic
A Model Context Protocol (MCP) server that integrates with Sumo Logic's API to perform log searches.
## Features
- Search Sumo Logic logs using custom queries
- Configurable time ranges for searches
- Error handling and detailed logging
- Docker support for easy deployment
## Environment Variables
```env
ENDPOINT=https://{host}/api/v1 # Sumo Logic API endpoint
SUMO_API_ID=your_api_id # Sumo Logic API ID
SUMO_API_KEY=your_api_key # Sumo Logic API Key
```
## Setup
1. Clone the repository
2. Install dependencies:
```bash
npm install
```
3. Create a `.env` file with the required environment variables
4. Build the project:
```bash
npm run build
```
5. Start the server:
```bash
npm start
```
## Docker Setup
1. Build the Docker image:
```bash
docker build -t mcp/sumologic .
```
2. Run the container (choose one method):
a. Using environment variables directly:
```bash
docker run -e ENDPOINT=your_endpoint -e SUMO_API_ID=your_api_id -e SUMO_API_KEY=your_api_key mcp/sumologic
```
b. Using a .env file:
```bash
docker run --env-file .env mcp/sumologic
```
Note: Make sure your .env file contains the required environment variables:
```env
ENDPOINT=your_endpoint
SUMO_API_ID=your_api_id
SUMO_API_KEY=your_api_key
```
## Usage
The server exposes a `search-sumologic` tool that accepts the following parameters:
- `query` (required): The Sumo Logic search query
- `from` (optional): Start time in ISO 8601 format
- `to` (optional): End time in ISO 8601 format
Example query:
```typescript
const query = '_index={index} | json auto | fields log_identifier';
const results = await search(sumoClient, query, {
from: '2024-02-23T00:00:00Z',
to: '2024-02-24T00:00:00Z',
});
```
## Error Handling
The server includes comprehensive error handling and logging:
- API errors are caught and logged with details
- Search job status is monitored and logged
- Network and authentication issues are properly handled
## Development
To run in development mode:
```bash
npm run dev
```
For testing:
```bash
npm test
```
## Makefile
Common tasks are available via `make`:
| Command | Description |
|----------------------|----------------------------------------------|
| `make install` | Install dependencies |
| `make build` | Build the project |
| `make start` | Start the server |
| `make dev` | Start in development mode (auto-reload) |
| `make clean` | Remove `dist/` and `node_modules/` |
| `make lint` | Run ESLint |
| `make test` | Run tests |
| `make docker-build` | Build Docker image |
| `make docker-run` | Run container with `.env` file on port 3006 |
| `make docker-compose`| Start services via Docker Compose |
| `make docker-down` | Stop Docker Compose services |
This server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues