Skip to main content

Plugin-based FRC documentation agent as an MCP server for WPILib and vendor libraries

Project description

FIRST Agentic CSA

A helpful tool for FIRST Robotics Competition teams! This lets you search through all your FRC documentation (WPILib, REV, CTRE, and more) using simple questions. Instead of clicking through dozens of web pages, just ask a question and get the answer you need.

What Does This Do?

Have you ever spent hours looking for how to configure a SparkMax motor controller? Or trying to find the right way to use a PID controller? This tool helps you find answers fast by searching through all the FRC documentation at once.

Features

  • One Search for Everything: Search WPILib, REV, CTRE, Redux, and PhotonVision docs all at once
  • Ask in Plain English: Type questions like "How do I configure a SparkMax?" instead of searching through menus
  • Filter by Language: Get results for Java, Python, or C++ (whichever you're using)
  • Works with Any Year: Search 2024 docs, 2025 docs, or whatever version you need
  • Works in VS Code: Set it up once and use it right in your coding environment

Installation for VS Code

  1. Install uv if you haven't already. You can install it via:
  2. Open VS Code
  3. Press Ctrl+Shift+P (or Cmd+Shift+P on Mac) to open the command palette
  4. Type "MCP: Add User Configuration" and select it
  5. In the server settings, paste this configuration:
    "frc-docs": {
      "command": "uvx",
      "args": ["first-agentic-csa"]
    }
  1. Save the file and restart VS Code
  2. The MCP server should now be available!

Setting Up GitHub Copilot

To get the best experience with AI coding assistants (like GitHub Copilot or Cursor), add the copilot-instructions.md file to your FRC project. This tells the AI to always search the documentation before answering FRC questions.

  1. Copy the copilot-instructions.md file from this repository to .github directory if it does not already exist in your repo
  2. The AI assistant will automatically use it to provide better, documentation-backed answers!

That's it! Now you can ask questions about FRC documentation right in VS Code, and your AI assistant will automatically search the docs for accurate answers.

Quick Start

Once installed, you can search for documentation by asking questions like:

  • "How do I configure a SparkMax motor controller?"
  • "What's the best way to use PID control?"
  • "Show me examples of command-based programming"

The tool will search through all the FRC documentation and give you the most relevant results.

What Documentation Can I Search?

This tool searches through documentation from:

  • WPILib - The main FRC programming library (docs.wpilib.org)
  • REV Robotics - SparkMax and other REV products (docs.revrobotics.com)
  • CTRE Phoenix - TalonFX and other CTRE products (v6.docs.ctr-electronics.com)
  • Redux Robotics - Redux products (docs.reduxrobotics.com)
  • PhotonVision - Computer vision library (docs.photonvision.org)

You can search all of them at once, or pick specific ones to search.

Customization (Optional)

If you want to change settings, you can edit the config.json file. This is totally optional - the default settings work great for most teams.

You can:

  • Turn off certain documentation sources if you don't use them
  • Set your default programming language
  • Change how many results you get back

Most teams don't need to change anything - the defaults work well!

Troubleshooting

"Command not found" or Server won't start

Make sure you:

  1. Have Python 3.11 or newer installed
  2. Restarted VS Code after adding the server
  3. Checked that the MCP extension is installed and enabled
  4. Have uvx installed (it comes with uv package manager, or install via pip install uv)

Still having issues?

  1. Open the command palette (Ctrl+Shift+P)
  2. Type "MCP: Remove Server" and select it
  3. Choose frc-docs (or whatever you named it)
  4. Then add it again following the installation steps above

Need Help?

If you're stuck or have questions:

  1. Make sure you restarted VS Code after adding the server
  2. Check the troubleshooting section above
  3. Verify that Python 3.11 or newer is installed and working

For Advanced Users

If you want to contribute to this project or add support for new documentation sources, check out the technical documentation in the codebase. The project is open source and welcomes contributions!

License

This project is open source and free to use. See the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

first_agentic_csa-0.6.0.tar.gz (2.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

first_agentic_csa-0.6.0-py3-none-any.whl (723.8 kB view details)

Uploaded Python 3

File details

Details for the file first_agentic_csa-0.6.0.tar.gz.

File metadata

  • Download URL: first_agentic_csa-0.6.0.tar.gz
  • Upload date:
  • Size: 2.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.6 {"installer":{"name":"uv","version":"0.10.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for first_agentic_csa-0.6.0.tar.gz
Algorithm Hash digest
SHA256 34f0a4d916cddbdfd994e8b947b3a7a83030db94db85bedc0e8c5ba06c1ec92f
MD5 01261b1107793264cceaf7fad4e704d2
BLAKE2b-256 ce45e6922347c99f215a235e13f594612797e89091becefd2801755a1e871322

See more details on using hashes here.

File details

Details for the file first_agentic_csa-0.6.0-py3-none-any.whl.

File metadata

  • Download URL: first_agentic_csa-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 723.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.6 {"installer":{"name":"uv","version":"0.10.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for first_agentic_csa-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 896fb2f4b1d56b4ac929f9aa10ef42449c5f2bb7049c24280da1fe383f312c66
MD5 a16e492c1770b175bf80ecf3fd4e071c
BLAKE2b-256 8b4b567f8341cb5ae69a900e3c4366ab31cbe5a8347d2dbcb03476c8611f2ecd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page