Currents MCP Server
OFFICIAL SERVERReads and manages CI test results recorded in the Currents dashboard from a coding agent
Reads and edits test cases, runs, results and milestones in a TestPlanIt test management instance
Official · TestPlanIt TypeScript Local · stdio TestingProductivity
47 popularity score ★ 61 ↓ 267/wk
Opens the app, which asks before it adds the server. Then replace each <NAME> in its settings with your value.
It needs TESTPLANIT_API_TOKEN. Replace each <NAME> with your value.
claude mcp add testplanit -e TESTPLANIT_API_TOKEN=<TESTPLANIT_API_TOKEN> -- npx -y @testplanit/mcp-server{
"mcpServers": {
"testplanit": {
"command": "npx",
"args": [
"-y",
"@testplanit/mcp-server"
],
"env": {
"TESTPLANIT_API_TOKEN": "<TESTPLANIT_API_TOKEN>"
}
}
}
}{
"mcpServers": {
"testplanit": {
"command": "npx",
"args": [
"-y",
"@testplanit/mcp-server"
],
"env": {
"TESTPLANIT_API_TOKEN": "<TESTPLANIT_API_TOKEN>"
}
}
}
}{
"servers": {
"testplanit": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@testplanit/mcp-server"
],
"env": {
"TESTPLANIT_API_TOKEN": "<TESTPLANIT_API_TOKEN>"
}
}
}
}[mcp_servers.testplanit]
command = "npx"
args = ["-y", "@testplanit/mcp-server"]
[mcp_servers.testplanit.env]
TESTPLANIT_API_TOKEN = "<TESTPLANIT_API_TOKEN>"gemini mcp add --scope user -e TESTPLANIT_API_TOKEN=<TESTPLANIT_API_TOKEN> testplanit npx -- -y @testplanit/mcp-serverTESTPLANIT_API_TOKEN |
Required: TestPlanIt API token (starts with tpi_); validated at start. |
|---|---|
TESTPLANIT_API_URL |
Optional: Base URL of your TestPlanIt instance; defaults to https://app.testplanit.com, set it for a self-hosted instance. |
The TestPlanIt MCP Server is the TestPlanIt project's own bridge between an MCP client and the TestPlanIt test management app. It runs on your machine over stdio and calls your TestPlanIt instance's REST API with a personal API token, so the assistant sees the same projects that token can see.
Its 54 tools cover most of the day-to-day work in the app: browsing and filtering test cases, counting coverage by folder, tag or state, creating cases singly or in bulk against a template, managing the folder tree, building and completing test runs, recording results (including per-row results for data-driven cases), exploratory sessions, linked issues such as Jira keys, milestones and the review inbox. It can also ask TestPlanIt to dispatch a run's automated cases to a CI target and generate QuickScript automation scripts from cases.
The token decides how much it may do. A token created with the read-only scope (mode:read) is blocked from every write by the TestPlanIt API itself, and a token marked as an agent token (client:mcp) makes its changes show up as MCP in the audit log.
One detail the README leaves out: although its table marks TESTPLANIT_API_URL as required, the 1.1.0 code falls back to https://app.testplanit.com when it is not set (src/env.ts), so users of the hosted TestPlanIt service only need the token; self-hosted users must set the URL.
| Runtime | Node.js |
|---|
Node.js with npx. A TestPlanIt account, either on the hosted app.testplanit.com service or on a self-hosted instance, and an API token from Profile → API Tokens (it starts with tpi_). Some tools need features on the instance: testplanit_cases_generate_script needs QuickScript enabled for the project, testplanit_reviews_decide needs an instance recent enough to accept API-token review decisions, and per-row iterations for data-driven runs need a matching server-side fix.
Speaks stdio only; there is no HTTP mode or hosted endpoint. The token is checked at start and the process exits with code 1 if it is missing, does not start with tpi_, or is rejected. testplanit_cases_update sets plain steps only: shared step groups are not supported and are removed when steps are replaced. A completed run cannot be reopened. Against an older TestPlanIt instance, testplanit_reviews_decide reports that it is unsupported, and run creation still succeeds but without iterations for data-driven cases. The README's table calls TESTPLANIT_API_URL required, but the code defaults it to the hosted service.
Suits QA teams already running TestPlanIt who want an assistant to triage coverage, draft or bulk-create test cases, assemble runs and record results without clicking through the web app. Because writes include deletes, removing run cases with their results, and approving reviews that apply workflow transitions, a read-only (mode:read) token is the safer choice for agents that only need to look. It is of no use without a TestPlanIt instance; teams on another test management tool need that tool's own server.
testplanit_whoamitestplanit_projects_listtestplanit_cases_listtestplanit_cases_counttestplanit_cases_gettestplanit_cases_createtestplanit_cases_create_manytestplanit_cases_updatetestplanit_cases_deletetestplanit_cases_generate_scripttestplanit_templates_listtestplanit_folders_listtestplanit_folders_gettestplanit_folders_createtestplanit_folders_updatetestplanit_folders_deletetestplanit_tags_listtestplanit_test_runs_listtestplanit_test_runs_gettestplanit_test_runs_cases_listtestplanit_test_run_case_iterations_listtestplanit_runs_createtestplanit_runs_updatetestplanit_runs_cases_addtestplanit_runs_cases_updatetestplanit_runs_cases_removetestplanit_test_run_results_listtestplanit_test_run_results_gettestplanit_test_run_results_createtestplanit_automation_targets_listtestplanit_runs_executetestplanit_runs_automation_plantestplanit_sessions_listtestplanit_sessions_gettestplanit_sessions_createtestplanit_sessions_updatetestplanit_sessions_findings_listtestplanit_session_results_listtestplanit_session_results_gettestplanit_issues_listtestplanit_issues_gettestplanit_issues_find_by_keytestplanit_issues_list_linkstestplanit_issues_linktestplanit_issues_unlinktestplanit_milestones_listtestplanit_milestones_gettestplanit_milestones_createtestplanit_milestones_updatetestplanit_milestone_types_listtestplanit_reviews_listtestplanit_reviews_decidetestplanit_code_repositories_listtestplanit_repository_case_links_list