Skip to main content

FrootAI API Reference

Technical reference for all public APIs โ€” MCP tools, VS Code commands, config schemas, and Agentic OS files.


1. MCP Server Tools (16 tools)โ€‹

The FrootAI MCP Server exposes tools over the Model Context Protocol (stdio transport). All tools return JSON-RPC 2.0 responses.

1.1 Static Toolsโ€‹

get_moduleโ€‹

Retrieve a full knowledge module by ID or name.

ParameterTypeRequiredDescription
modulestringYesModule ID (e.g., "F1") or name (e.g., "GenAI-Foundations")

Output: { content: [{ type: "text", text: "<full module content>" }] }

Example:

{
"name": "get_module",
"arguments": { "module": "RAG-Architecture" }
}

list_modulesโ€‹

List all available knowledge modules with metadata.

ParameterTypeRequiredDescription
(none)โ€”โ€”No parameters required

Output: { content: [{ type: "text", text: "<JSON array of modules>" }] }

Each module entry:

{
"id": "F1",
"name": "GenAI-Foundations",
"layer": "Foundations",
"title": "GenAI Foundations",
"sizeBytes": 24500
}

search_knowledgeโ€‹

Full-text search across all knowledge modules.

ParameterTypeRequiredDescription
querystringYesSearch query string
limitnumberNoMax results (default: 10)

Output: { content: [{ type: "text", text: "<JSON array of matches>" }] }

Each match:

{
"module": "RAG-Architecture",
"section": "## Vector Databases",
"snippet": "...matching text with context...",
"score": 0.87
}

lookup_termโ€‹

Look up an AI term in the glossary (200+ terms).

ParameterTypeRequiredDescription
termstringYesTerm to look up (e.g., "LoRA", "RAG", "RLHF")

Output: { content: [{ type: "text", text: "<definition and context>" }] }


1.2 Live Toolsโ€‹

fetch_azure_docsโ€‹

Retrieve current Azure documentation for a service or topic.

ParameterTypeRequiredDescription
topicstringYesAzure service or topic (e.g., "AI Search", "Container Apps")
sectionstringNoSpecific section (e.g., "pricing", "quickstart")

Output: { content: [{ type: "text", text: "<documentation content>" }] }

Note: Requires network connectivity.


fetch_external_mcpโ€‹

Query external MCP server registries and catalogs.

ParameterTypeRequiredDescription
querystringYesWhat to search for (e.g., "database tools", "GitHub integration")
registrystringNoSpecific registry (default: all known registries)

Output: { content: [{ type: "text", text: "<JSON array of MCP servers>" }] }


1.3 Chain Toolsโ€‹

agent_buildโ€‹

Generate a new agent scaffold based on a scenario description.

ParameterTypeRequiredDescription
scenariostringYesDescription of the agent's purpose
modelstringNoPreferred model (default: "gpt-4o")
stylestringNoAgent style: "conservative", "balanced", "creative" (default: "balanced")

Output: { content: [{ type: "text", text: "<generated agent.md + config>" }] }


agent_reviewโ€‹

Review an agent's configuration for quality, security, and completeness.

ParameterTypeRequiredDescription
agentMdstringYesContents of the agent.md file
configstringNoContents of agents.json config
focusstringNoReview focus: "security", "completeness", "performance", "all" (default: "all")

Output: { content: [{ type: "text", text: "<review findings and recommendations>" }] }


agent_tuneโ€‹

Optimize agent parameters based on evaluation results.

ParameterTypeRequiredDescription
configstringYesCurrent agents.json content
evalResultsstringNoEvaluation results JSON
goalstringNoOptimization goal: "accuracy", "latency", "cost", "balanced" (default: "balanced")

Output: { content: [{ type: "text", text: "<optimized config + explanation>" }] }


1.4 AI Ecosystem Toolsโ€‹

get_architecture_patternโ€‹

Get architecture patterns for a given scenario.

ParameterTypeRequiredDescription
scenariostringYesDescription of the architecture need
constraintsstringNoConstraints (e.g., "low-latency", "multi-region")

Output: { content: [{ type: "text", text: "<pattern description with diagram>" }] }


get_froot_overviewโ€‹

Get an overview of the FrootAI platform and its components.

ParameterTypeRequiredDescription
(none)โ€”โ€”No parameters required

Output: { content: [{ type: "text", text: "<platform overview>" }] }


get_github_agentic_osโ€‹

Explain the .github Agentic OS โ€” files, primitives, and composition.

ParameterTypeRequiredDescription
detailstringNoDetail level: "summary", "full" (default: "summary")

Output: { content: [{ type: "text", text: "<Agentic OS documentation>" }] }


list_community_playsโ€‹

Browse community-contributed solution plays.

