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
2 changes: 1 addition & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -138,7 +138,7 @@ Most of this release is robustness work from [doc/ROBUSTNESS_REVIEW.md](doc/ROBU

### Documentation
- `doc/STANDALONE.md` registers the server with Claude Code correctly: `claude mcp add --scope user wpilog -- ~/.wpilog-mcp/bin/wpilog-mcp`, or a project `.mcp.json` written with `${HOME}`. It used to say `~/.claude/settings.json`, which Claude Code does not read for MCP servers.
- `README.md` is an overview with an index of the documentation: what the server does, which install to choose, and where each topic is covered. The reference material it carried moved to the documents that own it: data types and the REV log details to `doc/TOOLS.md`, and the rules for running the extension beside the standalone install to the extension's README, which also shows its icon.
- `README.md` is an overview with an index of the documentation: what the server does, which install to choose, and where each topic is covered. The reference material it carried moved to the documents that own it: data types and the REV log details to `doc/TOOLS.md`, and the rules for running the extension beside the standalone install to the extension's README, which also shows its icon. Its example questions run from broad to technical, in quoted italics, and the note after them says that the depth of the analysis depends on the model and on the context it can reach beyond the log, above all the robot code that writes the entries.
- The icon in the header of `README.md` and of the extension's README sits midway between the top of its cell and the title (it sat high), and the icon, title, and tagline are each centered by their own `align="center"`, so a viewer whose stylesheet left-aligns table cells no longer shows the icon flush left. The intro text beside the icon is vertically centered in the row, so it no longer clusters at the top with a wide margin below when the icon column is the taller one.
- `doc/TOOLS.md` and `README.md` were matched to the current code, including the examples for `compare_matches`, `can_health`, `get_ds_timeline`, and `power_analysis`.
- `doc/TOOL_RESPONSES.md` is generated from real logs by a checked-in harness, with at least one call for every tool, grouped as `get_server_guide` and `doc/TOOLS.md` group the tools.
Expand Down
36 changes: 12 additions & 24 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
</td>
<td valign="middle">

Why did the robot die with 30 seconds left? Why did auto work in practice but not at competition? wpilog-mcp lets an AI assistant read your robot's telemetry logs, so you can ask questions like these in plain English and get answers based on the data.
*"Why did the robot die with 30 seconds left?"* *"Why did auto work in practice but not at competition?"* wpilog-mcp lets an AI assistant read your robot's telemetry logs, so you can ask questions like these in plain English and get answers based on the data.

It reads WPILib `.wpilog` files with WPILib's own log reader, and REV `.revlog` files recorded alongside them. It was built by [FRC Team 2363 Triple Helix](https://team2363.org).

Expand All @@ -20,31 +20,19 @@ It reads WPILib `.wpilog` files with WPILib's own log reader, and REV `.revlog`

## Example Questions

```
Please show me our logs from the Chesapeake District event
```
Start broad. The model finds the logs and the entries, and you can get as specific as the data allows:

```
We lost Q42. Can you look at the log and help us understand what happened?
```
- *"Show me our logs from the Chesapeake District event."*
- *"We lost Q42. Look at the log and help us understand what happened."*
- *"What are the scoring rules for this year's game?"*
- *"Pull our match results from The Blue Alliance and look for trends across the event."*
- *"Walk me through the power delivery during teleop in Q42. Were there any brownout concerns?"*
- *"How did our four swerve modules compare in that match? Is one of them lagging the others?"*
- *"Did the vision corrections get larger late in the match? Line up the pose jumps against the time the arm was extended."*
- *"The intake stalled twice. Find every moment its current was above 40 A while its velocity was zero, and show me the CAN bus health around each one."*
- *"Using the REV log, align the SPARK MAX currents with the battery voltage and tell me whether the climber or the drivetrain pulled the voltage down."*

```
Please walk me through the power delivery during teleop. Were there any brownout concerns?
```

```
How did our four swerve modules compare in that match?
```

```
What are the scoring rules for this year's game?
```

```
Can you pull our match results from The Blue Alliance and look for trends across the event?
```

How much the analysis finds depends on the AI model you use. wpilog-mcp provides the tools and the data; the model does the reasoning.
> **Note:** The depth and quality of the analysis depend on the AI model you use. wpilog-mcp provides the tools and the data; the model does the reasoning, and a more capable model produces a deeper and more careful analysis. They depend just as much on the context the model can reach beyond the log. A log records names and numbers, not what they mean: with your robot project open, the model can read the code that writes each entry and learn which mechanism it belongs to, what its units are, and whether it is a measurement or a command. Match results from The Blue Alliance and the season's game rules add more. The questions above are what a capable model with that context can answer. Without it, expect the model to ask you to confirm which entries mean what.

## Installation

Expand Down
Loading