Spaces:
Paused
Paused
| <html lang="en"> | |
| <head> | |
| <meta charset="UTF-8"> | |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
| <title>Weights & Biases MCP Server</title> | |
| <!-- Favicon with multiple formats for better browser compatibility --> | |
| <link rel="icon" type="image/png" sizes="32x32" href="/favicon.png"> | |
| <link rel="icon" type="image/x-icon" href="/favicon.ico"> | |
| <link rel="shortcut icon" type="image/x-icon" href="/favicon.ico"> | |
| <link rel="apple-touch-icon" sizes="32x32" href="/favicon.png"> | |
| <meta name="msapplication-TileImage" content="/favicon.png"> | |
| <style> | |
| body { | |
| font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', sans-serif; | |
| line-height: 1.6; | |
| color: #333; | |
| max-width: 1000px; | |
| margin: 0 auto; | |
| padding: 20px; | |
| background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); | |
| min-height: 100vh; | |
| } | |
| .container { | |
| background: white; | |
| border-radius: 12px; | |
| box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1); | |
| padding: 40px; | |
| margin: 20px 0; | |
| } | |
| .header { | |
| text-align: center; | |
| margin-bottom: 40px; | |
| } | |
| .logo { | |
| width: 60px; | |
| height: 60px; | |
| background: linear-gradient(45deg, #ff6b35, #f7931e); | |
| border-radius: 12px; | |
| display: inline-flex; | |
| align-items: center; | |
| justify-content: center; | |
| font-size: 30px; | |
| margin-bottom: 20px; | |
| } | |
| h1 { | |
| color: #2d3748; | |
| margin: 0; | |
| font-size: 2.5em; | |
| font-weight: 700; | |
| } | |
| .subtitle { | |
| color: #718096; | |
| font-size: 1.2em; | |
| margin-top: 10px; | |
| } | |
| .status { | |
| background: #48bb78; | |
| color: white; | |
| padding: 8px 16px; | |
| border-radius: 20px; | |
| font-size: 0.9em; | |
| font-weight: 600; | |
| display: inline-block; | |
| margin-top: 20px; | |
| } | |
| .features { | |
| display: grid; | |
| grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); | |
| gap: 20px; | |
| margin: 40px 0; | |
| } | |
| .feature { | |
| background: #f7fafc; | |
| padding: 25px; | |
| border-radius: 8px; | |
| border-left: 4px solid #4299e1; | |
| } | |
| .feature h3 { | |
| color: #2d3748; | |
| margin: 0 0 10px 0; | |
| font-size: 1.2em; | |
| } | |
| .feature p { | |
| color: #4a5568; | |
| margin: 0; | |
| font-size: 0.95em; | |
| } | |
| .endpoint { | |
| background: #1a202c; | |
| color: #e2e8f0; | |
| padding: 20px; | |
| border-radius: 8px; | |
| font-family: 'Monaco', 'Menlo', monospace; | |
| font-size: 1.1em; | |
| text-align: center; | |
| margin: 30px 0; | |
| position: relative; | |
| } | |
| .endpoint::before { | |
| content: "π MCP Endpoint (Streamable HTTP)"; | |
| position: absolute; | |
| top: -10px; | |
| left: 20px; | |
| background: #1a202c; | |
| padding: 0 10px; | |
| font-size: 0.8em; | |
| color: #a0aec0; | |
| } | |
| .examples { | |
| background: #edf2f7; | |
| padding: 25px; | |
| border-radius: 8px; | |
| margin: 30px 0; | |
| } | |
| .examples h3 { | |
| color: #2d3748; | |
| margin: 0 0 15px 0; | |
| } | |
| .example { | |
| background: white; | |
| padding: 15px; | |
| border-radius: 6px; | |
| margin: 10px 0; | |
| border-left: 3px solid #38b2ac; | |
| font-style: italic; | |
| color: #2d3748; | |
| } | |
| .setup-steps { | |
| background: #fff5f5; | |
| border: 1px solid #feb2b2; | |
| border-radius: 8px; | |
| padding: 25px; | |
| margin: 30px 0; | |
| } | |
| .setup-steps h3 { | |
| color: #c53030; | |
| margin: 0 0 15px 0; | |
| } | |
| .setup-steps ol { | |
| color: #2d3748; | |
| padding-left: 20px; | |
| } | |
| .setup-steps li { | |
| margin: 10px 0; | |
| } | |
| .footer { | |
| text-align: center; | |
| margin-top: 40px; | |
| padding-top: 20px; | |
| border-top: 1px solid #e2e8f0; | |
| color: #718096; | |
| } | |
| .footer a { | |
| color: #4299e1; | |
| text-decoration: none; | |
| } | |
| .footer a:hover { | |
| text-decoration: underline; | |
| } | |
| @media (max-width: 768px) { | |
| body { | |
| padding: 10px; | |
| } | |
| .container { | |
| padding: 20px; | |
| } | |
| h1 { | |
| font-size: 2em; | |
| } | |
| .features { | |
| grid-template-columns: 1fr; | |
| } | |
| } | |
| </style> | |
| </head> | |
| <body> | |
| <div class="container"> | |
| <div class="header"> | |
| <div class="logo">π</div> | |
| <h1>Weights & Biases MCP Server</h1> | |
| <p class="subtitle">Model Context Protocol server for querying W&B data</p> | |
| <div class="status">β Server Running</div> | |
| </div> | |
| <div class="endpoint"> | |
| https://mcp.withwandb.com/mcp | |
| </div> | |
| <div class="features"> | |
| <div class="feature"> | |
| <h3>π W&B Models</h3> | |
| <p>Query experiment tracking data, runs, sweeps, and performance metrics using GraphQL.</p> | |
| </div> | |
| <div class="feature"> | |
| <h3>π W&B Weave</h3> | |
| <p>Access LLM traces, evaluations, and datasets with powerful filtering and pagination.</p> | |
| </div> | |
| <div class="feature"> | |
| <h3>π€ Support Agent</h3> | |
| <p>Get help from wandbot, the W&B RAG-powered support agent for product questions.</p> | |
| </div> | |
| <div class="feature"> | |
| <h3>π Reports</h3> | |
| <p>Create and save W&B Reports with markdown text and HTML visualizations.</p> | |
| </div> | |
| </div> | |
| <div class="setup-steps" style="background: #f0fdf4; border-color: #86efac;"> | |
| <h3 style="color: #166534;">π Quick Setup</h3> | |
| <div style="display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 20px; margin: 20px 0;"> | |
| <div style="background: white; padding: 20px; border-radius: 8px; border-left: 4px solid #4299e1;"> | |
| <h4 style="margin: 0 0 10px 0; color: #2d3748;">π Cursor</h4> | |
| <ul style="margin: 0; padding-left: 20px; font-size: 0.9em;"> | |
| <li>Add to <code>~/.cursor/mcp.json</code>:</li> | |
| </ul> | |
| <pre style="background: #1a202c; color: #e2e8f0; padding: 10px; border-radius: 4px; font-size: 0.8em; margin: 10px 0; overflow-x: auto;">"wandb": { | |
| "transport": "http", | |
| "url": "https://mcp.withwandb.com/mcp", | |
| "headers": { | |
| "Authorization": "Bearer YOUR_WANDB_API_KEY", | |
| "Accept": "application/json, text/event-stream" | |
| } | |
| }</pre> | |
| </div> | |
| <div style="background: white; padding: 20px; border-radius: 8px; border-left: 4px solid #38b2ac;"> | |
| <h4 style="margin: 0 0 10px 0; color: #2d3748;">π₯οΈ Claude Desktop</h4> | |
| <ul style="margin: 0; padding-left: 20px; font-size: 0.9em;"> | |
| <li>Add to <code>claude_desktop_config.json</code>:</li> | |
| </ul> | |
| <pre style="background: #1a202c; color: #e2e8f0; padding: 10px; border-radius: 4px; font-size: 0.8em; margin: 10px 0; overflow-x: auto;">{ | |
| "mcpServers": { | |
| "wandb-stdio": { | |
| "command": "uvx", | |
| "args": ["--from", "git+https://github.com/wandb/wandb-mcp-server.git", "wandb-mcp-server"], | |
| "env": { | |
| "WANDB_API_KEY": "YOUR_WANDB_API_KEY" | |
| } | |
| } | |
| } | |
| }</pre> | |
| </div> | |
| <div style="background: white; padding: 20px; border-radius: 8px; border-left: 4px solid #f56565;"> | |
| <h4 style="margin: 0 0 10px 0; color: #2d3748;">π¬ LeChat</h4> | |
| <ul style="margin: 0; padding-left: 20px; font-size: 0.9em;"> | |
| <li>MCP Server URL: <code>https://mcp.withwandb.com/mcp</code></li> | |
| <li>Auth: Bearer token</li> | |
| <li>Token: Your W&B API key</li> | |
| </ul> | |
| </div> | |
| <div style="background: white; padding: 20px; border-radius: 8px; border-left: 4px solid #9f7aea;"> | |
| <h4 style="margin: 0 0 10px 0; color: #2d3748;">π€ Gemini CLI</h4> | |
| <ul style="margin: 0; padding-left: 20px; font-size: 0.9em;"> | |
| <li>Install extension:</li> | |
| </ul> | |
| <pre style="background: #1a202c; color: #e2e8f0; padding: 10px; border-radius: 4px; font-size: 0.8em; margin: 10px 0; overflow-x: auto;">gemini extensions install https://github.com/wandb/wandb-mcp-server</pre> | |
| <ul style="margin: 10px 0 0 0; padding-left: 20px; font-size: 0.9em;"> | |
| <li>Then set API key (choose one):</li> | |
| <li style="margin-left: 15px;">β’ <code>export WANDB_API_KEY=your-key</code></li> | |
| <li style="margin-left: 15px;">β’ <code>uvx wandb login</code> (opens browser)</li> | |
| </ul> | |
| </div> | |
| </div> | |
| <p style="margin-top: 15px; color: #166534; text-align: center;"> | |
| <strong>Get your API key:</strong> <a href="https://wandb.ai/authorize" target="_blank" style="color: #166534;">wandb.ai/authorize</a> | |
| </p> | |
| </div> | |
| <div class="examples"> | |
| <h3>π¬ Example Queries</h3> | |
| <div class="example"> | |
| "How many openai.chat traces are in my wandb-team/my-project weave project?" | |
| </div> | |
| <div class="example"> | |
| "Show me the latest 10 runs from my experiment and create a report with the results." | |
| </div> | |
| <div class="example"> | |
| "What's the best performing model in my latest sweep? Plot the results." | |
| </div> | |
| </div> | |
| <div style="background: #e0e7ff; padding: 20px; border-radius: 8px; margin: 30px 0; text-align: center;"> | |
| <h3 style="color: #312e81; margin: 0 0 10px 0;">π Want to Run Your Own Instance?</h3> | |
| <p style="color: #4c4999; margin: 10px 0;"> | |
| Install locally or deploy your own server from the open-source repository: | |
| </p> | |
| <a href="https://github.com/wandb/wandb-mcp-server" target="_blank" | |
| style="display: inline-block; background: #4c1d95; color: white; padding: 10px 20px; | |
| border-radius: 6px; text-decoration: none; margin-top: 10px;"> | |
| View on GitHub β | |
| </a> | |
| </div> | |
| <div class="footer"> | |
| <p> | |
| Built with β€οΈ for the <a href="https://modelcontextprotocol.io/" target="_blank">Model Context Protocol</a> community | |
| <br> | |
| <a href="https://github.com/wandb/wandb-mcp-server" target="_blank">Source Code</a> β’ | |
| <a href="https://docs.wandb.ai/" target="_blank">W&B Docs</a> β’ | |
| <a href="https://weave-docs.wandb.ai/" target="_blank">Weave Docs</a> | |
| </p> | |
| </div> | |
| </div> | |
| </body> | |
| </html> | |