VisioForge SDK Assistant
Server Details
VisioForge .NET SDK assistant: API reference, code examples and deployment guides.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 14 tools
Most tools target a distinct artifact (class, method, enum, media block, pipeline, deployment guide, code example), and the browse-vs-search split (list_* vs search_api) is clear. There is some intentional overlap: get_class_info explicitly also covers media blocks, and get_class_info already returns method lists while get_method_signature drills into one method, so an agent may occasionally hesitate between the summary and detail tools.
Every tool follows a strict snake_case verb_noun pattern with a small, predictable verb set (get_, list_, search_). The verb choice also signals behavior consistently: list_* enumerates/filters, get_* retrieves detail, search_* does ranked lookup.
14 tools sit squarely in the well-scoped range for a documentation/assistant server. Each tool covers a distinct facet of SDK reference lookup or deployment guidance, with no filler entries.
The surface covers the full discovery-to-implementation path: namespace/class browsing, class and method detail, enum values, media block and pipeline templates, code examples, plus deployment, NuGet, and platform config guidance. Minor gaps exist around retrieving individual property/event detail directly (only reachable via get_class_info) and no explicit way to list or search code examples by keyword.
Available Tools
14 toolsget_class_infoAInspect
Get detailed information about any VisioForge SDK class, including its full list of properties, methods, events, constructors, base class, interfaces, and documentation. Works for both core SDK classes and media blocks.
| Name | Required | Description | Default |
|---|---|---|---|
| className | Yes | Class name (e.g., 'VideoCaptureCoreX', 'H264EncoderSettings', 'MP4SinkSettings'). Can be short name or fully qualified. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are supplied, so the description carries the full behavioral burden. It does well on scope of the response payload by listing the returned sections, but says nothing about what happens with an unknown or ambiguous short class name, nor about response size for very large classes.
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?
Two sentences, front-loaded with the action and the resource, with no filler or repetition of the tool name. The long enumeration of returned members is dense but each item is informative, so it earns its space.
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?
For a single-parameter, no-output-schema lookup tool, the description supplies the one thing the schema cannot: what the returned detail consists of. It is only slightly short of complete because it leaves error behavior and the relationship to the discovery tools (list_sdk_classes, search_api) unstated.
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?
Schema description coverage is 100%, so the className parameter is already documented with examples and the short-name-or-fully-qualified note. The description adds only the notion that the class may belong to either the core SDK or media blocks, which is marginal beyond the 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?
Uses a specific verb and resource ('Get detailed information about any VisioForge SDK class') and enumerates exactly what comes back: properties, methods, events, constructors, base class, interfaces, documentation. It partially differentiates from siblings by claiming coverage of 'both core SDK classes and media blocks', but that overlap with get_media_block_info makes the boundary fuzzier rather than clearer.
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?
Usage is only implied: an agent can infer this is the lookup to call once it knows a class name. There is no explicit when-to-use or when-not-to-use guidance, and nothing tells the agent whether to prefer get_media_block_info for media blocks or list_sdk_classes first to discover names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_code_exampleAInspect
Get a code example for a common VisioForge SDK scenario. Returns complete, working C# code snippets that demonstrate how to use the SDK for tasks like video capture, RTSP streaming, media playback, and more.
| Name | Required | Description | Default |
|---|---|---|---|
| scenario | Yes | Scenario name. Available: 'webcam-capture' (capture from webcam to MP4), 'rtsp-playback' (play RTSP stream), 'rtsp-to-mp4' (record RTSP to MP4 file), 'webcam-to-rtmp' (stream webcam to RTMP/YouTube/Facebook), 'file-playback' (play a media file), 'video-editing' (basic video editing), 'screen-capture' (capture screen to file), 'media-info' (read media file information), 'pipeline-basic' (build a basic media block pipeline), 'virtual-source' (generate test video/audio), 'hls-streaming' (stream to HLS), 'audio-capture' (capture audio only) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It discloses that the tool returns complete, working C# code snippets, which is useful return-behavior context, but it does not state that the operation is read-only, describe error behavior, or mention any limitations such as static documentation retrieval.
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 two sentences, front-loaded with the core action and resource. Every sentence contributes useful context about the return type and supported scenario examples, with no unnecessary wording.
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?
The tool is simple: one required scenario parameter with a fully documented schema, no annotations, and no output schema. The description explains the return value as complete C# code snippets and gives example task categories, which is largely sufficient. Minor gaps remain around exact return structure and any limitations on scenario coverage.
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?
Schema description coverage is 100%, and the scenario parameter already enumerates all available scenario names with parenthetical explanations. The description mentions task examples such as video capture and RTSP streaming, but adds no syntax, format, or selection guidance beyond what the schema already provides.
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 states a specific verb and resource: get a code example for a VisioForge SDK scenario. It also clarifies that the output is complete, working C# snippets for tasks like video capture, RTSP streaming, and media playback. It is clear what the tool does, but it does not explicitly differentiate itself from siblings such as get_pipeline_template or get_method_signature.
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?
Usage is implied by 'for a common VisioForge SDK scenario' and the listed task examples. However, there is no explicit guidance on when to use this tool versus alternatives like get_class_info, get_method_signature, or get_pipeline_template, and no exclusions are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_deployment_guideAInspect
Get the complete deployment guide for a specific scenario. Returns detailed instructions, code snippets, NuGet packages, and platform-specific notes.
| Name | Required | Description | Default |
|---|---|---|---|
| guideId | Yes | Guide ID from list_deployment_guides (e.g., 'windows-desktop', 'maui-mobile') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. 'Get' implies a read-only operation and the description usefully discloses the shape of the payload, but it says nothing about behavior for an invalid or unknown guideId, output size, or whether the guide is static content versus generated.
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?
Two tight sentences with zero filler. The primary action is front-loaded and the return-content detail follows immediately, so an agent gets the essential facts in one pass.
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?
This is a simple single-parameter read tool with no output schema, and the description compensates by enumerating what comes back (instructions, snippets, packages, platform notes). Only minor gaps remain around failure behavior for an unknown ID.
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?
Schema coverage is 100% and the guideId property already carries concrete examples ('windows-desktop', 'maui-mobile') plus its source list. The description adds only the fuzzy notion of 'scenario', which is roughly equivalent to what the schema states, so it neither compensates for gaps nor adds new meaning.
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?
Uses a specific verb and resource ('Get the complete deployment guide') scoped to 'a specific scenario', and enumerates what the guide contains (instructions, code snippets, NuGet packages, platform notes). It is clearly distinct from the list_deployment_guides sibling by the singular-by-ID framing, though the description never names that sibling explicitly.
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?
Usage is only implied: you fetch one guide for a scenario you already know. The prerequisite that the ID comes from list_deployment_guides lives in the schema's guideId description, not in the tool description itself, and there is no guidance on what to do when the scenario is unknown.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_enum_valuesAInspect
Get all values of a VisioForge SDK enum type with descriptions. Useful for understanding available options for configuration properties (e.g., MediaBlockType, video codecs, audio formats, pixel formats).
| Name | Required | Description | Default |
|---|---|---|---|
| filter | No | Optional text filter to show only matching enum values (e.g., 'H264' to find H264-related values) | |
| enumName | Yes | Enum name (e.g., 'MediaBlockType', 'MediaBlockPadMediaType', 'MediaBlockPadDirection'). Can be short name or fully qualified. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are supplied, so the description carries the full behavioral burden. It conveys the return shape at a high level ('all values ... with descriptions') and implies a read-only lookup, but says nothing about what happens with an invalid or abbreviated enum name, whether matching is case-sensitive, or how large enum sets are returned. Adequate but not rich.
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?
Two sentences, front-loaded with the core action and followed by the use case and examples. Every clause earns its place with no redundancy or filler.
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?
For a simple two-parameter read-only lookup with no output schema, the definition covers the essentials: what it returns, what it is for, and which domains it applies to. The remaining gaps (error behavior on unknown enum names, result formatting) are modest given the tool's simplicity.
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?
Schema description coverage is 100%, so both parameters are already documented, including the filter example ('H264') and the short/full-name flexibility for enumName. The description adds no further parameter meaning beyond the schema, which is the expected baseline of 3.
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 opens with a specific verb and resource: 'Get all values of a VisioForge SDK enum type with descriptions.' It is immediately distinguishable from siblings such as get_class_info, search_api, and list_sdk_classes, which cover different lookup intents.
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?
It states the use case clearly ('understanding available options for configuration properties') and gives concrete examples of when this applies, such as MediaBlockType, codecs, and pixel formats. It does not name an alternative tool or say what to use instead when the enum name is unknown (e.g., search_api), leaving a small gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_media_block_infoAInspect
Get detailed information about a specific media block including its properties, methods, events, input/output pads, constructor parameters, and documentation. Use this to understand how to configure and use a specific media block in a pipeline.
| Name | Required | Description | Default |
|---|---|---|---|
| blockName | Yes | Name of the media block (e.g., 'H264EncoderBlock', 'RTSPSourceBlock', 'MP4SinkBlock'). Can be the short name or full qualified name. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It implies a read-only metadata lookup and usefully enumerates the returned sections, but says nothing about behavior for an unknown or misspelled block name (error vs empty result), whether name matching is exact or fuzzy, or result size.
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?
Two sentences, front-loaded with the verb and the returned payload, with no filler. The second sentence is short and adds intent rather than repeating the first.
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?
For a single-parameter, no-output-schema lookup, the enumerated return content does most of the work an output schema would do. The main remaining gap is sibling disambiguation against get_class_info and list_media_blocks.
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?
Schema coverage is 100% and the blockName parameter is already thoroughly documented with concrete examples and the short-name vs fully-qualified-name note. The description adds no meaning beyond the schema, which is the baseline expectation here.
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 uses a specific verb ('Get detailed information') with a clearly scoped resource ('a specific media block') and enumerates exactly what is returned: properties, methods, events, pads, constructor parameters, and documentation. It does not explicitly contrast itself with the closest sibling, get_class_info, so the distinction between a media block and an SDK class is left to inference.
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?
'Use this to understand how to configure and use a specific media block in a pipeline' gives a real usage context, but there are no exclusions or named alternatives (list_media_blocks for discovery, get_class_info for non-block classes), so an agent must infer the routing itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_method_signatureAInspect
Get the detailed signature and documentation for a specific method on a class. Useful when you need to understand a method's parameters, return type, and behavior.
| Name | Required | Description | Default |
|---|---|---|---|
| className | Yes | The class name that contains the method | |
| methodName | Yes | The method name to look up |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are supplied, so the description carries the full burden. It signals the tool is a read-only lookup that returns signature, parameter, return-type and documentation data, which is useful, but it says nothing about behavior when the class or method is not found, whether the class name must be fully qualified, or what the returned payload looks like.
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?
Two sentences, front-loaded with the purpose and followed by the use case, with no filler. Slightly more precision on the class-name format would have earned the same space more value, but nothing is wasted.
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?
This is a simple two-parameter read tool with no output schema, and the description adequately conveys what comes back (signature, documentation, parameters, return type). The main residual gap is the expected class-name format and not-found behavior, which are minor for a lookup of this simplicity.
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?
Schema coverage is 100% and both parameters are documented in the schema, so the baseline of 3 applies. The description adds no format detail beyond the schema — notably it does not say whether className should be a fully qualified name or a namespace plus class, which is the one ambiguity an agent would hit here.
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 uses a specific verb and resource ("Get the detailed signature and documentation for a specific method on a class") and scopes it to a single method, which separates it reasonably from get_class_info and the list_* siblings. It stops short of explicitly naming a sibling it is not, so it falls just below the top mark.
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?
"Useful when you need to understand a method's parameters, return type, and behavior" implies a use case but gives no when-not-to-use guidance and no pointer to alternatives such as get_class_info or get_code_example. An agent must infer the routing decision from sibling names alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_nuget_packages_snippetBInspect
Get .csproj snippet with required NuGet packages for a specific deployment scenario. Returns XML snippet ready to copy-paste into your project file.
| Name | Required | Description | Default |
|---|---|---|---|
| sdkType | Yes | SDK type, required. VideoCapture for camera/screen/IP-camera recording, MediaPlayer for playback, VideoEdit for timeline editing — those are the three products. MediaBlocks is the low-level pipeline layer, for custom source-to-encoder graphs only; do not pick it for an ordinary capture, playback or editing app. | |
| platform | Yes | Target platform, required. One of: Windows, Linux, macOS, Android, iOS, macCatalyst. | |
| projectType | Yes | Project type, required. One of: WPF, WinForms, WinUI, Console, MAUI, Avalonia, Uno, Blazor. MAUI, Avalonia and Uno are treated as multi-target, so the native redists are emitted under a target-framework condition; the rest get them unconditionally. | |
| includeOptional | No | Include optional packages? (e.g., OpenCV, AWS, specialized camera support) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are supplied, so the description carries the full burden. It does disclose the key behavior an agent needs — the return is an XML snippet ready to paste into a project file — which clarifies output format in the absence of an output schema. It says nothing about whether existing project content is overwritten, framework-version assumptions, or how the snippet differs across the multi-target cases the schema mentions.
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?
Two short sentences with the purpose front-loaded and the output format second. Nothing is wasted. The only weakness is that the second sentence could have been spent on routing guidance instead of restating the return type, which is implied by the first.
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?
For a four-parameter read tool with full schema coverage, the definition covers what is produced and in what form. What is missing is sibling routing in a crowded family of get_* configuration and guide tools, and any note on how the snippet adapts to the multi-target project types. It is adequate but leaves real gaps for an agent choosing among thirteen related tools.
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?
Schema description coverage is 100% and the sdkType/platform/projectType meanings, including the MediaBlocks caveat and multi-target behavior, are fully documented in the schema. The description adds only the notion of a 'deployment scenario', which loosely ties the three required parameters together but contributes no new format or constraint detail. Baseline 3 is appropriate.
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?
States a specific verb and resource: returns a .csproj XML snippet with the required NuGet packages for a given deployment scenario. The agent can tell this is a project-file configuration generator rather than a code sample or guide. However, it does not distinguish itself from near neighbours like get_platform_specific_config, get_deployment_guide or get_pipeline_template.
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 phrase 'for a specific deployment scenario' only implies when to use it; there is no explicit when/when-not statement and no named alternative. With four closely related configuration siblings, an agent has no guidance on whether this or get_platform_specific_config is the right call when both could plausibly answer.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_pipeline_templateBInspect
Get a media block pipeline template for a specific use case. Returns the list of required blocks and how to connect them, along with C# code to build the pipeline.
| Name | Required | Description | Default |
|---|---|---|---|
| useCase | Yes | Use case description. Available templates: 'rtsp-to-mp4' (record network camera to file), 'webcam-preview' (show webcam on screen), 'webcam-to-rtmp' (stream webcam live), 'file-transcode' (convert video file format), 'screen-to-hls' (screen capture to HLS stream), 'multi-source-mix' (mix multiple video sources), 'audio-only-capture' (record audio to file), 'ndi-output' (stream via NDI protocol) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are supplied, so the description carries the full burden. It does disclose the return payload (block list, connection wiring, C# build code), which is the key behavioral fact for a lookup tool, but says nothing about whether the template is static, what happens with an unrecognized use case, or that the operation is read-only and side-effect free.
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?
Two tight sentences with no filler: purpose first, return shape second. Every clause earns its place, and the return-value sentence is especially valuable given there is no output schema.
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?
With no output schema, the description compensates by describing what comes back, and the single parameter is fully documented in the schema. Only routing guidance relative to sibling tools is missing, which is a minor gap for a simple one-parameter lookup.
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?
Schema description coverage is 100% and the sole parameter already enumerates all eight accepted template values with explanations. The description adds no syntax, casing, or fallback detail beyond 'a specific use case', so the schema is doing all the work — baseline 3.
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 gives a specific verb and resource ('Get a media block pipeline template') and scopes it to 'a specific use case', which distinguishes it from lookups like get_media_block_info or get_code_example. It stops short of naming a sibling to contrast against, so the boundary is inferred rather than stated.
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?
There is no explicit when-to-use or when-not-to-use guidance, and no alternative is named despite several plausible siblings (get_code_example, get_media_block_info, list_media_blocks). The phrase 'for a specific use case' implies a scaffolding scenario but leaves the agent to infer it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_platform_specific_configBInspect
Get platform-specific file copying/build configuration code. Returns MSBuild targets or post-build scripts for special deployment requirements.
| Name | Required | Description | Default |
|---|---|---|---|
| platform | Yes | Platform: Windows, macOS, maccatalyst, Android, iOS, Linux |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden. It does disclose the return content type (MSBuild targets or post-build scripts), which is useful, but says nothing about whether a platform without special requirements returns empty, an error, or generic guidance, and no permissions or side effects are mentioned.
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?
Two short sentences, front-loaded with the action and followed by the payload description. No filler, though the second sentence could carry more operational detail rather than just restating content types.
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?
For a one-parameter, no-output-schema tool this is roughly adequate: the agent knows what comes back and from what inputs. It is missing guidance on unsupported/missing platforms and on how the output differs from get_deployment_guide or get_code_example, which matters given the crowded sibling set.
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?
Schema coverage is 100% and the single platform parameter already lists all accepted values (Windows, macOS, maccatalyst, Android, iOS, Linux). The description adds nothing beyond the schema, so baseline 3 applies.
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?
"Get platform-specific file copying/build configuration code" gives a specific verb and resource, and the second sentence narrows the payload to MSBuild targets and post-build scripts. It is distinguishable from siblings like get_deployment_guide and get_code_example, though it never explicitly contrasts itself with them.
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?
There is no when-to-use or when-not-to-use guidance, and no sibling is named as an alternative. An agent must infer from the phrase "special deployment requirements" that this is for non-standard build/deploy setups rather than general code or deployment docs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_deployment_guidesAInspect
List available deployment guides for VisioForge SDK. Filter by platform, project type, SDK type, or scenario. Returns a list of guides with titles, summaries, and tags.
| Name | Required | Description | Default |
|---|---|---|---|
| tag | No | Filter by tag (optional). Values: docker, cloud, mobile, desktop, rtsp, streaming | |
| sdkType | No | Filter by SDK (optional). Values: MediaBlocks, VideoCapture, MediaPlayer, VideoEdit | |
| platform | No | Filter by platform (optional). Values: Windows, Linux, macOS, Android, iOS, All | |
| projectType | No | Filter by project type (optional). Values: WPF, WinForms, MAUI, Avalonia, Console, Uno, Blazor |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are supplied, so the description carries the full burden. 'List' implies a read-only, non-mutating call and it usefully discloses the return contents, but it says nothing about auth, rate limits, pagination, or whether results are exhaustive, which matter for an agent deciding how to consume the output.
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?
Three tight sentences: purpose and filter axes are front-loaded, and the return-shape sentence earns its place because there is no output schema. No redundant or filler wording.
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?
For a simple zero-required-param read tool with a fully documented schema, the description covers what it does, how to filter, and what comes back. The only real gap is the absent routing note telling an agent to follow up with get_deployment_guide for full content.
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?
Schema coverage is 100% with per-parameter value lists, so the schema already documents every filter. The description only restates the filter axes, and it introduces a mismatch by citing 'scenario' as a filter when the actual parameter is 'tag' with values like docker/cloud/mobile, adding slight ambiguity rather than meaning.
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 gives a specific verb and resource ('List available deployment guides for VisioForge SDK') and clarifies the return shape (titles, summaries, tags). It implicitly separates itself from the singular sibling get_deployment_guide, but never names it, so the differentiation is left to inference rather than stated.
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?
It names the filter dimensions (platform, project type, SDK type, scenario), which implies how to narrow results, but gives no explicit guidance on when to use this list tool versus get_deployment_guide for a specific guide, and no prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_media_blocksAInspect
List available VisioForge media blocks, optionally filtered by category. Media blocks are the building blocks of media processing pipelines. Categories include: Sources, Sinks, VideoEncoders, AudioEncoders, VideoDecoders, VideoProcessing, AudioProcessing, AudioRendering, VideoRendering, Demuxers, Parsers, OpenGL, OpenCV, Nvidia, Decklink, AWS, RTSPServer, Bridge, Special, Outputs.
| Name | Required | Description | Default |
|---|---|---|---|
| category | No | Optional category to filter by (e.g., 'Sources', 'Sinks', 'VideoEncoders'). Leave empty to list all categories with their blocks. |
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 conceptual context (media blocks are pipeline building blocks) and the valid category surface, but says nothing about the return shape, result volume, or whether this is a pure read operation — leaving meaningful gaps for an unannotated tool.
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?
Two sentences: purpose first, then the category enumeration that makes the parameter usable. The long list is dense but every term is a valid filter value, so nothing is wasted.
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?
For a single-optional-parameter list tool with no output schema, the description covers purpose, filtering behavior, and the category vocabulary. Only the shape of the returned listing is left unstated, which is a minor gap at this complexity.
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?
Schema coverage is already 100%, so the baseline is 3; however, the description enumerates roughly twenty valid category names far beyond the three examples in the schema, materially improving the agent's ability to pick a correct filter value.
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?
States a specific verb and resource ('List available VisioForge media blocks') plus the filtering scope. It does not explicitly distinguish itself from the sibling get_media_block_info, so an agent must infer that this lists while that one fetches details of a single block.
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?
Usage is implied through 'optionally filtered by category' and the note to leave the filter empty to list everything. There is no explicit guidance on when to prefer this over get_media_block_info or when a filtered vs unfiltered call is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_namespacesAInspect
Browse VisioForge SDK namespaces hierarchically. Shows child namespaces and classes within a given namespace. Start with 'VisioForge.Core' or leave empty to see top-level namespaces.
| Name | Required | Description | Default |
|---|---|---|---|
| parentNamespace | No | Parent namespace to browse (e.g., 'VisioForge.Core.MediaBlocks'). Leave empty for top-level. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must carry the behavioral load; 'Browse' implies a read-only listing operation, and the text discloses what the response contains (child namespaces plus classes). It does not state whether results are paginated, how deep the hierarchy is traversed, or whether the call is guaranteed side-effect free.
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?
Three short sentences, each doing distinct work: purpose, return content, and entry point. The starting instruction is front-loaded and there is no filler.
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?
For a single optional-parameter read tool with no output schema, the definition covers purpose, output shape, and a starting point adequately. A brief note on how to move from a listed namespace to class details (via get_class_info) would close the remaining gap.
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?
Schema coverage is 100% and the parameter already documents the null default and a sample value, so the schema does the heavy lifting. The description adds only the recommended seed value 'VisioForge.Core', which is a small but real increment over the schema's own example.
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 gives a specific verb and resource ('Browse VisioForge SDK namespaces hierarchically') and states what a result contains ('child namespaces and classes within a given namespace'). It is clear on its own, but it never distinguishes itself from sibling tools like list_sdk_classes or search_api, which plausibly overlap with namespace/class enumeration.
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?
It offers an entry-point workflow ('Start with VisioForge.Core or leave empty to see top-level namespaces'), which implies how to begin traversal. However, it gives no when-not guidance and no explicit routing to alternatives such as list_sdk_classes for flat listing or get_class_info for drilling into a specific class.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_sdk_classesAInspect
List core VisioForge SDK classes. These are the main entry-point classes for building media applications: VideoCaptureCoreX (video capture/recording), VideoEditCoreX (video editing), MediaPlayerCoreX (media playback), MediaInfoReaderX (media analysis), SimplePlayerCoreX (simple playback), and more.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It discloses the classes returned and their functional roles, which is useful, but it does not state whether the list is exhaustive, whether it requires authentication, or what the response format looks like beyond the enumerated examples.
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 front-loaded with the core action and immediately follows with concrete examples. It is compact and every sentence adds useful information about which classes are returned.
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?
For a simple zero-parameter list tool, the description is nearly complete: it explains what is listed and gives representative classes. The main gap is that it does not explicitly describe the return structure or confirm whether the list is comprehensive, but the overall intent is clear.
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 tool has zero parameters and an empty schema, so parameter semantics are not a meaningful source of ambiguity. The baseline score of 4 applies because there is nothing for the description to clarify about inputs.
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 names a specific verb (list) and resource (core VisioForge SDK classes), then enumerates several concrete entry-point classes with their purposes. It is clearly distinct from sibling tools by focusing on top-level SDK classes, though it does not explicitly name alternatives like list_namespaces or search_api.
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?
Usage is implied: call this to discover the main entry-point classes when building media applications. However, the description gives no explicit when-to-use versus when-not-to-use guidance and does not point to sibling tools such as get_class_info or search_api for deeper investigation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_apiAInspect
Search across the entire VisioForge SDK API — class names, method names, property names, event names, and their documentation text. Returns ranked results. Use this when you don't know the exact class name, or to find all classes related to a concept (e.g., 'RTSP streaming', 'video overlay', 'audio capture').
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query — can be a class name, method name, concept, or description (e.g., 'RTSP', 'video resize', 'audio equalizer', 'H264 encoder settings') | |
| maxResults | No | Maximum number of results to return (default: 20, max: 50) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are supplied, so the description carries the full burden; it discloses the ranked-result behavior and searchable surface, which is useful. It does not say anything about result contents, pagination/truncation beyond maxResults, or whether all namespaces are included, leaving gaps for a no-annotation tool.
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?
Two tightly written sentences: capability first, then usage rule with examples. No filler, and the most decision-relevant information (scope and when-to-use) is front-loaded.
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?
For a two-parameter read-only search with no output schema and no annotations, the description covers what is searched, ranking, and when to reach for it. A brief note on what a result record contains (and how to follow up with get_class_info) would make it fully self-sufficient.
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?
Schema coverage is 100%, including a default and max for maxResults, so the schema already does the work. The description adds only the notion that the query can span documentation text as well as identifiers, which slightly extends but mostly restates the 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?
States a specific verb and resource ('Search across the entire VisioForge SDK API') and enumerates exactly what is searchable — class, method, property, event names plus documentation text — and that results are ranked. This distinguishes it from siblings like list_sdk_classes (browse) and get_class_info (exact lookup).
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?
Gives a clear selection rule: 'Use this when you don't know the exact class name, or to find all classes related to a concept', with concrete concept examples. The complement (use get_class_info when the name is known) is only implied rather than named explicitly.
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.
14 tool updates
- First observed
get_class_info - First observed
get_code_example - First observed
get_deployment_guide - First observed
get_enum_values - First observed
get_media_block_info - First observed
get_method_signature - First observed
get_nuget_packages_snippet - First observed
get_pipeline_template - First observed
get_platform_specific_config - First observed
list_deployment_guides - First observed
list_media_blocks - First observed
list_namespaces - First observed
list_sdk_classes - First observed
search_api
Related MCP Connectors
AI coding assistant for Radzen Blazor — docs, APIs, code samples, and templates for 100+ components.
Stimulsoft Reports & Dashboards docs MCP server. Semantic search for all platforms.
Official MCP server for Softhills 3D/2D Visualization SDKs, API documentation, and code examples.
Search the ABCpdf, ImageGlue, WordGlue and ABCocr .NET documentation and API reference.
Related MCP Servers
- AlicenseNot gradedqualityFmaintenanceEnables to create and edit Microsoft Visio diagrams programmatically via a standardized API.742 PyPI87MIT
- AlicenseNot gradedqualityCmaintenanceEnables high-performance read/write operations, reconciliation, formula recalculation, pivot refresh, macro execution, and PDF export for spreadsheet workbooks on Windows.MIT
- AlicenseBqualityDmaintenanceEnables comprehensive management of Microsoft Word documents with 30+ tools for reading, writing, formatting, template merging, image extraction, equation extraction, and style application.241MIT
- AlicenseNot gradedqualityDmaintenanceEnables reading and processing various document formats including Word, PDF, RTF, and text files. Supports extracting media elements like images and links, with features for PDF page range selection and automatic text encoding detection.8MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.