ParameterTypeRequiredDescription
categorystringNoFilter by category (e.g., "IT", "Security", "DevOps")

Output: { content: [{ type: "text", text: "<JSON array of plays>" }] }


get_ai_model_guidanceโ€‹

Get model selection guidance and comparison data.

ParameterTypeRequiredDescription
modelsstringNoModels to compare (comma-separated, e.g., "gpt-4o,claude-3.5-sonnet")
useCasestringNoUse case for recommendation (e.g., "code generation", "summarization")

Output: { content: [{ type: "text", text: "<model comparison and recommendation>" }] }


2. VS Code Extension Commands (13 commands)โ€‹

All commands are prefixed with frootai. and appear in the Command Palette as FROOT:.

Command IDPalette LabelDescription
frootai.browseModulesFROOT: Browse ModulesOpen the knowledge hub module browser
frootai.searchKnowledgeFROOT: Search KnowledgeFull-text search across all modules
frootai.lookupTermFROOT: Lookup TermLook up an AI term in the glossary
frootai.initDevKitFROOT: Init DevKitScaffold .github Agentic OS into the workspace
frootai.initTuneKitFROOT: Init TuneKitAdd config and evaluation files
frootai.showPlaysFROOT: Show Solution PlaysBrowse all 20 solution plays
frootai.openPlayFROOT: Open PlayOpen a specific play's folder
frootai.deployFROOT: Deploy SolutionPackage and deploy the current play
frootai.showMcpToolsFROOT: Show MCP ToolsView MCP tool documentation
frootai.readUserGuideFROOT: Read User GuideOpen the user guide
frootai.showArchitectureFROOT: Show ArchitectureDisplay system architecture
frootai.showChangelogFROOT: Show ChangelogView version history
frootai.checkUpdatesFROOT: Check UpdatesCheck for new versions

3. Config File Schemasโ€‹

3.1 openai.jsonโ€‹

{
"_comment": "Azure OpenAI deployment configuration",
"deployment_name": "gpt-4o",
"api_version": "2024-08-01-preview",
"temperature": 0.7,
"max_tokens": 4096,
"top_p": 0.95,
"frequency_penalty": 0,
"presence_penalty": 0
}
FieldTypeDescription
deployment_namestringAzure OpenAI deployment name
api_versionstringAPI version string
temperaturenumberSampling temperature (0โ€“2)
max_tokensnumberMaximum response tokens
top_pnumberNucleus sampling threshold
frequency_penaltynumberRepetition penalty (-2 to 2)
presence_penaltynumberTopic presence penalty (-2 to 2)

3.2 guardrails.jsonโ€‹

{
"_comment": "Content safety and guardrail configuration",
"max_input_tokens": 8192,
"max_output_tokens": 4096,
"blocked_topics": ["violence", "self-harm", "illegal-activity"],
"content_filter_level": "medium",
"rate_limit_rpm": 60,
"require_grounding": true,
"citation_required": true
}
FieldTypeDescription
max_input_tokensnumberMaximum tokens in user input
max_output_tokensnumberMaximum tokens in response
blocked_topicsstring[]Topics to filter out
content_filter_levelstringFilter strictness: "low", "medium", "high"
rate_limit_rpmnumberRequests per minute limit
require_groundingbooleanRequire grounded (cited) responses
citation_requiredbooleanInclude source citations

3.3 agents.jsonโ€‹

{
"_comment": "Agent routing and model configuration",
"default_model": "gpt-4o",
"fallback_model": "gpt-4o-mini",
"routing": {
"complex_reasoning": "gpt-4o",
"simple_qa": "gpt-4o-mini",
"code_generation": "gpt-4o"
},
"temperature_overrides": {
"code_generation": 0.2,
"creative_writing": 0.9
},
"max_retries": 3,
"timeout_ms": 30000
}

3.4 model-comparison.jsonโ€‹

{
"_comment": "Model comparison data for selection guidance",
"models": [
{
"name": "gpt-4o",
"provider": "Azure OpenAI",
"context_window": 128000,
"cost_per_1k_input": 0.005,
"cost_per_1k_output": 0.015,
"latency_p50_ms": 800,
"strengths": ["reasoning", "code", "multimodal"]
}
]
}

3.5 search.jsonโ€‹

{
"_comment": "Search configuration for RAG pipelines",
"method": "hybrid",
"top_k": 5,
"min_score": 0.7,
"reranker": true,
"embedding_model": "text-embedding-3-large",
"dimensions": 3072
}

3.6 chunking.jsonโ€‹

{
"_comment": "Document chunking strategy",
"strategy": "semantic",
"chunk_size_tokens": 512,
"overlap_tokens": 64,
"separators": ["\n## ", "\n### ", "\n\n", "\n"],
"preserve_markdown_structure": true
}

