# `TMCP002` Reject invalid specifications Verify the server refuses to start with invalid specification files :::{dropdown} Is a test for :open: :icon: check-circle-fill :color: primary [`MCP001` Start server with specifications](/requirements/MCP001) ::: :::{dropdown} Source :icon: file-code :color: info __Source file__: [`specs/mcp/test_01.yaml`](https://github.com/agagniere/speky/blob/master/specs/mcp/test_01.yaml) __Loaded from__: [`speky_mcp`](https://github.com/agagniere/speky/blob/master/specs/mcp/mcp.toml) ::: ## Initial state The expected state is the final state of [`TMCP001` Start the MCP server](/tests/TMCP001) ## Procedure ### Step 1 Create an invalid specification ```console $ cat req_unknown_ref.yaml ``` ```yaml kind: requirements category: functional requirements: - id: RF01 short: Lorem Ipsum long: The `RF00` requirement doesn't exist tags: [foo] ref: [RF00] ``` ### Step 2 Attempt to start MCP server with it ```console $ speky_mcp req_unknown_ref.yaml speky_mcp INFO Loading req_unknown_ref.yaml speky_mcp CRITICAL 'Requirement RF00, referred from RF01, does not exist' ``` ### Step 3 Verify the server exited with an error code ```console $ echo $? 1 ```