mcp-testrail-sync
TestRail MCP Server: Built an MCP server for TestRail because no official one existed - a AQA coding weekend PoC.
Install / Use
claude mcp add mykhailiuk-chanel -- npx -y github:mykhailiuk-chanel/mcp-testrail-syncIf the server publishes to npm under a different name, use that package instead โ check the repo README.
MCP Server
Model Context Protocol server
Quality Score
Category
Development & EngineeringSupported Platforms
Our assessment of mcp-testrail-sync
mcp-testrail-sync scores 76/100 on our quality scale, 3695th of 4,611 Development & Engineering skills we index.
Its MCP Server is 7.0 KB long, well organised into 9 sections with 3 code examples: a thorough specification that gives an agent plenty to work with.
It has 3 GitHub stars, so there is little community track record yet; judge it on its content.
Maintenance, license and trust
- The repository was last updated 9 days ago, so mcp-testrail-sync is actively maintained.
- It is released under the MIT license, a permissive license that allows use, modification and commercial use with attribution.
- Its trust signals score 92/100, with 1 caution from licensing, adoption, age or documentation. These come from repository metadata, not a code audit โ read the skill file before letting an agent act on it.
mcp-testrail-sync compared with similar skills
All 4 of these similar skills score higher than mcp-testrail-sync; compare them before choosing.
| Skill | Score | Stars | Updated | Format |
|---|---|---|---|---|
| mcp-testrail-sync (this skill)by mykhailiuk-chanel | 76 | 3 | 9d ago | MCP Server |
| Agent-Reachby Panniantong | 100 | 104.8k | 2d ago | CLAUDE.md |
| taste-skillby Leonxlnx | 100 | 103.6k | today | CLAUDE.md |
| headroomby headroomlabs-ai | 100 | 78.0k | today | CLAUDE.md |
| ai-job-searchby ai-job-search-dev | 100 | 66.7k | today | CLAUDE.md |
Frequently asked questions
- How do I install mcp-testrail-sync?
- Run
claude mcp add mykhailiuk-chanel -- npx -y github:mykhailiuk-chanel/mcp-testrail-sync. The install tabs above show the steps for each supported agent. - Which AI agents does mcp-testrail-sync work with?
- It is written for Claude Code and Claude Desktop, as a MCP Server file. Other agents that read the same format can often use it too.
- Is mcp-testrail-sync safe to use?
- It is MIT-licensed and scores 92/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
- Is mcp-testrail-sync still maintained?
- The repository was last updated 9 days ago, so mcp-testrail-sync is actively maintained.
Skill content
View source on GitHubA TestRail MCP server that lets Claude Code, Claude Desktop, OpenCode, Codex, GitHub Copilot and other AI clients read and create TestRail test cases from a plain prompt.
npm: https://www.npmjs.com/package/mcp-testrail-sync
Run it (test build):
npx -y mcp-testrail-sync@beta --help
Your MCP client runs this same command for you, see Quick start.
Works with: Claude Code ยท Claude Desktop ยท OpenCode ยท Codex ยท VS Code Copilot ยท any MCP client.
"Use mcp-testrail-sync to create test cases in section "User registration" from
test_registration.md"
Ask your AI things like
- "Create test cases in TestRail from
test_registration.md" - "Sync these QA test cases with our TestRail project"
- "List the sections in our TestRail suite"
- "Find TestRail test cases about login"
- "Import these manual test cases into the section User registration"
Safe by design (v1 PoC):
- One project and one suite only. Both are set in the config. Every read is filtered to that suite, and every write is checked against it.
- No update or delete. The code simply has no update/delete API calls. The only writes are create test case and create section.
Quick start
- Nothing to install: the client starts the server with
npx -y mcp-testrail-sync. While this is a test build, usemcp-testrail-sync@beta. - Get your TestRail API key: TestRail โ My Settings โ API Keys โ Add key. The API must be enabled: Admin โ Site Settings โ API.
- Add the server to your MCP client. Example for OpenCode (
opencode.json):
Claude Code, in one command:{ "$schema": "https://opencode.ai/config.json", "mcp": { "mcp-testrail-sync": { "type": "local", "command": ["npx", "-y", "mcp-testrail-sync@beta", "--project", "demo-name"], "enabled": true, "environment": { "TESTRAIL_URL": "https://your-instance.testrail.io", "TESTRAIL_USERNAME": "your-email@example.com", "TESTRAIL_API_KEY": "your-api-key", "TESTRAIL_SUITE": "test1" } } } }
Configs for Claude Desktop, Codex and VS Code Copilot are in docs/CLIENTS.md.claude mcp add mcp-testrail-sync \ -e TESTRAIL_URL=https://your-instance.testrail.io \ -e TESTRAIL_USERNAME=your-email@example.com \ -e TESTRAIL_API_KEY=your-api-key \ -e TESTRAIL_SUITE=test1 \ -- npx -y mcp-testrail-sync@beta --project demo-name - Restart the client and ask: "Run system_ping from mcp-testrail-sync". You should see your project and suite.
See it in action (OpenCode)
1. Add the server to opencode.json (inside .opencode/ or the project root):
2. Ask in plain language. A read-only prompt to try first:
Use the testrail MCP server.
1. Run system_ping and show me the locked project
2. Show the section tree of the suite.
3. List 3 test cases from the suite - subsection `Suite Test`. For each one show the id, title, section path and priority.
<p align="center"> <img src="./docs/screenshots/03-user-prompt-example.png" alt="Prompt and MCP tool calls in OpenCode" width="600"> </p>Replace
Suite Testwith a section name from your own suite.
3. Get the answer from TestRail. The client calls system_ping, suites_list and tests_list for you and shows the result:
Configuration
Everything lives in the MCP client config: no .env files.
| Setting | Where | Example |
|---|---|---|
| --project | command arg | demo-name or 12 (name or id) |
| TESTRAIL_URL | env | https://your-instance.testrail.io |
| TESTRAIL_USERNAME | env | your-email@example.com |
| TESTRAIL_API_KEY | env | API key (not your password) |
| TESTRAIL_SUITE | env (or --suite arg) | test1 or 34 (name or id) |
| TESTRAIL_DEBUG | env, optional | true logs each API call to stderr |
If something is missing or wrong, the server stops at startup and lists every problem, e.g. TESTRAIL_API_KEY is required (TestRail > My Settings > API Keys), or Suite "test2" not found in project "demo-name". Available: "test1" (id 34), ....
Tools (v1)
| Tool | What it does |
|---|---|
| system_ping | Checks the connection and shows the locked project/suite, steps format, required fields, and available tools |
| tests_list | Lists cases in the suite, filtered by section, title text, priority, type or label; paged |
| tests_get | Gets one case with full steps (123 or C123) |
| tests_search | Searches cases by title (shortcut for tests_list + search_text) |
| tests_create | Creates 1โ50 cases in one call, in sections of the suite |
| sections_list | Shows the suite's sections/subsections as a tree, with Parent > Child paths |
| sections_create | Creates a section, or a subsection when you pass parent_id |
| suites_list | Shows the configured suite as a tree, optionally with case counts |
| suites_get | Gets details of the configured suite |
| suites_search | Finds sections in the suite by name and returns their paths |
| labels_list | Lists project labels (TestRail 10.5+) |
| labels_get | Gets a label by id or title |
How steps are sent: at startup the server checks the project's templates.
- If the project has the Test Case (Steps) template, steps go in as separated steps (one row per step, each with its expected result).
- Otherwise they go in as numbered text.
Fields the project marks as required are shown by system_ping. Pass them through custom_fields in tests_create.
Example prompts
See examples/prompts.md and the sample examples/test_registration.md.
Development
npm install
npm run build # compile TypeScript to dist/
npm test # unit + tool tests against an in-memory fake TestRail
npm run inspect # open MCP Inspector (set the TESTRAIL_* env vars first, then add --project in the UI)
New to MCP? Read docs/HOW_MCP_WORKS.md. It walks through this codebase and shows how to add a tool.
Roadmap (v2+)
Update/delete with confirmation, test runs/plans/results, creating suites, a read-only mode, a duplicate-title check before create, attachments, shared steps, HTTP transport.
License
MIT
Related Skills
Agent-Reach
104.8kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu โ one CLI, zero API fees.
taste-skill
103.6kAgent skills that give coding agents taste: art direction, reference images and a browser check instead of generic AI pages
headroom
78.0kCompress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.
ai-job-search
66.7kThe job search that runs on your machine. AI job application framework built on Claude Code: evaluate postings, tailor CVs, write cover letters, prep interviews. Fork it and own it.
Languages
Trust signals
From repository metadata: license, adoption, age and documentation. Not a code audit โ see the Safety scan above for what the skill file itself contains.
