MCPcopy Create free account
hub / github.com/FastLED/FastLED / list_tools

Function list_tools

mcp_server.py:106–540  ·  view source on GitHub ↗

List available tools for the FastLED project.

()

Source from the content-addressed store, hash-verified

104
105@server.list_tools()
106async def list_tools() -> list[Tool]:
107 """List available tools for the FastLED project."""
108 return [
109 Tool(
110 name="run_tests",
111 description="Run FastLED tests with various options",
112 inputSchema={
113 "type": "object",
114 "properties": {
115 "test_type": {
116 "type": "string",
117 "enum": ["all", "cpp", "specific"],
118 "description": "Type of tests to run",
119 "default": "all",
120 },
121 "specific_test": {
122 "type": "string",
123 "description": "Name of specific C++ test to run (without 'test_' prefix, e.g. 'algorithm' for test_algorithm.cpp)",
124 },
125 "test_case": {
126 "type": "string",
127 "description": "Specific TEST_CASE name to run within a test file (requires doctest filtering)",
128 },
129 "use_clang": {
130 "type": "boolean",
131 "description": "Use Clang compiler instead of default",
132 "default": False,
133 },
134 "clean": {
135 "type": "boolean",
136 "description": "Clean build before compiling",
137 "default": False,
138 },
139 "verbose": {
140 "type": "boolean",
141 "description": "Enable verbose output showing all test details",
142 "default": False,
143 },
144 },
145 "required": ["test_type"],
146 },
147 ),
148 Tool(
149 name="list_test_cases",
150 description="List TEST_CASEs available in FastLED test files",
151 inputSchema={
152 "type": "object",
153 "properties": {
154 "test_file": {
155 "type": "string",
156 "description": "Specific test file to analyze (without 'test_' prefix and '.cpp' extension, e.g. 'algorithm')",
157 },
158 "search_pattern": {
159 "type": "string",
160 "description": "Search pattern to filter TEST_CASE names",
161 },
162 },
163 },

Callers

nothing calls this directly

Calls 1

ToolClass · 0.85

Tested by

no test coverage detected