Skip to main content

Quick Diagnostic Checklist

Follow this checklist to diagnose issues systematically:
1

Check Basic Connection

  • Is the internet connection active?
  • Can you access https://mcp.tiro.ooo?
  • Is your MCP client running?
2

Verify Authentication

  • Do you have a valid access token?
  • Has the token expired?
  • Does the token include mcp:notes:read scope?
3

Validate Configuration

  • Is the URL correct: https://mcp.tiro.ooo/mcp?
  • Is the JSON syntax valid?
  • Have you restarted the client completely?
4

Test Functionality

  • Does Tiro appear in your tools list?
  • Can you search notes?
  • Do other tools work?

Connection Issues

Server Not Found

Symptoms:
  • Connection timeout
  • “Connection refused” error
  • “Server not found” message
Common Causes:
  1. Incorrect URL in configuration
  2. Network connectivity issues
  3. MCP client misconfiguration
Solutions:
Ensure your configuration uses the correct URL:
Correct
{
  "url": "https://mcp.tiro.ooo/mcp"
}
Incorrect - Missing /mcp
{
  "url": "https://mcp.tiro.ooo"
}
Incorrect - Wrong protocol
{
  "url": "http://mcp.tiro.ooo/mcp"
}
Verify the server is reachable:
curl https://mcp.tiro.ooo/mcp
Expected: 405 Method Not Allowed (this is normal for a GET request)Unexpected: 404 Not Found or connection timeout indicates issues
cat ~/Library/Application\ Support/Claude/claude_desktop_config.json
Validate JSON syntax at JSONLint

Tools Not Appearing

Symptoms:
  • AI doesn’t recognize Tiro tools
  • “No tools available” message
  • Tiro not in tools list
Solutions:
  1. Check Connection Status
    • Ask your AI: “List all available MCP servers”
    • Verify Tiro appears in the list
  2. Refresh Tools List
    • Completely restart your MCP client (not just refresh)
    • Reload configuration file
  3. Verify Setup

Authentication Errors

401 Unauthorized

Common Causes:
  • Missing access token
  • Expired token
  • Malformed token format
  • Revoked token
Solutions:
Verify your configuration includes the token:
  • Claude Code: Check Authorization header in config
  • Claude Desktop: Restart app to see token prompt

403 Forbidden

Cause: Token lacks the mcp:notes:read scope Solution:
1

Check Current Scope

Decode your token and examine the scope claim:
echo "YOUR_TOKEN" | cut -d'.' -f2 | base64 -d | jq '.scope'
2

Re-authenticate with Google

  1. Sign in to Tiro with your Google account
  2. OAuth automatically includes mcp:notes:read scope
  3. Restart your MCP client

Invalid Token Format

Symptoms:
  • “Invalid token format” error
  • Authentication fails immediately
Common Mistakes:
Authorization: Bearer eyJhbGciOiJIUzI1NiIs...
Solution: Copy the complete token without extra spaces or line breaks

Configuration Issues

Claude Desktop Repeatedly Prompts for Token

Cause:
  • Configuration file has JSON syntax errors
  • Token input not being saved properly
Solution:
1

Validate JSON

Open your configuration file and check for common issues:
  • Missing or extra commas
  • Unmatched brackets {} or []
  • Missing quotes around strings
  • Use JSONLint to validate
2

Verify Configuration Structure

Ensure your config follows this structure:
claude_desktop_config.json
{
  "mcpServers": {
    "tiro": {
      "url": "https://mcp.tiro.ooo/mcp",
      "transport": {
        "type": "streamable-http"
      },
      "inputs": [
        {
          "id": "tiro_token",
          "type": "promptString",
          "description": "Tiro OAuth 2.0 Access Token",
          "password": true
        }
      ]
    }
  }
}
3

Completely Restart Claude Desktop

# Quit completely (Cmd+Q)
killall Claude

# Restart
open -a Claude

Search Issues

No Search Results

