UIKit MCP Server
Provides tools for managing and generating Flutter UI templates, assisting developers in building and structuring user interfaces for Flutter applications.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@UIKit MCP Servershow me a login screen template for Flutter"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
UIKit MCP Server
This project is UIKits MCP Server for Flutter UI template.
Project Setup
To set up the project, follow these steps:
Clone the repository:
git clone https://github.com/anoochit/uikits_mcp_server.git cd uikits_mcp_serverCreate a virtual environment and install dependencies using
uv:uv venv uv sync
Related MCP server: MCP Magic UI
Install
Install a MCP server in MCP client applications. FastMCP currently supports the following clients:
Claude Code: Installs via Claude Code’s built-in MCP management system
fastmcp install claude-code main.pyClaude Desktop: Installs via direct configuration file modification
fastmcp install claude-desktop main.pyCursor: Installs via deeplink that opens Cursor for user confirmation
fastmcp install cursor main.pyMCP JSON: Generates standard MCP JSON configuration for manual use
fastmcp install mcp-json main.py
Available Tools
2 toolsget_template_codeA
Retrieve Dart source code for a specific Flutter template by ID.
The template ID must match one from the templates manifest. The source code is fetched directly from the GitHub repository using the file path defined in the manifest.
| Name | Required | Description | Default |
|---|---|---|---|
| template_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that the tool fetches source code from GitHub using a file path from a manifest, which adds useful behavioral context about the data source and process. However, it doesn't mention potential limitations like rate limits, authentication needs, error conditions, or what happens if the ID doesn't exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is perfectly concise with three sentences that each earn their place: stating the purpose, specifying ID requirements, and explaining the GitHub fetching mechanism. It's front-loaded with the core purpose and wastes no words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (fetching code from GitHub), no annotations, and the presence of an output schema (which handles return values), the description is reasonably complete. It covers purpose, parameter semantics, and behavioral context about the GitHub source. The main gap is lack of error/limitation information, but the output schema helps compensate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage for the single parameter 'template_id'. The description compensates by explaining that 'The template ID must match one from the templates manifest,' providing crucial semantic context about where valid IDs come from and their validation requirement. This significantly adds value beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Retrieve Dart source code'), the resource ('for a specific Flutter template by ID'), and distinguishes from the sibling tool 'list_templates' by focusing on retrieving source code rather than listing templates. It provides a complete purpose statement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use this tool: when you need the source code for a specific template identified by ID. It implicitly distinguishes from 'list_templates' (which lists templates rather than retrieving code) but doesn't explicitly state when NOT to use it or mention alternative tools beyond the sibling.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_templatesA
Fetch the latest list of Flutter templates from the GitHub repository.
This tool retrieves the templates manifest file and returns a human-readable list including template ID, title, and description.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that the tool retrieves data from a GitHub repository and returns a human-readable list, which is useful behavioral context. However, it lacks details on potential errors, rate limits, authentication needs, or whether the operation is read-only or has side effects, leaving gaps in transparency for a tool interacting with an external source.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized with two sentences that are front-loaded and efficient. The first sentence states the core purpose, and the second adds details about the retrieval process and output format, with no wasted words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (0 parameters, no annotations, but with an output schema), the description is mostly complete. It explains what the tool does and what it returns, and since an output schema exists, it need not detail return values. However, it could improve by addressing potential behavioral aspects like error handling or data freshness, given the external GitHub source.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0 parameters with 100% coverage, so the schema fully documents the absence of parameters. The description does not need to add parameter semantics, as there are none to explain. A baseline of 4 is appropriate since the description does not contradict or add unnecessary information about parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('fetch', 'retrieves') and resource ('list of Flutter templates from the GitHub repository', 'templates manifest file'), distinguishing it from the sibling tool 'get_template_code' which presumably retrieves code rather than a list. It explicitly identifies what is being retrieved and from where.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by specifying that it fetches 'the latest list' and returns a 'human-readable list', suggesting it's for obtaining an overview. However, it does not explicitly state when to use this tool versus the sibling 'get_template_code' or provide any exclusions or alternatives, leaving some guidance implicit rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
2 tool updates
v0.1.0- First observed
get_template_code - First observed
list_templates
TDQS
The two tools have clearly distinct purposes: one retrieves a list of templates (list_templates) and the other fetches source code for a specific template (get_template_code). There is no overlap in functionality, making it easy for an agent to choose the correct tool based on the task.
Both tools follow a consistent verb_noun naming pattern (list_templates and get_template_code), using snake_case throughout. The verbs 'list' and 'get' are standard and appropriate for their respective actions, ensuring predictability and readability.
With only two tools, the server feels thin for its apparent scope of managing Flutter templates. A typical MCP server in this domain would benefit from additional operations like creating, updating, or deleting templates, or at least more query options, to provide a more complete surface for agent workflows.
The tool set is severely incomplete for a Flutter template management server. While it covers listing and retrieving templates, there are significant gaps: no ability to create, update, delete, or search templates, and no operations for template validation or customization. This will likely cause agent failures when more complex tasks are required.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
A Model Context Protocol (MCP) server for Selise Blocks Cloud integration
MCP server for Appcircle mobile CI/CD platform.
MCP server for Product Management
The Mercado Pago MCP Server implements the Model Context Protocol to provide AI agents and LLMs with access to Mercado Pago's APIs and tools within compatible development environments. It acts as an intermediary that translates Mercado Pago resources into executable functions (tools) that AI applications can invoke to perform actions and automate flows. The server simplifies integration, enables using documentation to implement or improve code, and optimizes operations through natural language interactions without manual implementations.
Related MCP Servers
- AlicenseCqualityDmaintenanceA Model Context Protocol server that enables AI agents to generate, fetch, and manage UI components through natural language interactions.3287ISC
- FlicenseDqualityDmaintenanceA Model Context Protocol server that provides access to Magic UI components, allowing AI assistants and other MCP clients to discover and use UI components from the Magic UI design system.214-
- FlicenseBqualityCmaintenanceMCP server that fetches Figma data (file trees, nodes, images, components, styles, variables) and serves as a foundation for Flutter code generation.13-
- FlicenseAqualityDmaintenanceAn MCP server that scaffolds Flutter projects from a custom clean-architecture Bitbucket template, enabling AI agents to create, list, and inspect Flutter projects via natural language.3-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/anoochit/uikits_mcp_server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server