Files
Jonas Tüchler 03fb5fc96e Add the WebMCPify agent skill 🤖🤖🤖 (#2400)
* feat(skills): add webmcpify skill

* style(skills): quote webmcpify description
2026-07-23 10:50:25 -07:00

60 lines
2.3 KiB
TypeScript

/**
* React JSX typings for the declarative WebMCP attributes — vendored from
* https://github.com/TueJon/webmcpify
*
* MIT License
* Copyright (c) 2026 Jonas Tüchler
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software — keep this header when
* copying this file into your project.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*
* Full text: https://github.com/TueJon/webmcpify/blob/main/LICENSE
*
* NOTE: this file is a MODULE (`declare module 'react'` requires the `import`)
* — keep it SEPARATE from webmcp.d.ts. Merging it there would add an import to
* that file, turning it into a module and un-globalizing its ambient interfaces
* (empirically verified). Vendor both files side by side in React TSX projects.
*/
import 'react';
declare module 'react' {
interface FormHTMLAttributes<T> {
toolname?: string;
tooldescription?: string;
/**
* Boolean attribute — write `toolautosubmit=""` in TSX. ONLY on pure read
* forms (search/filter/availability); never on state-changing forms.
*/
toolautosubmit?: string;
}
interface InputHTMLAttributes<T> {
toolparamdescription?: string;
}
interface SelectHTMLAttributes<T> {
toolparamdescription?: string;
}
interface TextareaHTMLAttributes<T> {
toolparamdescription?: string;
}
interface FieldsetHTMLAttributes<T> {
toolparamdescription?: string;
}
}