docs: add customSchemas documentation and clarify domain uppercase constraint#1606
docs: add customSchemas documentation and clarify domain uppercase constraint#1606
Conversation
Co-authored-by: lpcox <15877973+lpcox@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
This documentation-only PR adds two previously undocumented configuration behaviors to the README: the customSchemas top-level field for defining custom server types, and the uppercase-only constraint on variable expressions in the domain gateway field.
Changes:
- Added a new
#### Custom Schemassubsection documenting thecustomSchemastop-level config field, including a JSON example and validation rules (reserved type blocking, HTTPS-only schema URLs, helpful error for unregistered types). - Added a clarifying note to the
domainfield that variable expressions only accept uppercase names (${MY_VAR}), reflecting the regex pattern^\$\{[A-Z_][A-Z0-9_]*\}$.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| } | ||
| ``` | ||
|
|
||
| **Validation Rules for `customSchemas`:** |
There was a problem hiding this comment.
The new "Validation Rules for customSchemas:" at line 234 sits immediately above the pre-existing "Validation Rules:" at line 239, which can be confusing to readers since both are bold-text headers about validation rules. Consider renaming one of them to make the distinction clearer — for example, changing line 234 to something like "customSchemas constraints:" or moving the customSchemas validation rules into the existing "Validation Rules" section as a sub-bullet.
| **Validation Rules for `customSchemas`:** | |
| **`customSchemas` constraints:** |
Two undocumented behaviors in the JSON stdin config format that would leave users confused or unable to discover features.
Changes
customSchemasfield: Added a new subsection under Server Configuration Fields documenting the top-levelcustomSchemasmap, which allows defining custom server types beyondstdio/http. Includes JSON example and validation rules (reserved type names blocked, HTTPS schema URLs required).{ "customSchemas": { "myCustomType": "https://example.com/schemas/my-custom-type.json" }, "mcpServers": { "myServer": { "type": "myCustomType" } } }domainuppercase constraint: Added a note to thedomainfield description clarifying that variable expressions only accept uppercase names —${MY_VAR}is valid,${my_var}is silently rejected with a validation error. Reflects the actual pattern^\$\{[A-Z_][A-Z0-9_]*\}$.Warning
Firewall rules blocked me from connecting to one or more addresses (expand for details)
I tried to connect to the following addresses, but was blocked by firewall rules:
example.com/tmp/go-build1462136783/b298/launcher.test /tmp/go-build1462136783/b298/launcher.test -test.testlogfile=/tmp/go-build1462136783/b298/testlog.txt -test.paniconexit0 -test.timeout=10m0s conf�� 64/src/runtime/cgo transform/transform.go x_amd64/compile(dns block)invalid-host-that-does-not-exist-12345.com/tmp/go-build1462136783/b280/config.test /tmp/go-build1462136783/b280/config.test -test.testlogfile=/tmp/go-build1462136783/b280/testlog.txt -test.paniconexit0 -test.timeout=10m0s ortc�� 64/src/runtime/cgo lkem/cast.go x_amd64/compile user.email(dns block)nonexistent.local/tmp/go-build1462136783/b298/launcher.test /tmp/go-build1462136783/b298/launcher.test -test.testlogfile=/tmp/go-build1462136783/b298/testlog.txt -test.paniconexit0 -test.timeout=10m0s conf�� 64/src/runtime/cgo transform/transform.go x_amd64/compile(dns block)slow.example.com/tmp/go-build1462136783/b298/launcher.test /tmp/go-build1462136783/b298/launcher.test -test.testlogfile=/tmp/go-build1462136783/b298/testlog.txt -test.paniconexit0 -test.timeout=10m0s conf�� 64/src/runtime/cgo transform/transform.go x_amd64/compile(dns block)this-host-does-not-exist-12345.com/tmp/go-build1462136783/b307/mcp.test /tmp/go-build1462136783/b307/mcp.test -test.testlogfile=/tmp/go-build1462136783/b307/testlog.txt -test.paniconexit0 -test.timeout=10m0s conf�� 64/src/runtime/cgo dna/go118.go x_amd64/compile(dns block)If you need me to access, download, or install something from one of these locations, you can either:
🔒 GitHub Advanced Security automatically protects Copilot coding agent pull requests. You can protect all pull requests by enabling Advanced Security for your repositories. Learn more about Advanced Security.