Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 

[Rovo Dev CLI] Adding mcp.json causes extremely verbose logging

Jeremiah Harvey
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
June 17, 2025

Hello! When defining my MCP server configurations in `~/.rovodev/mcp.json`, Rovo Dev CLI starts spewing out a ridiculous amount of logging information. I think a developer may have forgotten to unset the debug flag? It's preventing me from using the application with MCP servers due to how much output it produces.

2 comments

Comment

Log in or Sign up to comment
Kun Chen
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
June 17, 2025

Hi @Jeremiah Harvey - thanks for flagging! Just want to double check - are you seeing debug output printed in your terminal or in the log file? 

Jeremiah Harvey
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
June 18, 2025

Hey @Kun Chen ,

 

Apologies, it looks like the culprit is the Supergateway package, and was triggering/enabling something to bleed out verbose logs in the main window when adding it as an MCP server. I was using it to convert an SSE server to STDIO.

 

Thanks for getting back to me. I don't think this is any particular issue with Rovo Dev, unless you'd like to validate compatibility with this package wrapping MCP servers.

Like Jovana Dunisijevic likes this
Jeremiah Harvey
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
June 18, 2025

Here's what those logs look like in the main output TUI, for clarity:

```

Loaded memory from /Users/jeremiah/.rovodev/.agent.md
WARNING:root:Failed to validate notification: 11 validation errors for ServerNotification
CancelledNotification.method
Input should be 'notifications/cancelled' [type=literal_error, input_value='notifications/initialized', input_type=str]
For further information visit https://errors.pydantic.dev/2.11/v/literal_error
CancelledNotification.params
Field required [type=missing, input_value={'method': 'notifications...ized', 'jsonrpc': '2.0'}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.11/v/missing
ProgressNotification.method
Input should be 'notifications/progress' [type=literal_error, input_value='notifications/initialized', input_type=str]
For further information visit https://errors.pydantic.dev/2.11/v/literal_error
ProgressNotification.params
Field required [type=missing, input_value={'method': 'notifications...ized', 'jsonrpc': '2.0'}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.11/v/missing
LoggingMessageNotification.method
Input should be 'notifications/message' [type=literal_error, input_value='notifications/initialized', input_type=str]
For further information visit https://errors.pydantic.dev/2.11/v/literal_error
LoggingMessageNotification.params
Field required [type=missing, input_value={'method': 'notifications...ized', 'jsonrpc': '2.0'}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.11/v/missing
ResourceUpdatedNotification.method
Input should be 'notifications/resources/updated' [type=literal_error, input_value='notifications/initialized', input_type=str]
For further information visit https://errors.pydantic.dev/2.11/v/literal_error
ResourceUpdatedNotification.params
Field required [type=missing, input_value={'method': 'notifications...ized', 'jsonrpc': '2.0'}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.11/v/missing
ResourceListChangedNotification.method
Input should be 'notifications/resources/list_changed' [type=literal_error, input_value='notifications/initialized', input_type=str]
For further information visit https://errors.pydantic.dev/2.11/v/literal_error
ToolListChangedNotification.method
Input should be 'notifications/tools/list_changed' [type=literal_error, input_value='notifications/initialized', input_type=str]
For further information visit https://errors.pydantic.dev/2.11/v/literal_error
PromptListChangedNotification.method
Input should be 'notifications/prompts/list_changed' [type=literal_error, input_value='notifications/initialized', input_type=str]
For further information visit https://errors.pydantic.dev/2.11/v/literal_error. Message was: method='notifications/initialized' params=None jsonrpc='2.0'
DEBUG:segment:queueing: {'integrations': {}, 'anonymousId': None, 'properties': {'product': 'rovodev', 'env': 'prod', 'origin': 'unknown', 'userIdType': 'atlassianAccount', 'tenantId': 'unknown',
'tenantIdType': 'cloudId', 'subproduct': 'rovodev', 'platform': 'mac', 'eventType': 'track', 'source': 'rovodev mcp server startup', 'actionSubject': 'mcp_server', 'action': 'completed', 'workspaceId': None,
'orgId': '', 'attributes': {'sessionId': 'c5516627-c8a3-4bf1-b3dd-2a64bb7c576a', 'isAIFeature': 0, 'userGeneratedAI': 0, 'singleInstrumentationID': 'c5516627-c8a3-4bf1-b3dd-2a64bb7c576a', 'start_time':
'2025-06-18T14:18:06.181577Z', 'server_type': 'stdio', 'connection_info': 'npx -y @upstash/context7-mcp@latest', 'timestamp': '2025-06-18T14:18:06.181166Z', 'success': True, 'authType': 'ASAP', 'isInternal':
False}}, 'timestamp': '2025-06-18T14:18:06.181692+00:00', 'context': {'userAgent': None, 'ip': None, 'validationMode': 'quiet', 'library': {'name': 'analytics-python', 'version': '1.4.post1'}}, 'userId':
'712020:8e2dd757-fd39-4eb2-b28c-e9b2bf10a176', 'type': 'track', 'event': 'mcp_server completed', 'messageId': '2bf7d4d1-fbaf-4f15-94e0-390902f5034c'}
DEBUG:segment:enqueued with blocking track.
DEBUG:segment:making request: {"batch": [{"integrations": {}, "anonymousId": null, "properties": {"product": "rovodev", "env": "prod", "origin": "unknown", "userIdType": "atlassianAccount", "tenantId":
"unknown", "tenantIdType": "cloudId", "subproduct": "rovodev", "platform": "mac", "eventType": "track", "source": "rovodev mcp server startup", "actionSubject": "mcp_server", "action": "completed",
"workspaceId": null, "orgId": "", "attributes": {"sessionId": "c5516627-c8a3-4bf1-b3dd-2a64bb7c576a", "isAIFeature": 0, "userGeneratedAI": 0, "singleInstrumentationID": "c5516627-c8a3-4bf1-b3dd-2a64bb7c576a",
"start_time": "2025-06-18T14:18:06.181577Z", "server_type": "stdio", "connection_info": "npx -y @upstash/context7-mcp@latest", "timestamp": "2025-06-18T14:18:06.181166Z", "success": true, "authType": "ASAP",
"isInternal": false}}, "timestamp": "2025-06-18T14:18:06.181692+00:00", "context": {"userAgent": null, "ip": null, "validationMode": "quiet", "library": {"name": "analytics-python", "version": "1.4.post1"}},
"userId": "712020:8e2dd757-fd39-4eb2-b28c-e9b2bf10a176", "type": "track", "event": "mcp_server completed", "messageId": "2bf7d4d1-fbaf-4f15-94e0-390902f5034c"}], "sentAt": "2025-06-18T14:18:06.182925+00:00"}
DEBUG:segment:data uploaded successfully
DEBUG:segment:successfully flushed about 0 items.
DEBUG:segment:queueing: {'integrations': {}, 'anonymousId': None, 'properties': {'product': 'rovodev', 'env': 'prod', 'origin': 'unknown', 'userIdType': 'atlassianAccount', 'tenantId': 'unknown',
'tenantIdType': 'cloudId', 'subproduct': 'rovodev', 'platform': 'mac', 'eventType': 'track', 'source': 'rovodev mcp server startup', 'actionSubject': 'mcp_server', 'action': 'completed', 'workspaceId': None,
'orgId': '', 'attributes': {'sessionId': 'c5516627-c8a3-4bf1-b3dd-2a64bb7c576a', 'isAIFeature': 0, 'userGeneratedAI': 0, 'singleInstrumentationID': 'c5516627-c8a3-4bf1-b3dd-2a64bb7c576a', 'start_time':
'2025-06-18T14:18:06.333969Z', 'server_type': 'stdio', 'connection_info': 'node /Users/jeremiah/Documents/GitHub/mcp-reasoner/dist/index.js', 'timestamp': '2025-06-18T14:18:06.333528Z', 'success': True,
'authType': 'ASAP', 'isInternal': False}}, 'timestamp': '2025-06-18T14:18:06.334078+00:00', 'context': {'userAgent': None, 'ip': None, 'validationMode': 'quiet', 'library': {'name': 'analytics-python',
'version': '1.4.post1'}}, 'userId': '712020:8e2dd757-fd39-4eb2-b28c-e9b2bf10a176', 'type': 'track', 'event': 'mcp_server completed', 'messageId': '7330a2fe-0d72-477d-91ed-8c17b58c472d'}
DEBUG:segment:enqueued with blocking track.
DEBUG:segment:making request: {"batch": [{"integrations": {}, "anonymousId": null, "properties": {"product": "rovodev", "env": "prod", "origin": "unknown", "userIdType": "atlassianAccount", "tenantId":
"unknown", "tenantIdType": "cloudId", "subproduct": "rovodev", "platform": "mac", "eventType": "track", "source": "rovodev mcp server startup", "actionSubject": "mcp_server", "action": "completed",
"workspaceId": null, "orgId": "", "attributes": {"sessionId": "c5516627-c8a3-4bf1-b3dd-2a64bb7c576a", "isAIFeature": 0, "userGeneratedAI": 0, "singleInstrumentationID": "c5516627-c8a3-4bf1-b3dd-2a64bb7c576a",
"start_time": "2025-06-18T14:18:06.333969Z", "server_type": "stdio", "connection_info": "node /Users/jeremiah/Documents/GitHub/mcp-reasoner/dist/index.js", "timestamp": "2025-06-18T14:18:06.333528Z",
"success": true, "authType": "ASAP", "isInternal": false}}, "timestamp": "2025-06-18T14:18:06.334078+00:00", "context": {"userAgent": null, "ip": null, "validationMode": "quiet", "library": {"name":
"analytics-python", "version": "1.4.post1"}}, "userId": "712020:8e2dd757-fd39-4eb2-b28c-e9b2bf10a176", "type": "track", "event": "mcp_server completed", "messageId": "7330a2fe-0d72-477d-91ed-8c17b58c472d"}],
"sentAt": "2025-06-18T14:18:06.335536+00:00"}
DEBUG:segment:data uploaded successfully
DEBUG:segment:successfully flushed about 0 items.
DEBUG:segment:queueing: {'integrations': {}, 'anonymousId': None, 'properties': {'product': 'rovodev', 'env': 'prod', 'origin': 'unknown', 'userIdType': 'atlassianAccount', 'tenantId': 'unknown',
'tenantIdType': 'cloudId', 'subproduct': 'rovodev', 'platform': 'mac', 'eventType': 'track', 'source': 'rovodev mcp server startup', 'actionSubject': 'mcp_server', 'action': 'completed', 'workspaceId': None,
'orgId': '', 'attributes': {'sessionId': 'c5516627-c8a3-4bf1-b3dd-2a64bb7c576a', 'isAIFeature': 0, 'userGeneratedAI': 0, 'singleInstrumentationID': 'c5516627-c8a3-4bf1-b3dd-2a64bb7c576a', 'start_time':
'2025-06-18T14:18:07.255933Z', 'server_type': 'http', 'connection_info': 'https://mcp.atlassian.com/v1/native/mcp', 'timestamp': '2025-06-18T14:18:07.255513Z', 'success': True, 'authType': 'ASAP',
'isInternal': False}}, 'timestamp': '2025-06-18T14:18:07.256113+00:00', 'context': {'userAgent': None, 'ip': None, 'validationMode': 'quiet', 'library': {'name': 'analytics-python', 'version': '1.4.post1'}},
'userId': '712020:8e2dd757-fd39-4eb2-b28c-e9b2bf10a176', 'type': 'track', 'event': 'mcp_server completed', 'messageId': 'c5fa9210-b045-4bab-b12f-5d62f70798dd'}
DEBUG:segment:enqueued with blocking track.
DEBUG:segment:making request: {"batch": [{"integrations": {}, "anonymousId": null, "properties": {"product": "rovodev", "env": "prod", "origin": "unknown", "userIdType": "atlassianAccount", "tenantId":
"unknown", "tenantIdType": "cloudId", "subproduct": "rovodev", "platform": "mac", "eventType": "track", "source": "rovodev mcp server startup", "actionSubject": "mcp_server", "action": "completed",
"workspaceId": null, "orgId": "", "attributes": {"sessionId": "c5516627-c8a3-4bf1-b3dd-2a64bb7c576a", "isAIFeature": 0, "userGeneratedAI": 0, "singleInstrumentationID": "c5516627-c8a3-4bf1-b3dd-2a64bb7c576a",
"start_time": "2025-06-18T14:18:07.255933Z", "server_type": "http", "connection_info": "https://mcp.atlassian.com/v1/native/mcp", "timestamp": "2025-06-18T14:18:07.255513Z", "success": true, "authType":
"ASAP", "isInternal": false}}, "timestamp": "2025-06-18T14:18:07.256113+00:00", "context": {"userAgent": null, "ip": null, "validationMode": "quiet", "library": {"name": "analytics-python", "version":
"1.4.post1"}}, "userId": "712020:8e2dd757-fd39-4eb2-b28c-e9b2bf10a176", "type": "track", "event": "mcp_server completed", "messageId": "c5fa9210-b045-4bab-b12f-5d62f70798dd"}], "sentAt":
"2025-06-18T14:18:07.259023+00:00"}
DEBUG:segment:data uploaded successfully
DEBUG:segment:successfully flushed about 0 items.

```

Steve Harman June 20, 2025

Is there a guide / link to instructions for adding MCP servers into Rovo Dev CLI? 

I tried asking....Rovo Dev and (a) it said it couldn't be done and (b) it seemed to think that it was Claude ?!?

rovodev.png

Jeremiah Harvey
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
June 20, 2025

You can open the MCP config by running `acli rovodev mcp`. It's a standard MCP config file structure, like this:
```

{
"mcpServers": {
"firecrawl": {
"command": "npx",
"args": [
"-y",
"firecrawl-mcp"
],
"env": {
"FIRECRAWL_API_KEY": "xxx"
}
},
"context7": {
"command": "npx",
"args": [
"-y",
"@upstash/context7-mcp@latest"
]
},
"think": {
"command": "npx",
"args": [
"-y",
"@cgize/mcp-think-tool"
]
}
}
}

```

Steve Harman June 20, 2025

Thanks @Jeremiah Harvey - great stuff.

Perhaps someone should mention it to Rovo Dev / "Claude".  :-)


Like Jeremiah Harvey likes this
TAGS
AUG Leaders

Atlassian Community Events