Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 5 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -159,13 +159,13 @@ cp .env.example .env
```

#### 4. Custom MCP Backend Orchestration [OPTIONAL FOR LOCAL DEV]
Our enhanced orchestration backend, [**XtraMCP**](https://github.com/4ndrelim/academic-paper-mcp-server), is currently closed-source while under active development. <br>
You can run PaperDebugger without it; all core features (chat, formatting, edits, comments) work normally.
Our enhanced orchestration backend, [**XtraMCP**](https://github.com/4ndrelim/academic-paper-mcp-server), is partially in-production but currently closed-source while under active development. If you wish to learn more about XtraMCP backend logic, refer to [/demo/xtramcp/readme.md](./demo/xtramcp/readme.md).<br>
You can still self-host PaperDebugger without it; all core features (chat, formatting, edits, comments) work normally.

Connecting to XtraMCP unlocks:
- research-mode agents,
- structured reviewer-style critique,
- domain-specific revisions tailored to academic writing powered by [XtraGPT](https://huggingface.co/Xtra-Computing/XtraGPT-14B) models
- domain-specific revisions tailored to academic writing powered by [XtraGPT](https://huggingface.co/Xtra-Computing/XtraGPT-14B) models.

We plan to **open-source XtraMCP** once the API stabilizes for community use.

Expand All @@ -185,6 +185,8 @@ The server will start on `http://localhost:6060`.
<img src="docs/imgs/run.png" alt="Backend Server Running" style="max-width: 600px; border-radius: 8px; box-shadow: 0 4px 12px rgba(0,0,0,0.15);"/>
</div>

**NOTE**: `"ERROR [AI Client] Failed to initialize XtraMCP session"` <br> is expected if you're hosting locally without XtraMCP or an equivalent MCP orchestration backend.

### Frontend Extension Build

#### Chrome Extension Development
Expand Down
8 changes: 4 additions & 4 deletions webapp/_webapp/src/components/loading-indicator.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ export const LoadingIndicator = ({ text = "Thinking", estimatedSeconds = 0, erro

// Calculate progress with natural fluctuation
const baseIncrement = (deltaTime / (estimatedSeconds * 1000)) * 100;
const fluctuation = (Math.random() - 0.5) * 5;
const fluctuation = (Math.random() - 0.5) * 4;
const increment = Math.max(0, baseIncrement + fluctuation);
currentProgress = Math.max(currentProgress, currentProgress + increment);

Expand Down Expand Up @@ -113,9 +113,9 @@ export const LoadingIndicator = ({ text = "Thinking", estimatedSeconds = 0, erro

// Get status message based on phase
const getStatusMessage = () => {
if (isTimeout) return "Request timed out";
if (phase === "orange") return "Taking longer than expected";
if (phase === "red") return "Last try";
if (isTimeout) return "Sorry — this request took too long to complete. We're working on improving reliability. You can try waiting a bit longer or refreshing the page. Thanks for your patience.";
if (phase === "orange") return "Synthesizing...";
if (phase === "red") return "Just a moment...";
if (errorMessage && errorMessage.length > 0) return errorMessage;
return text;
};
Expand Down