Skip to content

Commit bae5faa

Browse files
pressayuliyaYuliya_Prihodko
authored andcommitted
EPMRPP-113053 || Update MCP Documentation (#1073)
Co-authored-by: Yuliya_Prihodko <Yuliya_Prihodko@epam.com>
1 parent 4f6c1f4 commit bae5faa

File tree

11 files changed

+253
-43
lines changed

11 files changed

+253
-43
lines changed

docs/external-integrations/MCPServer.mdx

Lines changed: 253 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -14,84 +14,225 @@ MCP (Model Context Protocol) is a lightweight middleware protocol (and server) t
1414

1515
ReportPortal MCP Server allows to receive summaries of launches and perform various operations without manually opening the UI. The actions that can be performed through the MCP Server are called Tools.
1616

17-
Available tools:
18-
19-
1. Run Unique Error Analysis
20-
2. Run Quality Gate
21-
3. Run Auto-Analysis
22-
4. Get Test Items by Filter
23-
5. Get Launches
24-
6. Launch Force Finish
25-
7. Launch Delete
26-
8. Get Test Item Logs by Filter
27-
9. Get Test Item by ID
28-
10. Get Test Item Attachments
29-
11. Get Last Launch by Name
30-
12. Get Project Defect Types
31-
13. Update defect types by item IDs
17+
## Prerequisites
18+
19+
### Server Mode (MCP_MODE)
20+
21+
First, you need to decide on a strategy for using MCP Server: whether to use it locally or as a remote endpoint. In the second case, first deploy the MCP Server and then configure a connection to it.
22+
23+
`MCP_MODE` is a system environment variable that controls the transport mode of the MCP server:
24+
25+
| Value | Description |
26+
|-------|-------------|
27+
| `stdio` | **(default)** Standard input/output – used for local AI tool integrations (Claude Desktop, Cursor, VS Code Copilot, etc.) |
28+
| `http` | HTTP/SSE streaming – exposes an HTTP endpoint for remote or multi-client access |
29+
30+
This variable is only needed when you want to run the server in HTTP mode. For local AI tool integrations the default `stdio` mode is used and no extra configuration is required.
31+
32+
:::important
33+
`http` mode is intended for server deployments. The MCP server must be **deployed and running** with `MCP_MODE=http` before any AI tool can connect to it remotely.
34+
:::
35+
36+
Before setting up the MCP server, you need the following information from your ReportPortal instance:
37+
38+
### ReportPortal Host URL (RP_HOST)
39+
40+
The URL of your ReportPortal instance:
41+
- Example: https://reportportal.example.com
42+
- For local: http://localhost:8080
43+
44+
### Project Name (RP_PROJECT)
45+
46+
To find your project name:
47+
1. Log into ReportPortal
48+
2. Check the URL: https://your-rp-instance.com/ui/#PROJECT_NAME/...
49+
3. Or find it in the top-left dropdown menu
50+
51+
### API Token (RP_API_TOKEN)
52+
53+
You can get an API token from your ReportPortal Profile or generate a new one.
54+
55+
:::note
56+
Never commit tokens to version control or share them publicly.
57+
:::
58+
59+
## Available Tools
60+
61+
The MCP Server provides the following tools for interacting with ReportPortal:
62+
63+
- Get Launches by filter
64+
- Get Last Launch by Name
65+
- Get Launch by ID
66+
- Run Quality Gate
67+
- Run Auto Analysis
68+
- Run Unique Error Analysis
69+
- Force Finish Launch
70+
- Delete Launch
71+
- Get Suites by filter
72+
- Get Test Items by filter
73+
- Get Logs by filter
74+
- Get Attachment by ID
75+
- Get Test Item by ID
76+
- Get Project Defect Types
77+
- Update defect types by item IDs
78+
79+
## Installation
80+
81+
There are two ways to connect to the ReportPortal MCP Server:
82+
1. **Locally** - via *Docker* (recommended) or using *pre-built binaries*.
83+
2. **Connecting to a remote MCP server** (when the server is already deployed)
84+
85+
### Local Installation
86+
87+
The configurations below use the default `stdio` mode (`MCP_MODE=stdio`), which is the correct choice for all local AI tool integrations.
88+
89+
#### Via Docker (recommended)
90+
91+
Configuration:
92+
```json
93+
{
94+
"reportportal": {
95+
"command": "docker",
96+
"args": [
97+
"run",
98+
"-i",
99+
"--rm",
100+
"-e",
101+
"RP_API_TOKEN",
102+
"-e",
103+
"RP_HOST",
104+
"-e",
105+
"RP_PROJECT",
106+
"reportportal/mcp-server"
107+
],
108+
"env": {
109+
"RP_API_TOKEN": "your-report-portal-api-token",
110+
"RP_HOST": "https://your-reportportal-instance.com",
111+
"RP_PROJECT": "YourProjectInReportPortal"
112+
}
113+
}
114+
}
115+
```
116+
117+
#### Using Pre-built Binaries
118+
119+
Configuration:
120+
```json
121+
{
122+
"reportportal": {
123+
"command": "/path/to/reportportal-mcp-server-binary",
124+
"args": ["stdio"],
125+
"env": {
126+
"RP_API_TOKEN": "your-report-portal-api-token",
127+
"RP_HOST": "https://your-reportportal-instance.com",
128+
"RP_PROJECT": "YourProjectInReportPortal"
129+
}
130+
}
131+
}
132+
```
133+
134+
### Connecting to a Remote MCP Server
135+
136+
If the ReportPortal MCP Server is already deployed and accessible via HTTP, you can connect to it remotely:
137+
138+
:::note
139+
The remote server must be **deployed and running** in HTTP mode (system environment variable `MCP_MODE=http`) before any AI tool can connect to it.
140+
:::
141+
142+
```json
143+
{
144+
"reportportal": {
145+
"url": "http://your-mcp-server-host:port/mcp/",
146+
"headers": {
147+
"Authorization": "Bearer your-report-portal-api-token",
148+
"X-Project": "YourProjectInReportPortal"
149+
}
150+
}
151+
}
152+
```
32153

33154
## Usage with your favorite AI tools
34155

35156
Below are brief setup instructions for configuring the ReportPortal MCP Server with Cursor, Copilot, and Claude Desktop.
36157

37158
### Cursor IDE
38159

39-
#### Local installation
160+
You can install MCP Server from the official Cursor IDE server repository in one click
40161

41-
To configure ReportPortal MCP Server with Cursor:
162+
[![Install MCP Server](https://cursor.com/deeplink/mcp-install-dark.svg)](https://cursor.com/en/install-mcp?name=reportportal&config=eyJjb21tYW5kIjoiZG9ja2VyIHJ1biAtaSAtLXJtIC1lIFJQX0FQSV9UT0tFTiAtZSBSUF9IT1NUIC1lIFJQX1BST0pFQ1QgcmVwb3J0cG9ydGFsL21jcC1zZXJ2ZXIiLCJlbnYiOnsiUlBfQVBJX1RPS0VOIjoieW91ci1hcGktdG9rZW4iLCJSUF9IT1NUIjoiaHR0cHM6Ly95b3VyLXJlcG9ydHBvcnRhbC1pbnN0YW5jZS5jb20iLCJSUF9QUk9KRUNUIjoiWW91clByb2plY3RJblJlcG9ydFBvcnRhbCJ9fQ%3D%3D)
42163

43-
1. Log in to Cursor.
44-
2. Open Settings.
45-
3. Select "Tools & Integrations" section.
46-
4. Click "New MCP Server".
164+
Or follow the next steps:
165+
166+
1. In Cursor, go to **Settings** then **Tools & MCP** and click **Add Custom MCP**.
47167

48-
<MediaViewer src={require('./img/mcp-server/Cursor1.JPG')} alt="Cursor Settings" />
168+
<MediaViewer src={require('./img/mcp-server/Cursor1.png')} alt="Cursor Settings" />
49169

50-
5. Fill in the required fields in the Config file.
170+
2. That will open file `mcp.json` where you need to add a new MCP server entry:
51171

52-
<MediaViewer src={require('./img/mcp-server/Cursor2.JPG')} alt="Cursor Config file" />
172+
<MediaViewer src={require('./img/mcp-server/Cursor2.png')} alt="Cursor Config file" />
53173

54-
6. The list of available tools appears.
174+
#### Local Installation
55175

56-
<MediaViewer src={require('./img/mcp-server/Cursor3.JPG')} alt="ReportPortal MCP Server configured with Cursor" />
176+
```json
177+
{
178+
"mcpServers": {
179+
"reportportal": {
180+
// choose your MCP configuration from the "Installation" section above and place it instead of this line
181+
}
182+
}
183+
}
184+
```
185+
#### Remote Server
57186

58-
#### Remote server
187+
:::note
188+
The remote server must be **deployed and running** in HTTP mode before connecting.
189+
:::
59190

60-
This setup allows Cursor to communicate with a remote ReportPortal MCP Server.
61191

62192
```json
63193
{
64194
"mcpServers": {
65195
"reportportal": {
66196
"url": "http://your-mcp-server-host:port/mcp/",
67197
"headers": {
68-
"Authorization": "Bearer your-api-token",
198+
"Authorization": "Bearer your-report-portal-api-token",
69199
"X-Project": "YourProjectInReportPortal"
70200
}
71201
}
72202
}
73203
}
74204
```
75205

76-
### GitHub Copilot
206+
<MediaViewer src={require('./img/mcp-server/Cursor3.png')} alt="ReportPortal MCP Server configured with Cursor" />
77207

78-
#### Local installation
208+
### GitHub Copilot (VS Code)
79209

80-
To configure ReportPortal MCP Server with Copilot:
210+
1. Install/update the GitHub Copilot plugin.
211+
2. Press **"Ctrl+P"** and type **>mcp** in the search bar and select **MCP: Open User Configuration**.
81212

82-
1. Log in to Copilot.
83-
2. Type ">mcp" in the search bar.
84-
3. Select "MCP: Open User Configuration" option.
213+
<MediaViewer src={require('./img/mcp-server/Copilot1.png')} alt="Copilot settings" />
85214

86-
<MediaViewer src={require('./img/mcp-server/Copilot1.jpg')} alt="Copilot settings" />
215+
3. That will open file `mcp.json` where you need to add a new MCP server entry:
87216

88-
4. Fill in the required fields in the Config file.
217+
<MediaViewer src={require('./img/mcp-server/Copilot2.png')} alt="Copilot Config file" />
89218

90-
<MediaViewer src={require('./img/mcp-server/Copilot2.JPG')} alt="Copilot Config file" />
219+
#### Local Installation
220+
221+
```json
222+
{
223+
"servers": {
224+
"reportportal": {
225+
// choose your MCP configuration from the "Installation" section above and place it instead of this line
226+
}
227+
}
228+
}
229+
```
91230

92-
#### Remote server
231+
#### Remote Server
93232

94-
Use this configuration to connect Copilot to a remote ReportPortal MCP Server.
233+
:::note
234+
The remote server must be **deployed and running** in HTTP mode before connecting.
235+
:::
95236

96237
```json
97238
{
@@ -100,15 +241,14 @@ Use this configuration to connect Copilot to a remote ReportPortal MCP Server.
100241
"url": "http://your-mcp-server-host:port/mcp/",
101242
"requestInit": {
102243
"headers": {
103-
"Authorization": "Bearer your-api-token",
244+
"Authorization": "Bearer your-report-portal-api-token",
104245
"X-Project": "YourProjectInReportPortal"
105246
}
106247
}
107248
}
108249
}
109250
}
110251
```
111-
112252
### Claude Desktop
113253

114254
To configure ReportPortal MCP Server with Claude:
@@ -157,6 +297,76 @@ Token is API Key the user's Profile page.
157297
<MediaViewer src={require('./img/mcp-server/MCP9-2.png')} alt="Summary from AI based on the data from our qa metrics dashboard" />
158298
<MediaViewer src={require('./img/mcp-server/MCP10.png')} alt="Launches page" />
159299

160-
Refer to the detailed user guide for the [full setup instructions](https://github.com/reportportal/reportportal-mcp-server) of the MCP Server.
300+
## Verifying Your Setup
301+
302+
### 1. Verify Remote MCP Server (if using remote deployment)
303+
304+
If connecting to a remote MCP server, verify it's accessible before configuring your AI tool:
305+
306+
**Via Browser:**
307+
```
308+
http://your-mcp-server-host:port/
309+
```
310+
Should return server information and available endpoints.
311+
312+
**Via ping (network connectivity only):**
313+
```bash
314+
ping your-mcp-server-host
315+
```
316+
317+
**Via curl (MCP protocol test):**
318+
```bash
319+
# Test MCP endpoint with JSON-RPC request
320+
curl -X POST http://your-mcp-server-host:port/mcp \
321+
-H "Content-Type: application/json" \
322+
-H "Authorization: Bearer your-api-token" \
323+
-H "X-Project: YourProject" \
324+
-d '{
325+
"jsonrpc": "2.0",
326+
"method": "tools/list",
327+
"id": 1
328+
}'
329+
```
330+
331+
**Expected Results:**
332+
- Server responds to health checks
333+
- `/info` returns server configuration
334+
- MCP endpoint returns list of available tools
335+
- No connection refused or timeout errors
336+
337+
### 2. Verify MCP Server Integration
338+
339+
After configuration, verify the AI assistant can communicate with the MCP server:
340+
341+
1. **Check Available Tools**: Ask your AI assistant "What ReportPortal tools are available?"
342+
- Expected: A list of 15 tools including launches, test items, analysis tools, etc.
343+
344+
2. **Test Basic Query**: Try "List the 5 most recent test launches"
345+
- Expected: A formatted list of recent launches with names, statuses, and timestamps.
346+
347+
For detailed verification steps, troubleshooting, and developer information, refer to the [full documentation](https://github.com/reportportal/reportportal-mcp-server).
348+
349+
## Example Queries
350+
351+
Here are some real-world examples of what you might ask your AI after setup:
352+
353+
- **"List the 5 most recent test launches."** – returns a paginated list of recent test runs with names and statuses.
354+
- **"What tests failed in the latest run?"** – shows failed test items for the most recent launch.
355+
- **"Show me details of launch with ID 119000."** – retrieves a specific launch directly by its ID.
356+
- **"Run quality gate on launch 12345."** – executes quality gate analysis to verify if launch meets defined quality criteria.
357+
- **"Run an analysis on launch ABC."** – triggers the ReportPortal's auto-analysis to summarize results and failures.
358+
- **"Show me the top five 500-level errors in the last hour"** - lists the top 5 such errors from the recent test results.
359+
360+
## More Information
361+
362+
For comprehensive documentation including:
363+
- Detailed installation and configuration options
364+
- ReportPortal compatibility information
365+
- Complete tools reference with all parameters
366+
- Developer guide and API documentation
367+
- Troubleshooting and common issues
368+
- Building from source
369+
370+
Please refer to the [complete README](https://github.com/reportportal/reportportal-mcp-server).
161371

162372
Whether you're aiming to optimize test analysis or simplify routine QA tasks, MCP empowers your AI tools to act with clarity and precision.
-117 KB
Binary file not shown.
165 KB
Loading
-104 KB
Binary file not shown.
160 KB
Loading
-111 KB
Binary file not shown.
227 KB
Loading
-137 KB
Binary file not shown.
219 KB
Loading
-109 KB
Binary file not shown.

0 commit comments

Comments
 (0)