4. Plugin Manifest (plugin.json)โ€‹

The root plugin.json describes the FrootAI plugin for marketplace and registry listing.

{
"name": "frootai",
"version": "2.2.0",
"description": "BIY AI Kit โ€” From the Roots to the Fruits",
"author": "Pavleen Bali",
"license": "MIT",
"repository": "https://github.com/gitpavleenbali/frootai",
"components": {
"mcp-server": { "version": "2.2.0", "tools": 16 },
"vscode-extension": { "version": "0.9.2", "commands": 13 },
"website": { "pages": 13 },
"knowledge-modules": { "count": 18 },
"solution-plays": { "count": 20 }
},
"keywords": ["ai", "mcp", "agents", "azure", "rag", "froot"],
"categories": ["AI", "Developer Tools", "Azure"]
}

5. .github Agentic OS File Reference (19 files)โ€‹

The Agentic OS is a scaffolded set of files that make any project agent-ready. Organized in 4 layers:

Layer 1: Agent Identityโ€‹

FilePurpose
.github/agent.mdPrimary agent behavior rules โ€” scope, constraints, tools, error handling
.github/copilot-instructions.mdGitHub Copilot context โ€” project structure, conventions, key files

Layer 2: Prompt Libraryโ€‹

FilePurpose
.github/prompts/init.prompt.mdBootstrap the agent with project context
.github/prompts/review.prompt.mdCode review prompt template
.github/prompts/deploy.prompt.mdDeployment preparation prompt
.github/prompts/debug.prompt.mdDebugging and troubleshooting prompt
.github/prompts/test.prompt.mdTest generation prompt
.github/prompts/refactor.prompt.mdCode refactoring prompt

Layer 3: CI/CD Automationโ€‹

FilePurpose
.github/workflows/validate.ymlValidate play structure, file sizes, JSON formatting
.github/workflows/build.ymlBuild and test pipeline
.github/workflows/deploy.ymlDeployment workflow
.github/workflows/evaluate.ymlRun evaluation scripts and report scores

Layer 4: Collaboration Templatesโ€‹

FilePurpose
.github/ISSUE_TEMPLATE/bug.ymlStructured bug report template
.github/ISSUE_TEMPLATE/feature.ymlFeature request template
.github/ISSUE_TEMPLATE/play-request.ymlNew solution play request
.github/pull_request_template.mdPR description template with checklist
.github/CODEOWNERSReview assignment rules
.github/FUNDING.ymlSponsorship information
.github/dependabot.ymlDependency update configuration

Compositionโ€‹

These files compose through 7 primitives:

  1. Agent Rules โ†’ agent.md
  2. Context โ†’ copilot-instructions.md
  3. Prompts โ†’ prompts/*.prompt.md
  4. Workflows โ†’ workflows/*.yml
  5. Templates โ†’ ISSUE_TEMPLATE/, pull_request_template.md
  6. Config โ†’ config/*.json
  7. Evaluation โ†’ evaluation/

Each primitive is independent but they strengthen each other. An agent with rules + context + prompts is significantly more capable than rules alone.


Scripts & Automationโ€‹

deploy-play.sh / deploy-play.ps1โ€‹

Deploy any solution play end-to-end (infra + config + eval).

Usage:

./scripts/deploy-play.sh <play-number> [--resource-group <rg>] [--skip-eval]
ParameterDescriptionRequired
play-numberPlay number (01-20)Yes
--resource-groupAzure resource group nameNo (uses default)
--skip-evalSkip evaluation stepNo

rebuild-knowledge.sh / rebuild-knowledge.ps1โ€‹

Rebuild knowledge.json from docs/ and sync to VS Code extension.

Usage:

./scripts/rebuild-knowledge.sh [--publish]

export-skills.sh / export-skills.ps1โ€‹

Export FROOT modules as .github/skills/ folders for GitHub Copilot.

Usage:

./scripts/export-skills.sh <module-id>   # e.g., F1, R2, O3
./scripts/export-skills.sh --all # export all 16 modules

auto-update.js (MCP Server)โ€‹

Knowledge auto-refresh module. Checks if knowledge.json is older than 7 days and fetches latest from GitHub.

import { getLatestKnowledge } from './auto-update.js';
const knowledge = await getLatestKnowledge();

Azure Integrationโ€‹

azure.yamlโ€‹

Configuration for azd up deployment. Place in the root of any solution play.

registry-entry.jsonโ€‹

MCP ecosystem registry entry for FrootAI. Located at mcp-server/registry-entry.json.

agent-card.jsonโ€‹

A2A (Agent-to-Agent) protocol card. Located at mcp-server/agent-card.json.


Next: Admin Guide ยท User Guide ยท Architecture Overview