This guide helps you diagnose and resolve common issues when using the Atlantis MCP Server.
Symptoms: - AI assistant reports connection failed - Timeout errors - “Server not responding” messages
Possible Causes:
https://mcp.atlantis.63klabs.net/mcp/v1Solutions:
# Test connection with curl
curl -X POST https://mcp.atlantis.63klabs.net/mcp/v1 \
-H "Content-Type: application/json" \
-d '{}'
# Expected: JSON response with categoriesFor Claude Desktop:
{
"mcpServers": {
"atlantis": {
"url": "https://mcp.atlantis.63klabs.net/mcp/v1",
"timeout": 30000
}
}
}For Cursor/Kiro: - Verify settings.json syntax - Reload window after configuration changes - Check IDE logs for detailed errors
Symptoms: - “Rate limit exceeded” error - HTTP 429 status code - Requests blocked for 1 hour
Understanding Rate Limits:
Rate limits vary by tier. See the rate limits page for the full breakdown of request limits per tier.
Check Rate Limit Status:
Response headers show current status:
X-RateLimit-Limit: <your-tier-limit>
X-RateLimit-Remaining: <requests-remaining>
X-RateLimit-Reset: <unix-timestamp>
Solutions:
X-RateLimit-Reset header (Unix timestamp)date -r 1706284800Prevention:
Symptoms: - “Template ‘xyz’ not found” error - Empty results when expecting templates
Possible Causes:
Solutions:
# List all templates to find correct name
Ask AI: "List all available templates"
# Search by category
Ask AI: "Show me all Pipeline templates"
# Check specific bucket
Ask AI: "List templates from bucket xyz"
Error Response Example:
{
"error": {
"code": "TEMPLATE_NOT_FOUND",
"message": "Template 'template-pipline.yml' not found",
"details": {
"availableTemplates": [
"template-pipeline.yml",
"template-storage.yml"
]
}
}
}Note the typo: “pipline” vs “pipeline”
Symptoms: - “Invalid input” error - JSON Schema validation failed - Missing required parameters
Common Causes:
Missing Required Parameters
# Wrong - missing category
Ask AI: "Get template-pipeline.yml"
# Correct
Ask AI: "Get template-pipeline.yml from Pipeline category"Invalid Parameter Types
# Wrong - version should be string
version: 2.0.18
# Correct
version: "v2.0.18"Invalid Parameter Values
# Wrong - invalid category
category: "Pipelines"
# Correct
category: "pipeline"Solutions:
Symptoms: - “Starter ‘xyz’ not found” error - Empty results for get_starter_info
Possible Causes:
atlantis_repository-type
propertySolutions:
# List all starters to find correct name
Ask AI: "List all available starters"
# Check specific organization
Ask AI: "List starters from 63klabs"
For Self-Hosted: - Verify sidecar metadata files exist in S3 - Check GitHub custom properties are set - Review logs for warnings about skipped starters
Symptoms: - Requests take >10 seconds - Timeout errors - Inconsistent performance
Possible Causes:
Solutions:
Use Filters
# Slow - lists everything
Ask AI: "List all templates"
# Faster - filtered results
Ask AI: "List Pipeline templates"Increase Timeout
{
"mcpServers": {
"atlantis": {
"url": "https://mcp.atlantis.63klabs.net/mcp/v1",
"timeout": 60000
}
}
}Performance Tips:
Symptoms: - “Authentication required” error - HTTP 401 Unauthorized - Invalid credentials
Solutions:
If you see authentication errors:
Symptoms: - partialData: true in
response - errors array contains failures - Some
buckets/orgs missing from results
Understanding Brown-Out Support:
The MCP server continues operation when some data sources fail: - Returns available data from working sources - Includes error information for failed sources - Logs detailed errors for troubleshooting
Example Response:
{
"templates": [...],
"partialData": true,
"errors": [
{
"source": "bucket-xyz",
"sourceType": "s3",
"error": "Access denied",
"timestamp": "2025-01-15T10:30:00Z"
}
]
}Possible Causes:
atlantis-mcp:Allow=true tagSolutions:
errors array in responseSymptoms: - Old template versions shown - Missing recent updates - Outdated documentation
Understanding Caching:
Data is cached for performance: - Template metadata: 24 hours - Starter metadata: 24 hours - Documentation index: 24 hours - Full template content: 24 hours
Solutions:
Problem: Configuration Not Loading
Verify file location:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json~/.config/Claude/claude_desktop_config.jsonCheck JSON syntax:
# Validate JSON
cat claude_desktop_config.json | python -m json.toolRestart Claude Desktop completely
Problem: Tools Not Available
Problem: Custom GPT Not Working
Problem: Action Timeout
Problem: @ Mention Not Working
Problem: Slow Suggestions
Problem: MCP Server Not Connected
Problem: Auto-Approve Not Working
Problem: Extension Not Loading
Problem: Authentication Failed
Include: - Description of issue - Error messages - Request ID - Timestamp - Steps to reproduce - Configuration (remove sensitive data)
GitHub Issues: atlantis-mcp-server/issues
# Test server is responding
curl -i -X POST https://mcp.atlantis.63klabs.net/mcp/v1# Make request and check headers
curl -i -X POST https://mcp.atlantis.63klabs.net/mcp/v1
# Look for headers:
# X-RateLimit-Limit: <your-tier-limit>
# X-RateLimit-Remaining: <requests-remaining>
# X-RateLimit-Reset: <unix-timestamp>| Code | Meaning | Solution |
|---|---|---|
| 400 | Bad Request | Check input parameters |
| 401 | Unauthorized | Check URL or credentials |
| 404 | Not Found | Verify resource name and category |
| 429 | Rate Limit Exceeded | Wait for reset or self-host |
| 500 | Internal Server Error | Retry or contact support |
| 503 | Service Unavailable | Temporary issue, retry later |
Q: Why am I getting rate limited?
A: You’ve exceeded the request limit for your current tier. Check the rate limits page for details, or wait for your window to reset.
Q: Can I increase rate limits?
A: Yes. Register for a free account to unlock higher limits, or contact us about paid and private tiers. You can also self-host with custom limits.
Q: Why don’t I see my template?
A: Check bucket configuration, verify template name, namespace, and category.
Q: How do I clear the cache?
A: Cache expires automatically. For self-hosted, clear DynamoDB/S3 cache manually.
Q: Why is data stale?
A: Caching for performance. Wait for TTL expiration or adjust TTL in self-hosted instance.
Q: Can I use this in production?
A: Yes, but consider self-hosting for better performance and higher limits.
If you need help with a specific use case: