Skip to main content
Glama

@jpisnice/shadcn-ui-mcp-server

by Jpisnice
index.ts3.46 kB
import { handleGetComponent } from './components/get-component.js'; import { handleGetComponentDemo } from './components/get-component-demo.js'; import { handleListComponents } from './components/list-components.js'; import { handleGetComponentMetadata } from './components/get-component-metadata.js'; import { handleGetDirectoryStructure } from './repository/get-directory-structure.js'; import { handleGetBlock } from './blocks/get-block.js'; import { handleListBlocks } from './blocks/list-blocks.js'; import { schema as getComponentSchema } from './components/get-component.js'; import { schema as getComponentDemoSchema } from './components/get-component-demo.js'; import { schema as listComponentsSchema } from './components/list-components.js'; import { schema as getComponentMetadataSchema } from './components/get-component-metadata.js'; import { schema as getDirectoryStructureSchema } from './repository/get-directory-structure.js'; import { schema as getBlockSchema } from './blocks/get-block.js'; import { schema as listBlocksSchema } from './blocks/list-blocks.js'; export const toolHandlers = { get_component: handleGetComponent, get_component_demo: handleGetComponentDemo, list_components: handleListComponents, get_component_metadata: handleGetComponentMetadata, get_directory_structure: handleGetDirectoryStructure, get_block: handleGetBlock, list_blocks: handleListBlocks }; export const toolSchemas = { get_component: getComponentSchema, get_component_demo: getComponentDemoSchema, list_components: listComponentsSchema, get_component_metadata: getComponentMetadataSchema, get_directory_structure: getDirectoryStructureSchema, get_block: getBlockSchema, list_blocks: listBlocksSchema }; export const tools = { 'get_component': { name: 'get_component', description: 'Get the source code for a specific shadcn/ui v4 component', inputSchema: { type: 'object', properties: getComponentSchema, required: ['componentName'] } }, 'get_component_demo': { name: 'get_component_demo', description: 'Get demo code illustrating how a shadcn/ui v4 component should be used', inputSchema: { type: 'object', properties: getComponentDemoSchema, required: ['componentName'] } }, 'list_components': { name: 'list_components', description: 'Get all available shadcn/ui v4 components', inputSchema: { type: 'object', properties: {} } }, 'get_component_metadata': { name: 'get_component_metadata', description: 'Get metadata for a specific shadcn/ui v4 component', inputSchema: { type: 'object', properties: getComponentMetadataSchema, required: ['componentName'] } }, 'get_directory_structure': { name: 'get_directory_structure', description: 'Get the directory structure of the shadcn-ui v4 repository', inputSchema: { type: 'object', properties: getDirectoryStructureSchema } }, 'get_block': { name: 'get_block', description: 'Get source code for a specific shadcn/ui v4 block (e.g., calendar-01, dashboard-01)', inputSchema: { type: 'object', properties: getBlockSchema, required: ['blockName'] } }, 'list_blocks': { name: 'list_blocks', description: 'Get all available shadcn/ui v4 blocks with categorization', inputSchema: { type: 'object', properties: listBlocksSchema } } };

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Jpisnice/shadcn-ui-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server