testlink-mcp
testlink-mcp
TestLink 1.9.20용 AI 친화적이고 안전성을 최우선으로 하는 Model Context Protocol 서버입니다. stdio를 통해 정규화된 탐색 및 분석 도구, 경계가 있는 커서 페이지네이션, 구조화된 출력, 적용 전 미리보기 쓰기를 제공합니다.
이 저장소는 TestLink의 공개 XML-RPC 인터페이스와 공개 MCP SDK를 기반으로 한 깔끔한 구현입니다. 비공개 TestLink 패키지나 비공개 소스 트리에 대한 의존성이 없습니다.
주요 특징
자격 증명 없이 시작되므로 MCP 클라이언트가 모든 도구, 리소스 및 프롬프트를 발견할 수 있습니다.
평가와 온보딩을 위한 명시적 결정론적 데모 모드.
structuredContent,outputSchema, 도구 주석, 커서 페이지네이션 및 안정적인 오류 코드.첨부 파일 메타데이터만 제공하며 첨부 파일 콘텐츠와 base64 페이로드는 제거됩니다.
쓰기는 기본적으로 비활성화되어 있습니다. 삭제 도구가 없습니다.
모든 적용에는
confirm: true, 만료되지 않은 10분 미리보기, 변경되지 않은 서버 스냅샷이 필요합니다.부작용 호출은 자동으로 재시도되지 않으며, 적용 시도는 편집된 운영 원장에 기록됩니다.
런타임 가드는 지원되지 않는/EOL인 비정상 Node 릴리스와 선언된 최소 기준 미만의 보안 패치 수준을 차단합니다.
Related MCP server: TestRail MCP Server
요구 사항
Node.js
^22.23.2 || ^24.18.1 || ^26.5.1XML-RPC API가 활성화된 TestLink 1.9.20
개발 및 컨테이너 기준은 Node 24.19.0 LTS입니다. CI는 Node 22.23.2 및 26.7.0에서도 실행됩니다.
빠른 시작
nvm use
npm ci
npm run build
TESTLINK_DEMO_MODE=true node dist/cli.js게시 후 향후 npm 호출:
npx -y testlink-mcp@1.0.0MCP 클라이언트 구성:
{
"mcpServers": {
"testlink": {
"command": "npx",
"args": ["-y", "testlink-mcp@1.0.0"],
"env": {
"TESTLINK_URL": "https://testlink.example.com/testlink",
"TESTLINK_DEV_KEY": "your-testlink-dev-key"
}
}
}
}추적되는 파일에 실제 자격 증명을 넣지 마십시오. .env.example을 무시되는 .env로 복사하거나 MCP 클라이언트/시크릿 매니저에서 환경 변수를 주입하십시오.
도구
워크플로 | 도구 | 용도 |
시작 |
| 구성, 호환성, 데모 모드 및 쓰기 정책 확인 |
탐색 |
| 프로젝트 나열 |
탐색 |
| 프로젝트의 계획 나열 |
탐색 |
| 계획의 빌드 나열 |
탐색 |
| 한 스위트 수준 탐색 |
분석 |
| 경계가 있는 프로젝트/스위트 범위에서 케이스 검색 |
분석 |
| 정규화된 케이스 하나 검색 |
분석 |
| 안전한 첨부 파일 메타데이터 검색 |
분석 |
| 요구사항 및 계획 커버리지 검사 |
분석 |
| 최근 실행 증거 검사 |
검증 |
| 불완전하거나 모호한 케이스 콘텐츠 찾기 |
미리보기 |
| 생성/업데이트 및 계획 멤버십 미리보기 |
적용 |
| 변경되지 않은 확인된 동기화 미리보기 적용 |
미리보기 |
| 통과/실패/차단 보고 미리보기 |
적용 |
| 변경되지 않은 확인된 결과 미리보기 적용 |
모든 도구는 다음을 반환합니다:
{
"ok": true,
"data": {},
"meta": {
"source": "testlink",
"requestId": "..."
}
}실패는 ok: false와 함께 { code, message, retryable, details? }를 사용합니다. 소비자는 메시지 텍스트가 아닌 error.code를 기준으로 분기해야 합니다.
안전한 쓰기 워크플로
기존 케이스를 검색하고 현재 버전을 검색합니다.
원하는 테스트 케이스를 검증합니다.
관련 미리보기 도구를 호출합니다.
proposedChanges를 사용자에게 표시하고 명시적 확인을 받습니다.미리보기 ID와
confirm: true를 사용하여 10분 이내에 적용을 호출합니다.적용이
CONFLICT또는PREVIEW_EXPIRED를 반환하면 새 미리보기를 생성하고 검토합니다.
쓰기를 수행해야 하는 서버 프로세스에서만 쓰기를 활성화합니다:
TESTLINK_WRITE_ENABLED=true npx -y testlink-mcp@1.0.0기본 원장 경로는 ~/.local/state/testlink-mcp/operations.jsonl입니다. TESTLINK_LEDGER_PATH로 재정의할 수 있습니다. 원장에는 개발자 키가 아닌 해시와 편집된 결과가 포함됩니다.
구성
변수 | 기본값 | 의미 |
| 설정 안 됨 | TestLink 기본 URL 또는 전체 XML-RPC 엔드포인트 |
| 설정 안 됨 | 개인 TestLink API 키 |
|
| 결정론적 로컬 데모 데이터 사용 |
|
| 확인된 적용 도구 허용 |
|
| 요청 시간 초과, 100–300000 ms |
|
| 최대 XML 응답 크기 |
| 사용자 상태 디렉터리 | 편집된 JSONL 작업 원장 |
| 설정 안 됨 | 선택적 추가 CA 번들; TLS 검증은 계속 활성화됩니다 |
데모 모드는 명시적이며 원격 구성보다 우선합니다:
TESTLINK_DEMO_MODE=true TESTLINK_WRITE_ENABLED=true node dist/cli.js개발
npm ci
npm run check
npm test
npm run eval
npm run build
npm audit --omit=dev --audit-level=high
npm pack --dry-run오프라인 도구 선택 평가는 일반적인 사용자 의도가 검색, 검증, 미리보기 및 적용 도구를 명확하게 선택하는지 확인합니다. 결정론적이며 외부 모델로 데이터를 보내지 않습니다.
Docker
이미지는 비루트 사용자로 실행되며 Node 24.19.0을 사용합니다. 푸시 없이 빌드:
docker buildx build --platform linux/amd64,linux/arm64 --tag testlink-mcp:local --output type=oci,dest=testlink-mcp.oci.tar .승인 및 게시 후 향후 이미지 이름: ghcr.io/easonlin/testlink-mcp:1.0.0.
릴리스 정책
버전 1.0.0은 릴리스 준비가 완료되었지만 게시는 명시적 조치로 남아 있습니다. 보호된 릴리스 워크플로는 서명된 버전 태그를 요구하고, 전체 테스트/평가/감사/SBOM/패키지 게이트를 다시 실행하며, 출처가 있는 npm 게시, SBOM과 출처가 있는 다중 아키텍처 GHCR 이미지 게시, GitHub 릴리스 생성, 마지막으로 검증된 MCP 레지스트리 항목 게시를 수행합니다.
별도의 보호된 라이브 스모크 워크플로는 읽기 전용 호출을 사용하여 실제 TestLink 1.9.20 인스턴스에 대해 설치된 패키지를 검증합니다. 해당 URL과 개발자 키는 환경 시크릿으로 저장되어야 하며 로그에 기록되지 않습니다.
패키지 매니페스트와 server.json은 MCP 이름 io.github.easonlin/testlink-mcp를 공유합니다. 레지스트리 검증은 게시 없이 실행할 수 있습니다:
mcp-publisher validate server.json공개 참조
라이선스
MIT
This server cannot be installed
Maintenance
Related MCP Servers
- AlicenseBqualityDmaintenanceA Model Context Protocol server that allows interaction with TestRail's core entities (projects, cases, runs, results, datasets) through a standardized protocol compatible with MCP clients like Claude Desktop.2320MIT
- FlicenseNot gradedqualityNot gradedmaintenanceA Model Context Protocol server that provides integration with TestRail, allowing AI assistants to interact with TestRail projects, test cases, test runs, and results.1,3341
- AlicenseBqualityCmaintenanceA security-focused Model Context Protocol server that enables controlled local tool execution through strict network firewalls, filesystem protections, and rate-limiting policies. It features a plugin-based architecture for progressive tool discovery and includes reference implementations for web searching and bug tracking.15MIT
- AlicenseBqualityAmaintenanceAI-native Model Context Protocol (MCP) server for TestRail. Lets Claude, Cursor, Windsurf, and other AI assistants browse projects, create and update test cases, kick off test runs, and record results through natural-language conversation — with strongly-typed tool schemas and per-project custom field validation that helps LLMs generate valid TestRail requests on the first try.2681730Apache 2.0
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
A Model Context Protocol server for Wix AI tools
MCP server for AI access to SmartBear tools, including BugSnag, Reflect, Swagger, PactFlow, QTM4J.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Eason0in/testlink-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server