Skip to main content
Glama
guru-prasath-j

flutter-ios-bridge-mcp

ios_set_info_plist_value

Set or modify a key in the iOS Info.plist, choosing value types like string, bool, int, array, dict, or JSON. Add permissions or app configuration from your Flutter workflow.

Instructions

Set a key in ios/Runner/Info.plist. value_type: auto|string|bool|int|real|array|dict|json. Example: key='NSCameraUsageDescription', value='Used to scan documents'.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
keyYes
valueYes
value_typeNoauto
project_pathNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description must carry the full burden of behavioral disclosure. 'Set' implies a write, but there is no mention of overwriting existing keys, whether the file must already exist, potential side effects, or reversibility. The value_type list is useful but does not disclose operational consequences.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact, front-loaded with the core action, and every sentence contributes: the action, the value_type options, and a concrete example. There is no filler or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 4 parameters, no annotations, and no output schema, this description is not fully complete. It leaves project_path, value serialization details, and overwrite/merge behavior undefined, so an agent cannot reliably handle non-trivial calls without additional assumptions.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It lists value_type options and gives one clear example, but it does not explain project_path, what 'auto' means, or how array/dict/json values should be formatted. The coverage is only partial.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'Set a key in ios/Runner/Info.plist.' This clearly distinguishes it from sibling tools like ios_get_info_plist and ios_remove_info_plist_key by action alone, though it does not explicitly name those alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The usage context is implied: use this when you need to set an Info.plist key. However, it never says when not to use it or points to get/remove alternatives, so the guidance is inferred rather than explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.