Symptoms:
{
  "notes": []
}
Common Causes:
  1. Search filters too restrictive
  2. No matching notes exist
  3. Invalid date format
Solutions:
Try broader searches:
Too Restrictive
{
  "content": "very specific keyword",
  "createdAt": "2025-11-22T10:00:00Z",
  "personName": "Exact Name"
}
Better Approach
{
  "content": "general keyword"
}
Or search all notes:
{}
Ensure dates use ISO 8601 format:
{
  "createdAt": "2025-11-01T00:00:00Z"
}
Generate current date:
date -u +"%Y-%m-%dT%H:%M:%SZ"
Verify notes exist in your account:
  1. Visit Tiro Dashboard
  2. Check your meeting notes list
  3. Ensure notes are in “Completed” status

Invalid Date Format Error

Solution: Always use ISO 8601 datetime format with timezone:
{
  "createdAt": "2025-11-22T00:00:00Z"
}
Date-only formats like 2025-11-22 are not accepted. You must include time and timezone.

Performance Issues

Slow Response Times

Symptoms:
  • Requests take 5+ seconds
  • Timeout errors
  • Laggy responses
Solutions:

Use Progressive Disclosure

Instead of loading full transcripts immediately:Benefits:
  • Initial results in ~1 second
  • Load full content only when needed
  • Save up to 80% of time and tokens
Prefer Summaries FirstTry get_note_summary before get_note_transcript. Summaries are faster (~2 seconds vs ~5 seconds) and often contain enough information.

Request Timeouts

Causes:
  • Very long meeting transcripts (2+ hours)
  • Server load
  • Network latency
Solutions:
  1. Use summary instead of transcript
  2. Retry after a short delay
  3. Avoid peak hours if possible
  4. Contact support if timeouts persist

Data Issues

Recently Created Notes Not Appearing

Possible Reasons:
1

Processing Not Complete

Check note status in Tiro Dashboard:
  • “Processing” → Wait for completion
  • “Completed” → Available for MCP queries
2

Cache Delay

Tiro MCP Server uses a 15-minute cache. New notes may take up to 15 minutes to appear in search results.Workaround: Access directly if you have the note ID using get_note_transcript or get_note_summary.
3

Permission Issues

Verify the note belongs to your account:
  • Check user ID from an auth_status call
  • Confirm note ownership in Tiro Dashboard

Error Reference

HTTP Status Codes

StatusMeaningCommon Causes
401UnauthorizedMissing, expired, or invalid token
403ForbiddenInsufficient scope permissions
400Bad RequestInvalid parameters or format
404Not FoundNote doesn’t exist or no access
500Server ErrorInternal server issue (retry)
504Gateway TimeoutRequest took too long (use summary)

Error Codes

CodeHTTPDescriptionSolution
UNAUTHORIZED401No valid authenticationGenerate new token
TOKEN_EXPIRED401Token past expirationRenew token
INVALID_TOKEN_FORMAT401Malformed tokenCheck token format
FORBIDDEN403Missing required scopeAdd mcp:notes:read scope
MISSING_PARAMETERS400Required params missingAdd required parameters
INVALID_NOTE_ID400Invalid note IDUse positive integer
INVALID_DATE_FORMAT400Wrong date formatUse ISO 8601 datetime
NOTE_NOT_FOUND404Note doesn’t existVerify note ID
INTERNAL_SERVER_ERROR500Server errorRetry or contact support
REQUEST_TIMEOUT504Request timed outUse summary or retry

Getting Help

If you’ve tried the above solutions and still have issues:

Information to Include

When requesting support, please provide:
  • Complete error message
  • Error code (if shown)
  • Timestamp when error occurred
  • Steps to reproduce
  • MCP client (Claude Desktop, Claude Code, etc.)
  • Operating system and version
  • Token expiration time (from decoded JWT)
  • Configuration file contents (redact your token!)
  • Whether tools appear in your client
  • Result of auth_status call (if possible)

Next Steps