SolarWinds 로그 MCP 서버
SolarWinds Observability 로그에 액세스하고 시각화하기 위한 MCP(Model Context Protocol) 서버입니다.
메모 -
이 서버는 구조화된 데이터 검색을 지원하지 않아 현재 불완전합니다(REST API의 한계인가요?). API 엔드포인트 호출에 사용할 데이터 센터도 허용해야 하는지 확실하지 않습니다. 시간이 허락하는 대로 두 가지 모두 해결하겠습니다(실제 업무 문제에 필요했기 때문에 먼저 해결해야 합니다).
도구
검색 로그
선택적 필터링을 사용하여 SolarWinds Observability 로그 검색
필터, 시간 범위, 페이지 매김 옵션을 포함한 검색 매개변수를 사용합니다.
타임스탬프, 호스트 이름 및 메시지가 포함된 형식화된 로그 항목을 반환합니다.
그룹, 엔터티 등을 기준으로 고급 필터링을 지원합니다.
기본 검색 범위는 지난 24시간입니다.
시각화_로그
로그 이벤트에 대한 히스토그램 JSON 응답을 생성합니다.
Claude 및 캔버스 표현에 맞게 포맷됨
구성 가능한 시간 간격(분, 시간, 일)
UTC 또는 현지 시간대를 지원합니다
사용자 정의 가능한 쿼리 필터 및 시간 범위
기본 시각화 범위는 지난 24시간입니다.
자원
SolarWinds 로그 검색
URI 템플릿:
solarwinds://{query}/search지정된 쿼리와 일치하는 로그 항목을 반환합니다.
예:
solarwinds://error/search
Related MCP server: Weather Query MCP Server
설치
선택적으로 npm에서 설치:
지엑스피1
또는 소스에서 복제하고 빌드합니다.
git clone https://github.com/@jakenuts/mcp-solarwinds.git
cd mcp-solarwinds
npm install
npm run build또는 구성에서 npx를 사용하세요.
Cline VSCode 확장 프로그램용
%APPDATA%/Code - Insiders/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json 에 추가:
{
"mcpServers": {
"solarwinds": {
"command": "npx",
"args": ["-y", "mcp-solarwinds"],
"env": {
"SOLARWINDS_API_TOKEN": "your-api-token"
},
"autoApprove": ["search_logs", "visualize_logs"]
}
}
}클로드 데스크탑용
적절한 구성 파일에 추가:
Windows: %APPDATA%/Claude/claude_desktop_config.json MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"solarwinds": {
"command": "npx",
"args": ["-y", "mcp-solarwinds"],
"env": {
"SOLARWINDS_API_TOKEN": "your-api-token"
}
}
}
}특수 Windows 구성
Windows에서 ENOENT spawn npx 문제가 발생하면 전체 경로를 지정하는 다음 대체 구성을 사용하세요.
{
"mcpServers": {
"solarwinds": {
"command": "C:\\Users\\[username]\\AppData\\Roaming\\nvm\\[node-version]\\node.exe",
"args": [
"C:\\Users\\[username]\\AppData\\Roaming\\npm\\node_modules\\npm\\bin\\npx-cli.js",
"-y",
"mcp-solarwinds"
],
"env": {
"SOLARWINDS_API_TOKEN": "your-api-token"
}
}
}
}구성
SolarWinds Observability MCP 서버에는 SolarWinds Observability API를 인증하기 위한 API 토큰이 필요합니다.
구성 방법
API 토큰을 제공하는 방법은 여러 가지가 있습니다.
MCP 설정 구성(권장) : MCP 설정 파일에서 토큰을 구성합니다.
환경 변수 :
SOLARWINDS_API_TOKEN환경 변수를 설정합니다.로컬 .env 파일(테스트용) :
SOLARWINDS_API_TOKEN=your-token으로 프로젝트 루트에.env파일을 만듭니다.
로컬 테스트를 위해 다음을 수행할 수 있습니다.
.env.example``.env로 복사하고 토큰을 추가하세요.예제 스크립트를 실행합니다:
node examples/local-test.js
도구 사용 예
검색 로그
기본 검색:
{
"filter": "error"
}시간 범위 및 페이지 번호를 사용한 고급 검색:
{
"filter": "error",
"entityId": "web-server",
"startTime": "2025-03-01T00:00:00Z",
"endTime": "2025-03-05T23:59:59Z",
"pageSize": 100,
"direction": "backward"
}시각화_로그
기본 히스토그램(ASCII 차트):
{
"filter": "error",
"interval": "hour"
}고급 시각화(ASCII 차트):
{
"filter": "error",
"entityId": "web-server",
"startTime": "2025-03-01T00:00:00Z",
"endTime": "2025-03-05T23:59:59Z",
"interval": "day",
"use_utc": true
}클로드 시각화(JSON 형식):
{
"filter": "error",
"interval": "hour",
"format": "json"
}JSON 형식은 Claude가 차트로 시각화할 수 있는 데이터를 반환합니다.
{
"timeRanges": ["12:02", "12:03", "12:04", "12:05", "12:06", "12:07", "12:08", "12:09"],
"counts": [261, 47, 48, 48, 31, 262, 270, 33],
"total": 1000,
"queryParams": {
"query": "error",
"startTime": "2025-03-05T00:00:00.000Z",
"endTime": "2025-03-05T23:59:59.000Z"
}
}개발
종속성 설치:
npm install서버를 빌드하세요:
npm run build디버깅
MCP 서버는 stdio를 통해 통신하기 때문에 디버깅이 어려울 수 있습니다. MCP Inspector는 다음과 같은 유용한 디버깅 도구를 제공합니다.
npm run debug:inspector이렇게 하면 브라우저에서 검사기에 액세스할 수 있는 URL이 제공되며, 이를 통해 다음을 수행할 수 있습니다.
모든 MCP 메시지 보기
요청/응답 페이로드 검사
테스트 도구를 대화형으로
서버 상태 모니터링
MCP 프레임워크 없이 로컬 테스트를 수행하는 경우:
# Create a .env file with your token
cp .env.example .env
# Edit .env to add your token
# Run the example script
node examples/local-test.js기술적 세부 사항
TypeScript 및 MCP SDK로 구축됨
API 통신을 위해 Axios를 사용합니다.
시간 범위에 대한 ISO 8601 날짜 형식을 지원합니다.
로그 시각화를 위한 ASCII 히스토그램을 생성합니다.
기본 검색 범위: 지난 24시간
기본 페이지 크기: 50개 로그
다양한 인증 방식 지원