FCCS MCP Agentic Server
This server provides agentic access to Oracle EPM Cloud Financial Consolidation and Close (FCCS) with dual MCP server and web API modes, featuring 40+ tools for comprehensive FCCS operations.
Comprehensive FCCS Operations: Full coverage of Oracle FCCS REST API including application management, job execution, dimension exploration, journal handling, data operations, report generation, and consolidation processes
Dual Access Modes: Functions as both an MCP server for Claude Desktop integration and a FastAPI web server for direct API access
Application & Job Management: Retrieve application details, API version information, list recent jobs, check job statuses, and run business or data load rules
Dimension & Metadata Operations: Get dimension lists and members, build parent-child hierarchies, and query local metadata cache with SQL-like filtering
Journal Management: Retrieve, filter, approve, reject, post journals, update periods, and perform bulk import/export operations
Intelligent Data Retrieval: Smart data tools with automatic 14-dimension handling, consolidation breakdown (Entity Input, Total, Proportion, Elimination, Contribution), movement dimension customization, and data copy/clear operations
Reporting Capabilities: Generate FCCS reports (Task Manager, Supplemental Data, Enterprise Journal, Consolidation Process) in multiple formats (HTML, PDF, XLSX, CSV) with async support, plus custom Python script templates for reporting
Advanced Consolidation: Export/import consolidation rulesets, validate metadata, generate intercompany matching reports, import supplementation data, and deploy form templates
Feedback & Learning System: PostgreSQL persistence with reinforcement learning tracking, user feedback submission (1-5 stars), execution history viewing, and performance metrics
Business Document Generation: Create system pitch documents and investment memos with financial analysis
Development Flexibility: Mock mode for development without real FCCS connection, bilingual English/Portuguese support, and automated setup scripts
Deployment Options: Windows, Linux/Mac, Docker, and Google Cloud Run deployment with detailed guides for each platform
Enables deployment of the FCCS agent server on Google Cloud Run platform
Stores tool execution history, feedback, and metrics for reinforcement learning tracking of FCCS operations
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., "@FCCS MCP Agentic Serverlist recent jobs and check their status"
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.
FCCS MCP Agentic Server
Oracle EPM Cloud Financial Consolidation and Close (FCCS) agentic server using Google ADK with MCP support.
Features
25+ FCCS Tools: Full coverage of Oracle FCCS REST API
Dual Mode: MCP server (Claude Desktop) + Web API (FastAPI)
Memory & Feedback: PostgreSQL persistence with RL tracking
Mock Mode: Development without real FCCS connection
Bilingual: English and Portuguese support
Related MCP server: Oracle EPM Cloud MCP Server
Quick Start
Windows (Recommended)
Automated Setup:
.\setup-windows.batThis will:
Create virtual environment
Install all dependencies
Create
.envfile from templateGuide you through configuration
Manual Setup:
Create virtual environment:
python -m venv venvActivate:
.\venv\Scripts\Activate.ps1Install:
pip install -e .Configure: Copy
.env.exampleto.envand editInitialize database:
python scripts\init_db.py(if using PostgreSQL)
Quick Commands:
Start web server:
.\start-server.batStart MCP server:
.\start-mcp-server.batInstall dependencies:
.\install-dependencies.batInitialize database:
.\init-database.bat
See WINDOWS_DEPLOYMENT.md for detailed Windows setup guide.
Linux/Mac
1. Install Dependencies:
pip install -e .2. Configure Environment:
cp .env.example .env
# Edit .env with your settings3. Run:
MCP Server (for Claude Desktop):
python -m cli.mcp_serverWeb Server (for API access):
python -m web.serverInteractive CLI:
python -m cli.mainClaude Desktop Configuration
Add to %APPDATA%\Claude\claude_desktop_config.json:
{
"mcpServers": {
"fccs-agent": {
"command": "python",
"args": ["-m", "cli.mcp_server"],
"cwd": "C:\\path\\to\\fccs-mcp-ag-server",
"env": {
"FCCS_MOCK_MODE": "true"
}
}
}
}API Endpoints
Endpoint | Method | Description |
| GET | Health check |
| GET | List available tools |
| POST | Execute a tool |
| POST | Call specific tool |
| POST | Submit user feedback |
| GET | Get tool metrics |
Available Tools
Application
get_application_info- FCCS application detailsget_rest_api_version- API version info
Jobs
list_jobs- List recent jobsget_job_status- Job status by IDrun_business_rule- Execute business rulesrun_data_rule- Execute data load rules
Dimensions
get_dimensions- List all dimensionsget_members- Get dimension membersget_dimension_hierarchy- Build hierarchy tree
Journals
get_journals- List journalsget_journal_details- Journal detailsperform_journal_action- Approve, reject, postupdate_journal_period- Update periodexport_journals/import_journals
Data
export_data_slice- Export grid datasmart_retrieve- Smart data retrievalcopy_data/clear_data
Reports
generate_report- Generate FCCS reportsget_report_job_status- Async report status
Consolidation
export_consolidation_rulesets/import_consolidation_rulesetsvalidate_metadatagenerate_intercompany_matching_reportimport_supplementation_datadeploy_form_template
Architecture
fccs-mcp-ag-server/
├── fccs_agent/ # Main package
│ ├── agent.py # Agent orchestration
│ ├── config.py # Configuration
│ ├── client/ # FCCS HTTP client
│ ├── tools/ # 25+ tool modules
│ └── services/ # Feedback service
├── cli/ # CLI & MCP server
│ ├── main.py # Interactive CLI
│ └── mcp_server.py # MCP stdio server
└── web/ # FastAPI server
└── server.pyDeployment
Windows
See WINDOWS_DEPLOYMENT.md for complete Windows deployment guide including:
Prerequisites installation
Automated setup scripts
Windows Service configuration
Troubleshooting
Docker
docker build -t fccs-agent .
docker run -p 8080:8080 --env-file .env fccs-agentGoogle Cloud Run
gcloud run deploy fccs-agent \
--source . \
--region us-central1 \
--allow-unauthenticated \
--set-env-vars FCCS_MOCK_MODE=trueSee QUICK_DEPLOY.md for detailed Cloud Run deployment.
Feedback System
The agent tracks tool executions for reinforcement learning:
Automatic: Execution time, success/failure, errors
User Feedback: 1-5 rating via
/feedbackendpointMetrics: Aggregated stats via
/metricsendpoint
Documentation
Windows Deployment Guide - Complete Windows setup
GitHub Setup Guide - Repository setup and configuration
Quick Deploy - Google Cloud Run deployment
ChatGPT Quick Start - ChatGPT integration
Dashboard Quick Start - Performance dashboard
License
MIT
fccs-mcp-ag-server
Available Tools
36 toolsclear_dataC
Clear data for specified scenario, year, and period / Limpar dados
| Name | Required | Description | Default |
|---|---|---|---|
| scenario | No | Scenario to clear | |
| year | No | Year to clear | |
| period | No | Period to clear |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. 'Clear data' implies a destructive operation, but it doesn't specify whether this is reversible, requires special permissions, has side effects on related data, or provides confirmation feedback. The description lacks critical details about what 'clear' means operationally (e.g., deletion, reset to defaults, archival).
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 brief but includes redundant Portuguese translation that doesn't add functional value. The first sentence is front-loaded with the core action, but could be more structured (e.g., explaining consequences or typical use cases). The translation feels like clutter rather than helpful localization.
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 destructive tool with 3 parameters, no annotations, and no output schema, the description is inadequate. It doesn't address what happens after clearing (success confirmation, error handling), whether all three parameters are required, or how this interacts with sibling tools like 'get_journals' or 'update_journal_period'. The context suggests financial/consolidation data, but this isn't clarified.
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 parameters are documented in the schema. The description adds minimal value by listing the three parameters ('scenario, year, and period') but doesn't explain their relationships, valid values, or how they combine to identify data. No additional semantic context is provided beyond what's in the schema descriptions.
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 the tool 'Clear data for specified scenario, year, and period' which provides a verb ('Clear') and resource ('data') with some specificity about parameters. However, it doesn't distinguish this from sibling tools like 'delete_data' (not present) or explain what type of data is being cleared (e.g., financial, journal, metadata). The Portuguese translation adds no functional clarity.
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?
No guidance is provided on when to use this tool versus alternatives. While siblings include data-related tools like 'export_data_slice' or 'import_journals', the description doesn't indicate whether this clears temporary data, resets configurations, or permanently deletes records. There's no mention of prerequisites, dependencies, or typical workflow context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
copy_dataC
Copy data between scenarios, years, or periods / Copiar dados
| Name | Required | Description | Default |
|---|---|---|---|
| from_scenario | No | Source scenario | |
| to_scenario | No | Target scenario | |
| from_year | No | Source year | |
| to_year | No | Target year | |
| from_period | No | Source period | |
| to_period | No | Target period |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions copying data but does not specify if this is a read-only operation, requires permissions, has side effects like overwriting data, or involves rate limits. This leaves critical behavioral traits undefined for a mutation 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?
The description is brief with two language versions, but the English part is front-loaded and efficient. However, the Spanish translation adds redundancy without new information, slightly reducing conciseness. It could be more structured by omitting the translation.
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 complexity of a data copying tool with 6 parameters, no annotations, and no output schema, the description is insufficient. It lacks details on behavioral aspects, error handling, or return values, making it incomplete for safe and effective use by an AI agent.
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 100% description coverage, clearly documenting all 6 parameters. The description adds minimal value by implying the parameters relate to source and target contexts but does not provide additional syntax, format details, or constraints beyond the schema. This meets the baseline for high schema coverage.
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 action ('Copy data') and the domains involved ('between scenarios, years, or periods'), which is specific and informative. However, it does not explicitly differentiate from sibling tools like 'import_journals' or 'import_supplementation_data', which might also involve data movement, so it misses full distinction.
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 no guidance on when to use this tool versus alternatives, such as when copying data is preferred over importing or exporting. It lacks context on prerequisites, exclusions, or comparisons to siblings like 'import_journals' or 'export_data_slice'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
deploy_form_templateC
Deploy a form template / Implantar um template de formulario
| Name | Required | Description | Default |
|---|---|---|---|
| template_name | Yes | Name of the form template to deploy | |
| parameters | No | Deployment parameters |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states the action ('deploy') without explaining what happens during deployment (e.g., whether it modifies system state, requires permissions, has side effects like data updates, or returns a result). For a tool with 'deploy' in its name—implying a potentially impactful operation—this is insufficient to inform the agent about risks or outcomes.
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 inefficiently structured with bilingual repetition ('Deploy a form template / Implantar um template de formulario'), which adds no value and wastes space. It's front-loaded but under-specified, failing to use its limited length to provide essential context. A single, clear English phrase would have been more concise and effective.
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 complexity implied by 'deploy' (likely a mutation), no annotations, no output schema, and a nested object parameter, the description is incomplete. It doesn't address what the tool returns, error conditions, or the scope of 'deployment' (e.g., to users, systems, or environments). For a tool with potential side effects, this leaves significant gaps in understanding its full context.
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 schema already documents both parameters ('template_name' and 'parameters') adequately. The description adds no meaning beyond this, such as examples of deployment parameters or constraints on template names. With 2 parameters and high schema coverage, the baseline score of 3 is appropriate, as the description doesn't compensate but also doesn't detract.
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 the action ('deploy') and resource ('form template'), which provides a basic understanding of purpose. However, it's vague about what 'deploy' entails (e.g., creating, activating, or distributing the template) and doesn't distinguish it from sibling tools like 'generate_report' or 'run_business_rule', which might involve similar form-related operations. The bilingual repetition adds no clarity.
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?
No guidance is provided on when to use this tool versus alternatives. The description doesn't mention prerequisites, context (e.g., after creating a template), or exclusions (e.g., not for editing templates). With many sibling tools for data processing and reporting, this lack of differentiation leaves the agent guessing about appropriate usage scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
export_consolidation_rulesetsC
Export configurable consolidation rulesets / Exportar regras de consolidacao
| Name | Required | Description | Default |
|---|---|---|---|
| parameters | No | Export parameters (ruleNames, rulesetNames, etc.) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. 'Export' implies a read operation that produces output, but the description doesn't specify what gets exported (file format, structure), whether it requires specific permissions, if it's a synchronous or asynchronous operation, or what happens on failure. For a tool with no annotation coverage, this leaves significant behavioral questions unanswered.
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 extremely concise with just two phrases (English and Portuguese translation). While this is efficient, the Portuguese translation adds no functional value and represents wasted space. The English portion is front-loaded with the core purpose, but could benefit from more substantive content given the tool's likely complexity.
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 no annotations, no output schema, and a nested parameter object, the description is inadequate. It doesn't explain what 'consolidation rulesets' are, what format they export in, whether this is a bulk operation, or what the expected output looks like. For a tool that presumably handles complex financial consolidation rules, this leaves too many contextual gaps for effective agent use.
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 100% description coverage, with the single 'parameters' object documented as 'Export parameters (ruleNames, rulesetNames, etc.)'. The description adds no parameter information beyond what the schema provides. With high schema coverage, the baseline score of 3 is appropriate - the schema does the heavy lifting, and the description doesn't compensate with additional parameter context.
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 'Export configurable consolidation rulesets' restates the tool name 'export_consolidation_rulesets' with minimal additional information. It provides a basic verb+resource combination but lacks specificity about what 'export' means in this context (e.g., file format, destination). The Portuguese translation adds no functional clarity. It doesn't distinguish from sibling tools like 'export_data_slice' or 'export_journals' beyond the resource type.
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 no guidance on when to use this tool versus alternatives. There's no mention of prerequisites, typical use cases, or comparison to sibling tools like 'import_consolidation_rulesets' or 'generate_consolidation_process_report'. The agent receives no help in determining when this export operation is appropriate versus other export or reporting tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
export_data_sliceC
Export a specific data slice (grid) from the application / Exportar um slice de dados
| Name | Required | Description | Default |
|---|---|---|---|
| cube_name | No | The name of the cube (default: 'Consol') | |
| grid_definition | Yes | The data grid definition with pov, columns, and rows |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool exports data but doesn't mention whether this is a read-only operation, if it requires specific permissions, what format the export is in (e.g., CSV, PDF), or any rate limits. This leaves significant gaps in understanding the tool's behavior beyond its basic function.
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 brief and front-loaded with the core action and resource in a single bilingual sentence. There's no wasted text, but the bilingual repetition ('Export a specific data slice (grid) from the application / Exportar um slice de dados') slightly reduces efficiency without adding new information.
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 no annotations, no output schema, and a tool with nested object parameters for data export, the description is minimally adequate. It covers the basic purpose but lacks details on behavior, output format, or error handling. For a data export tool with complexity, this leaves room for improvement in providing a complete context.
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 schema already documents both parameters ('cube_name' and 'grid_definition') with descriptions. The tool description adds no additional meaning about parameters, such as examples of grid definitions or cube usage, but doesn't need to compensate for low coverage. Baseline 3 is appropriate as the schema handles the heavy lifting.
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 action ('Export') and the resource ('specific data slice (grid)'), making the purpose understandable. However, it doesn't differentiate from sibling tools like 'export_consolidation_rulesets' or 'export_journals', which also export data but different types. The bilingual format adds clarity but doesn't enhance differentiation.
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?
No guidance is provided on when to use this tool versus alternatives like 'smart_retrieve' or 'generate_report', which might retrieve or output data differently. The description lacks context about use cases, prerequisites, or exclusions, leaving the agent to infer usage from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
export_journalsC
Export consolidation journals / Exportar diarios de consolidacao
| Name | Required | Description | Default |
|---|---|---|---|
| parameters | No | Export parameters |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states the action ('export') without detailing whether this is a read-only operation, if it requires specific permissions, what happens during export (e.g., file generation, data transformation), or any side effects like rate limits or system impact. This is inadequate for a tool with potential data access implications.
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 brief but inefficiently structured due to bilingual repetition ('Export consolidation journals / Exportar diarios de consolidacao'), which adds no value. It is front-loaded with the core action but wastes space on redundancy rather than providing useful information. A single, clear phrase would be more effective.
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 complexity (involving data export with nested parameters) and lack of annotations or output schema, the description is insufficient. It does not explain what the export produces (e.g., file format, content), how results are delivered, or any behavioral nuances. For a tool that likely handles sensitive financial data, this leaves critical gaps in understanding.
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 100% description coverage, with one parameter object described as 'Export parameters'. The description adds no additional semantic context about what these parameters might include (e.g., date ranges, filters, formats). Since schema coverage is high, the baseline score of 3 applies, but the description does not compensate with any meaningful parameter details.
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 the tool exports 'consolidation journals' or 'diarios de consolidacao', which provides a basic verb+resource combination. However, it lacks specificity about what format the export is in, what scope it covers, or how it differs from sibling tools like 'export_data_slice' or 'export_consolidation_rulesets'. The bilingual phrasing adds redundancy without enhancing clarity.
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?
No guidance is provided on when to use this tool versus alternatives. With multiple export-related siblings (export_data_slice, export_consolidation_rulesets), the description fails to indicate whether this is for bulk exports, specific formats, or particular use cases. There is no mention of prerequisites, dependencies, or typical scenarios for invocation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_consolidation_process_reportC
Generate a Consolidation Process Overview Report showing data flow from Local GAAP to Consolidated / Gerar relatorio de processo de consolidacao
| Name | Required | Description | Default |
|---|---|---|---|
| entity | No | The Entity member (default: 'FCCS_Total Geography') | |
| account | No | The Account member (default: 'FCCS_Net Income') | |
| period | No | The Period member (default: 'Jan') | |
| year | No | The Year member (default: 'FY24') | |
| scenario | No | The Scenario member (default: 'Actual') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions generating a report but doesn't specify whether this is a read-only operation, if it triggers background jobs, what the output format is, or any rate limits or permissions required. This leaves significant gaps for a tool that likely involves data processing.
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 brief but includes redundant bilingual text ('Gerar relatorio de processo de consolidacao') that doesn't add value. It's front-loaded with the main purpose but lacks structure for clarity. While not verbose, the repetition reduces efficiency, making it adequate but not optimal.
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 no annotations, no output schema, and a tool with 5 parameters for generating a report, the description is incomplete. It doesn't explain the report's format, how to access results, or behavioral aspects like job status or errors. For a tool likely involving data consolidation, this leaves critical context gaps.
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 input schema fully documents the 5 parameters (entity, account, period, year, scenario) with descriptions and defaults. The description adds no additional meaning beyond the schema, such as explaining how parameters affect the report or their interdependencies, resulting in a baseline score 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 states the tool generates a 'Consolidation Process Overview Report' showing 'data flow from Local GAAP to Consolidated', which clarifies the verb (generate) and resource (report). However, it's vague about the report's specific content or format, and the bilingual phrasing adds redundancy without enhancing clarity. It doesn't distinguish from siblings like 'generate_report' or 'generate_intercompany_matching_report'.
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?
No guidance is provided on when to use this tool versus alternatives. The description doesn't mention prerequisites, context, or exclusions, and it fails to differentiate from sibling tools such as 'generate_report' or 'generate_intercompany_matching_report', leaving the agent without usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_intercompany_matching_reportC
Generate intercompany matching report / Gerar relatorio de correspondencia ICP
| Name | Required | Description | Default |
|---|---|---|---|
| parameters | No | Report parameters (scenario, year, period, etc.) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It mentions 'generate' but doesn't disclose behavioral traits like whether this is a read-only operation, if it triggers background jobs, what permissions are needed, or how results are delivered. For a tool with no annotations, this leaves critical gaps in understanding its behavior.
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 concise with two language versions (English and Portuguese), which is efficient but slightly redundant. It front-loads the purpose clearly, though the bilingual format adds minimal value without extra context. Overall, it's well-structured with no wasted 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 no annotations, no output schema, and a single nested parameter object, the description is incomplete. It doesn't explain what the report contains, how it's generated (e.g., async job), or what the user should expect. For a tool with potential complexity (implied by 'parameters' object), more context is needed to guide effective use.
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%, with one parameter ('parameters') documented as 'Report parameters (scenario, year, period, etc.)'. The description adds no additional meaning beyond this, such as explaining the structure or required fields of the parameters object. Baseline 3 is appropriate since the schema handles the documentation.
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 the tool generates an 'intercompany matching report' (verb+resource), which is clear but basic. It doesn't differentiate from sibling tools like 'generate_report', 'generate_consolidation_process_report', or 'generate_report_script', leaving ambiguity about when to use this specific tool versus other report generators.
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?
No guidance is provided on when to use this tool versus alternatives. With multiple report-related siblings (e.g., 'generate_report', 'generate_consolidation_process_report'), the description lacks context about specific use cases, prerequisites, or exclusions, offering minimal help for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_investment_memoC
Generate a 2-page investment memo (Word doc) with financial analysis / Gerar memorando de investimento
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Company ticker symbol (e.g., 'TECH') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the output format ('Word doc') and length ('2-page'), but doesn't address critical behavioral aspects: whether this is a read-only or write operation, what permissions are required, whether it's a synchronous or asynchronous process, or what happens if the ticker is invalid. For a tool that presumably creates documents, this is insufficient behavioral context.
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 brief but contains redundant bilingual text ('Gerar memorando de investimento' repeats the English portion). The core information is front-loaded, but the bilingual duplication adds unnecessary length without additional value. A single-language description would be more concise while conveying the same essential information.
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 that this is a document generation tool with no annotations and no output schema, the description is incomplete. It doesn't explain what the generated memo contains beyond 'financial analysis', how the analysis is performed, what data sources are used, or what the output looks like. For a tool that presumably creates complex financial documents, this leaves significant gaps in understanding.
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 description coverage is 100%, with the single parameter 'ticker' fully documented in the schema. The description adds no additional parameter information beyond what's already in the schema. According to the scoring rules, when schema coverage is high (>80%), the baseline is 3 even with no parameter information in the description.
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 tool's purpose: 'Generate a 2-page investment memo (Word doc) with financial analysis'. It specifies the verb ('Generate'), resource ('investment memo'), format ('Word doc'), length ('2-page'), and content ('financial analysis'). However, it doesn't differentiate from sibling tools like 'generate_report' or 'generate_system_pitch', which lowers the score from a perfect 5.
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 no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, appropriate contexts, or exclusions. While the bilingual nature (English/Portuguese) might imply international usage, this doesn't constitute meaningful usage guidelines for an AI agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_reportC
Generate FCCS report (Task Manager, Supplemental Data, Enterprise Journal) / Gerar relatorio FCCS
| Name | Required | Description | Default |
|---|---|---|---|
| group_name | Yes | Group name the report is associated with (e.g., 'Task Manager') | |
| report_name | Yes | Name of the report to generate | |
| generated_report_file_name | No | User-specified name for the generated report | |
| parameters | No | Report-specific parameters (Schedule, Period, etc.) | |
| format | No | Report format (default: PDF) | |
| module | No | Module: FCM (Task Manager) or SDM (Supplemental Data Manager) | |
| emails | No | Comma-separated email addresses to receive the report | |
| run_async | No | Run asynchronously (recommended for larger reports) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but offers minimal behavioral insight. It mentions report generation but doesn't disclose whether this is a read-only or write operation, potential side effects (e.g., file creation, email notifications), performance considerations, or authentication needs. The async parameter hints at performance but isn't explained in the description itself.
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 brief and front-loaded with the primary function. The bilingual repetition ('/ Gerar relatorio FCCS') is slightly redundant but not excessive. It avoids unnecessary elaboration, though it could be more structured by separating the core function from examples.
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 complex tool with 8 parameters, nested objects, no output schema, and no annotations, the description is inadequate. It doesn't explain what the tool returns (e.g., a file, job ID, or status), error conditions, or how parameters interact. The agent lacks context to use this tool effectively beyond basic parameter passing.
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 schema fully documents all 8 parameters. The description adds no additional parameter semantics beyond implying FCCS context. It doesn't clarify relationships between parameters (e.g., how 'module' relates to 'group_name') or provide examples beyond the enumerated lists already in 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?
The description clearly states the verb ('Generate') and resource ('FCCS report'), with specific examples of report types (Task Manager, Supplemental Data, Enterprise Journal). It distinguishes itself from other report-generation siblings like 'generate_consolidation_process_report' or 'generate_intercompany_matching_report' by specifying FCCS reports. However, it doesn't explicitly differentiate from 'generate_report_script' which might be related.
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?
No guidance is provided on when to use this tool versus alternatives. While the description mentions specific report types, it doesn't indicate prerequisites, when to choose this over other report tools, or any constraints. The agent must infer usage from parameter names and sibling tool names alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_report_scriptC
Generate a Python script template for custom FCCS reporting / Gerar script Python para relatorio customizado
| Name | Required | Description | Default |
|---|---|---|---|
| script_name | Yes | Name of the script file (without .py extension) | |
| report_type | No | Type of report (default: HTML) | |
| description | No | Description of what the report does | |
| accounts | No | List of account names to query | |
| entities | No | List of entity names to query | |
| periods | No | List of periods to query (e.g., ['Jan', 'Feb', 'Dec']) | |
| years | No | List of years to query (e.g., ['FY24', 'FY25']) | |
| scenarios | No | List of scenarios to query (e.g., ['Actual', 'Budget']) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool generates a 'template' but doesn't clarify what that means operationally: Does it create a file? Where is it saved? What permissions are needed? Is it a one-time generation or can it be modified? The description lacks details about the tool's behavior, output format, or any side effects.
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 brief and front-loaded with the primary purpose in the first part ('Generate a Python script template for custom FCCS reporting'). The Portuguese translation adds redundancy but doesn't significantly harm clarity. It avoids unnecessary elaboration, though it could be more structured by explicitly mentioning it's a template generator versus a direct report tool.
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 complexity (8 parameters, no annotations, no output schema), the description is insufficient. It doesn't explain what the generated script does, how to use it, or what the output looks like. For a tool that creates code templates, more context is needed about the template's structure, dependencies, or intended execution environment. The description leaves too many open questions for effective use.
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 100% description coverage, with all 8 parameters clearly documented in the schema itself. The description adds no additional parameter information beyond what's in the schema (e.g., it doesn't explain relationships between parameters like 'accounts' and 'entities', or provide examples beyond the enum). With high schema coverage, the baseline score of 3 is appropriate as the description doesn't compensate but also doesn't detract.
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 tool's purpose: 'Generate a Python script template for custom FCCS reporting' (with Portuguese translation). It specifies the verb ('generate'), resource ('Python script template'), and domain ('custom FCCS reporting'). However, it doesn't explicitly differentiate from sibling tools like 'generate_report' or 'generate_consolidation_process_report', which might also produce reports but through different mechanisms.
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 no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, typical use cases, or how it differs from other report-generation tools in the sibling list (e.g., 'generate_report' might produce immediate reports while this creates script templates). There's no 'when-not-to-use' or comparison information.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_system_pitchB
Generate a one-pager pitch document about the system's capabilities / Gerar documento de apresentacao do sistema
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool generates a document but doesn't specify what type of document (e.g., format, content structure), whether it's read-only or modifies data, or any side effects like rate limits or authentication needs. For a tool with zero annotation coverage, this is a significant gap in transparency.
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 concise and front-loaded, with the English version clearly stating the purpose in a single sentence. The Portuguese translation adds redundancy but doesn't significantly detract from clarity. It avoids unnecessary details, though the dual-language approach slightly reduces efficiency compared to a single, focused statement.
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 has 0 parameters, no annotations, and no output schema, the description is minimally adequate. It explains what the tool does but lacks details on behavior, output format, or usage context. For a simple tool with no parameters, this might suffice, but the absence of output information and behavioral context keeps it from being fully complete.
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 0 parameters, and the schema description coverage is 100%, so there are no parameters to document. The description doesn't need to add parameter semantics, and it doesn't incorrectly imply any parameters. A baseline score of 4 is appropriate as the description doesn't mislead about parameters and the schema fully covers the absence of them.
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 tool's purpose: 'Generate a one-pager pitch document about the system's capabilities' in English and Portuguese. It specifies the verb 'generate' and the resource 'pitch document', making it easy to understand what the tool does. However, it doesn't explicitly differentiate from sibling tools like 'generate_report' or 'generate_investment_memo', which prevents a perfect score.
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 no guidance on when to use this tool versus alternatives. It doesn't mention any context, prerequisites, or exclusions, nor does it compare to similar tools like 'generate_report' or 'generate_investment_memo' in the sibling list. This lack of usage direction leaves the agent without clear decision-making criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_application_infoC
Get information about the FCCS application / Obter informacoes sobre a aplicacao FCCS
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It implies a read-only operation ('Get information'), but does not specify permissions, rate limits, or response format. This is inadequate for a tool with zero annotation coverage.
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 brief and front-loaded, but includes redundant bilingual text ('Obter informacoes sobre a aplicacao FCCS') that adds no value for an AI agent. This reduces efficiency without improving clarity.
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 no annotations and no output schema, the description is incomplete. It fails to explain what information is returned (e.g., version, status, configuration) or behavioral aspects, making it insufficient for effective tool use.
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 0 parameters, and schema description coverage is 100%, so no parameter information is needed. The description does not add or detract from parameter semantics, meeting the baseline for tools with no 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 verb 'Get' and the resource 'information about the FCCS application', making the purpose understandable. However, it does not differentiate from siblings like 'get_dimensions' or 'get_journals' beyond specifying the application itself, which is a minor gap.
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?
No guidance is provided on when to use this tool versus alternatives, such as for retrieving general application metadata versus specific data from other tools. The description lacks context on prerequisites or exclusions, leaving usage unclear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_dimension_hierarchyC
Build a parent-child hierarchy for a dimension / Construir hierarquia pai-filho
| Name | Required | Description | Default |
|---|---|---|---|
| dimension_name | Yes | Dimension to explore | |
| member_name | No | Start from a specific member (optional) | |
| depth | No | Depth limit for the hierarchy (default: 5) | |
| include_metadata | No | Include raw metadata for each node |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions building a hierarchy but fails to explain critical behaviors like whether it returns a tree structure, list, or other format; if it requires specific permissions; or any rate limits. This leaves significant gaps for an agent to understand how to handle the tool effectively.
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 brief and front-loaded with the core purpose, but the bilingual repetition ('Construir hierarquia pai-filho') adds redundancy without value. It could be more concise by omitting the translation or integrating it better, though it remains relatively efficient.
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 complexity of a hierarchy-building tool with no annotations and no output schema, the description is incomplete. It does not explain the return format, error conditions, or how results are structured, which are crucial for an agent to use the tool correctly. This leaves too many unknowns for effective operation.
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 schema already documents all parameters well. The description does not add any meaning beyond the schema, such as explaining how 'dimension_name' relates to other tools or what 'include_metadata' entails. With high schema coverage, a baseline score of 3 is appropriate as the description doesn't compensate but also doesn't detract.
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 action ('Build a parent-child hierarchy') and the target resource ('for a dimension'), which is specific and actionable. However, it does not explicitly differentiate from sibling tools like 'get_dimensions' or 'get_members', which might have overlapping functionality in exploring dimension structures.
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 no guidance on when to use this tool versus alternatives. It lacks context on prerequisites, such as whether the dimension must exist or be accessible, and does not mention any sibling tools as alternatives for related tasks, leaving usage unclear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_dimensionsB
Get list of dimensions in the application / Obter lista de dimensoes na aplicacao
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states the action of getting a list, without mentioning whether this is a read-only operation, if it requires authentication, potential rate limits, or the format of the returned data. This leaves significant gaps in understanding the tool's behavior.
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 concise and front-loaded, using a single sentence in two languages to convey the core purpose without unnecessary details. However, the bilingual repetition slightly reduces efficiency, preventing a perfect score for optimal brevity.
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 simplicity (0 parameters, no output schema, no annotations), the description is minimally adequate but lacks depth. It does not explain what 'dimensions' entail in this context or provide any behavioral context, which could be helpful for an AI agent despite the low 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?
The tool has 0 parameters, and the input schema has 100% description coverage, so there is no need for parameter details in the description. The description appropriately focuses on the tool's purpose without redundant parameter information, earning a high baseline score.
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 verb 'Get' and resource 'list of dimensions in the application' in both English and Portuguese, making the purpose unambiguous. However, it does not explicitly differentiate from sibling tools like 'get_dimension_hierarchy' or 'get_members', which might also retrieve dimension-related data, so it falls short of a perfect score.
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 no guidance on when to use this tool versus alternatives, such as 'get_dimension_hierarchy' or 'get_members', nor does it mention any prerequisites or context for usage. It simply states what the tool does without indicating appropriate scenarios or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_job_statusC
Get the status of a specific job / Obter o status de um job especifico
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes | The ID of the job to check / O ID do job para verificar |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the action is to 'get' status, implying a read-only operation, but doesn't clarify permissions needed, rate limits, error conditions, or what the status response includes (e.g., pending, completed, failed). This leaves significant gaps for an agent to understand behavioral traits.
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 brief and front-loaded with the core purpose in a single bilingual sentence (English/Portuguese). There's no wasted text, but the bilingual format slightly reduces efficiency for an English-only agent. It remains appropriately sized for a simple tool.
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 no annotations and no output schema, the description is incomplete for a tool that likely returns status details. It doesn't explain what status values to expect, error handling, or how this integrates with sibling tools like 'list_jobs'. For a status-checking tool in a job management context, more contextual information is needed.
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%, with the parameter 'job_id' documented as 'The ID of the job to check'. The description adds no additional meaning beyond this, such as format examples or sourcing instructions. Since the schema fully covers the parameter, the baseline score of 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?
The description clearly states the verb 'get' and resource 'status of a specific job', making the purpose evident. It distinguishes from siblings like 'list_jobs' (which lists multiple jobs) by specifying retrieval of a single job's status. However, it doesn't explicitly differentiate from 'get_report_job_status', which might handle a different job type.
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?
No guidance is provided on when to use this tool versus alternatives like 'list_jobs' (for overview) or 'get_report_job_status' (for report-specific jobs). The description implies usage for checking a specific job's status but offers no context on prerequisites, timing, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_journal_detailsC
Get detailed information about a specific journal / Obter detalhes de um diario
| Name | Required | Description | Default |
|---|---|---|---|
| journal_label | Yes | The journal label | |
| scenario | No | Filter by scenario | |
| year | No | Filter by year | |
| period | No | Filter by period | |
| line_items | No | Include line items (default: true) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but lacks behavioral details. It doesn't disclose whether this is a read-only operation, what permissions are needed, how errors are handled, or the format of returned details. The phrase 'detailed information' is vague and doesn't specify what details are included beyond line items.
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 brief and front-loaded with the primary purpose. The bilingual repetition ('Obter detalhes de um diario') adds redundancy but doesn't significantly impact clarity. It could be more structured by explicitly mentioning key parameters like 'journal_label'.
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 tool with 5 parameters, no annotations, and no output schema, the description is insufficient. It doesn't explain what 'detailed information' includes, how filters interact, or the expected output format. Given the complexity and lack of structured support, more context is needed for effective use.
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 schema fully documents all 5 parameters. The description adds no parameter-specific information beyond implying retrieval of a journal, which is already covered by the tool name and schema. Baseline 3 is appropriate as the schema does the heavy lifting.
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 verb ('Get') and resource ('detailed information about a specific journal'), making the purpose evident. It distinguishes from sibling 'get_journals' (plural) by specifying retrieval of details for a single journal. However, it doesn't explicitly differentiate from other retrieval tools like 'smart_retrieve' or 'query_local_metadata'.
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?
No guidance is provided on when to use this tool versus alternatives. The description doesn't mention prerequisites, context for usage, or compare it to similar tools like 'get_journals' (which likely lists journals) or 'smart_retrieve' (which might retrieve broader data).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_journalsC
Retrieve consolidation journals with optional filters / Obter diarios de consolidacao
| Name | Required | Description | Default |
|---|---|---|---|
| scenario | Yes | Filter by scenario (required, e.g., 'Actual') | |
| year | Yes | Filter by year (required, e.g., 'FY25') | |
| period | Yes | Filter by period (required, e.g., 'Jan', 'Feb', 'Mar') | |
| consolidation | No | Filter by consolidation member (default: 'FCCS_Entity Input') | FCCS_Entity Input |
| view | No | Filter by view (default: 'FCCS_Periodic') | FCCS_Periodic |
| status | No | Filter by status (default: 'Posted'). Valid: 'Working', 'Submitted', 'Approved', 'Rejected', 'Posted' | Posted |
| offset | No | Offset for pagination (default: 0) | |
| limit | No | Limit results (default: 100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions retrieval with filters but fails to describe critical behaviors like pagination handling (implied by offset/limit parameters), authentication needs, rate limits, or what the return format looks like. This is a significant gap for a tool with 8 parameters.
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 a single, efficient sentence that states the core purpose without unnecessary elaboration. However, the bilingual repetition ('Obter diarios de consolidacao') adds minor redundancy, preventing a perfect score.
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 complexity (8 parameters, no output schema, no annotations), the description is inadequate. It lacks details on behavioral traits, output format, error handling, and usage context, leaving significant gaps for an AI agent to understand how to invoke it correctly.
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 schema already documents all parameters thoroughly with descriptions, defaults, and required status. The description adds no additional meaning beyond implying filtering, which is already covered in the schema. Baseline 3 is appropriate when the schema does the heavy lifting.
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 verb ('Retrieve') and resource ('consolidation journals'), and mentions optional filters, which gives a specific purpose. However, it doesn't explicitly differentiate from sibling tools like 'export_journals' or 'get_journal_details', which would require a 5.
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 no guidance on when to use this tool versus alternatives such as 'export_journals' or 'get_journal_details', nor does it mention any prerequisites or exclusions. It only states what the tool does, not when to apply it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_membersC
Get members of a specific dimension / Obter membros de uma dimensao especifica
| Name | Required | Description | Default |
|---|---|---|---|
| dimension_name | Yes | The name of the dimension |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden for behavioral disclosure. It only states the action ('get members') without describing what 'members' are (e.g., dimension items, values), the return format (e.g., list, structured data), potential errors (e.g., invalid dimension name), or system behavior (e.g., read-only, no side effects). For a tool with zero annotation coverage, this is a significant gap in transparency.
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 concise and front-loaded with the primary English statement, followed by a Portuguese translation. The English part is a single, clear sentence that conveys the core purpose without waste. However, the Portuguese translation adds redundancy without value for an AI agent, slightly reducing efficiency.
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 no annotations, no output schema, and a simple parameter (1 param with 100% coverage), the description is incomplete. It lacks details on what 'members' are, the return format, error handling, or behavioral traits (e.g., read-only vs. mutating). For a tool in a context with many siblings (e.g., data retrieval and processing tools), more context is needed to ensure proper use.
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%, with the parameter 'dimension_name' documented as 'The name of the dimension'. The description adds no additional parameter semantics beyond this (e.g., format examples, valid dimension types, or constraints). According to guidelines, with high schema coverage (>80%), the baseline is 3 even without param info in the description, which applies 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 clearly states the tool's purpose: 'Get members of a specific dimension' (verb 'get' + resource 'members' + scope 'specific dimension'). It distinguishes from siblings like 'get_dimensions' (which likely lists dimensions) and 'get_dimension_hierarchy' (which likely shows hierarchical relationships). However, it doesn't explicitly differentiate from 'smart_retrieve' tools that might also retrieve dimension data, keeping it at 4 rather than 5.
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 no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing an existing dimension), exclusions (e.g., not for non-dimension data), or comparisons to siblings like 'get_dimensions' (for listing dimensions) or 'smart_retrieve' tools (for more complex queries). This lack of context leaves the agent to infer usage from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_recent_executionsC
Get recent tool executions that can be rated / Obter execucoes recentes que podem ser avaliadas
| Name | Required | Description | Default |
|---|---|---|---|
| tool_name | No | Optional filter by specific tool name | |
| limit | No | Maximum number of executions to return (default: 10) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but lacks behavioral details. It doesn't disclose whether this is a read-only operation, what authentication is needed, rate limits, pagination behavior, or what 'recent' means temporally. The 'can be rated' hint is vague without explaining rating criteria or process.
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 brief but inefficiently bilingual, repeating the same information in Portuguese without adding value. The single English sentence is front-loaded but could be more precise about scope. The Portuguese translation wastes space without enhancing understanding.
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 tool with no annotations and no output schema, the description is inadequate. It doesn't explain what constitutes 'recent', what 'can be rated' means operationally, the return format, or error conditions. The bilingual approach doesn't compensate for these missing contextual elements.
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 schema fully documents both parameters. The description adds no parameter-specific information beyond implying filtering for rateable executions, which doesn't directly map to the documented 'tool_name' and 'limit' parameters. Baseline 3 is appropriate when schema does the heavy lifting.
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 verb ('Get') and resource ('recent tool executions') with a specific qualifier ('that can be rated'). It distinguishes from siblings like 'list_jobs' or 'get_journal_details' by focusing on rateable executions. However, it doesn't explicitly differentiate from all siblings like 'get_journals' or 'get_job_status' which might also retrieve recent items.
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 no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, timing, or compare to siblings like 'list_jobs' or 'get_job_status' that might retrieve similar data. The bilingual text adds no usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_report_job_statusC
Get status of an asynchronously running report job / Obter status de um job de relatorio
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes | Job ID from async report generation | |
| report_type | No | Report type (default: FCCS) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions the tool is for async report jobs, which implies it's a read-only status check, but it doesn't detail behavioral traits like error handling, rate limits, authentication needs, or what the status response includes. This leaves significant gaps for a tool with no annotation coverage.
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 concise and front-loaded with the primary purpose in English, followed by a Portuguese translation. Both sentences are relevant, but the translation adds minimal value for an AI agent, slightly reducing efficiency. Overall, it's well-structured with zero waste.
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 no annotations and no output schema, the description is incomplete. It doesn't explain what the status response includes (e.g., progress, errors, completion), which is critical for an async job tool. With low behavioral transparency and missing output details, it fails to provide sufficient context for effective use.
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 schema fully documents both parameters (job_id and report_type with enum). The description adds no additional parameter semantics beyond what's in the schema, such as format examples or usage context. Baseline 3 is appropriate when the schema does the heavy lifting.
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 tool's purpose: 'Get status of an asynchronously running report job'. It specifies the verb ('Get status') and resource ('report job'), and the Portuguese translation reinforces this. However, it doesn't explicitly distinguish this from the sibling tool 'get_job_status', which appears to be a more general version, so it misses full sibling differentiation.
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 no guidance on when to use this tool versus alternatives. It doesn't mention the sibling 'get_job_status' or other related tools like 'list_jobs', nor does it specify prerequisites such as needing a job ID from an async operation. Usage is implied by the purpose but not explicitly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_rest_api_versionB
Get the REST API version / Obter a versao da API REST
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only states what the tool does ('Get the REST API version') but doesn't mention whether this is a read-only operation, if it requires authentication, rate limits, or what the return format might be. This is inadequate for a tool with zero annotation coverage.
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 extremely concise with just two language variants in a single line, front-loading the core purpose without any wasted words. Every part of the description directly contributes to understanding the tool's function.
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 simplicity (0 parameters, no output schema, no annotations), the description is minimally adequate but lacks depth. It doesn't explain what the version information includes or how it might be used, which could help an agent understand its role better in context with sibling 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?
The tool has 0 parameters, and the input schema has 100% description coverage (though empty). The description doesn't need to explain parameters, so it appropriately avoids parameter details. A baseline of 4 is given since no parameter information is required or provided.
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 verb 'Get' and the resource 'REST API version' in both English and Portuguese, making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'get_application_info' which might return similar system information, so it doesn't reach the highest score.
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 no guidance on when to use this tool versus alternatives like 'get_application_info' or other sibling tools. There's no mention of context, prerequisites, or exclusions, leaving the agent without usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
import_consolidation_rulesetsC
Import configurable consolidation rulesets / Importar regras de consolidacao
| Name | Required | Description | Default |
|---|---|---|---|
| parameters | No | Import parameters |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool imports rulesets but doesn't describe what happens during import (e.g., overwrites existing rules, validates input, requires specific permissions). No information about side effects, error conditions, or performance characteristics is provided.
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 brief but inefficiently structured with bilingual duplication. The two language versions don't add value and could be condensed. However, it's not excessively verbose.
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 tool with no annotations, no output schema, and a nested object parameter, the description is inadequate. It doesn't explain what consolidation rulesets are, what the import process entails, or what happens after import. The bilingual text doesn't compensate for these gaps.
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 schema documents the single 'parameters' object. The description adds no information about what parameters are expected, their format, or examples. Baseline 3 is appropriate when the schema does the heavy lifting, though the description could have provided context about typical parameter values.
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 the tool imports consolidation rulesets, which is a specific verb+resource. However, it's vague about what 'import' entails (e.g., from where, to where, what format) and doesn't distinguish it from sibling tools like 'import_journals' or 'import_supplementation_data'. The bilingual phrasing adds no clarity.
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?
No guidance is provided on when to use this tool versus alternatives. It doesn't mention prerequisites, dependencies, or typical use cases. The bilingual text doesn't add any contextual information about usage scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
import_journalsC
Import consolidation journals / Importar diarios de consolidacao
| Name | Required | Description | Default |
|---|---|---|---|
| parameters | No | Import parameters |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It mentions 'import' which implies a write/mutation operation, but doesn't specify permissions required, whether it's idempotent, what happens on failure, or any side effects. For a tool that likely modifies data, this is insufficient behavioral context.
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 bilingual repetition ('Import consolidation journals / Importar diarios de consolidacao') adds unnecessary length without value. However, it's still brief overall. The structure could be improved by front-loading the English version and optionally including translation, rather than presenting both equally.
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 tool with no annotations, no output schema, and a nested parameters object, the description is inadequate. It doesn't explain what 'consolidation journals' are, what format they should be in, what the import process entails, or what success/failure looks like. Given the complexity implied by the sibling tools in this financial/consolidation domain, more context is needed.
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 schema already documents the single 'parameters' object. The description adds no information about what specific parameters are needed, their format, or examples. With high schema coverage, the baseline is 3 even without parameter details in the description.
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 the tool imports consolidation journals, which is a clear verb+resource combination. However, it doesn't differentiate from sibling tools like 'import_consolidation_rulesets' or 'import_supplementation_data' - all are import operations but for different resources. The bilingual phrasing adds redundancy without clarifying purpose.
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?
No guidance is provided about when to use this tool versus alternatives. There's no mention of prerequisites, timing considerations, or relationship to sibling tools like 'export_journals' or 'get_journals'. The description offers only the basic function without context for appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
import_supplementation_dataC
Import supplementation data / Importar dados de suplementacao
| Name | Required | Description | Default |
|---|---|---|---|
| parameters | No | Import parameters (period, year, scenario, etc.) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden for behavioral disclosure. 'Import' implies a write/mutation operation, but the description doesn't address permissions needed, whether this overwrites existing data, what happens on failure, or any rate limits. This is inadequate for a mutation tool with zero annotation coverage.
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 technically concise but inefficiently structured. The bilingual repetition adds no value and wastes space that could be used for meaningful context. The single phrase doesn't effectively communicate purpose or usage.
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 an import/mutation tool with no annotations and no output schema, the description is insufficient. It doesn't explain what 'supplementation data' is, what format it expects, what the import does, or what happens after execution. The agent would struggle to use this tool correctly.
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?
With 100% schema description coverage and only one parameter (a nested object), the schema already documents the parameter structure. The description adds no parameter-specific information beyond what the schema provides, but since there's only one parameter and the schema coverage is complete, the baseline is appropriately high.
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 the tool imports supplementation data, which is a clear verb+resource combination. However, it doesn't distinguish this from sibling import tools like import_consolidation_rulesets or import_journals, nor does it specify what 'supplementation data' means in this context. The bilingual format adds no semantic value.
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?
No guidance is provided about when to use this tool versus alternatives. With multiple import tools available (import_consolidation_rulesets, import_journals), the description offers no differentiation or context about appropriate use cases for supplementation data import.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_jobsB
List recent jobs in the FCCS application / Listar jobs recentes na aplicacao FCCS
| 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 full burden but only states the action without behavioral details. It doesn't disclose whether this is read-only, paginated, rate-limited, or what 'recent' means (e.g., time range, count). This leaves significant gaps for a tool with potential data retrieval implications.
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 and efficient with two parallel language phrases, though the Portuguese translation adds redundancy without extra value. It avoids unnecessary elaboration but could be more streamlined.
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 no annotations, no output schema, and a list operation that likely returns structured data, the description is incomplete. It doesn't explain return values, format, or behavioral traits, leaving the agent with insufficient context for reliable use.
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 0 parameters with 100% schema description coverage, so the schema fully documents the lack of inputs. The description adds no parameter information, which is acceptable here, but doesn't compensate for any gaps since none exist.
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 verb ('List') and resource ('recent jobs in the FCCS application'), with a Portuguese translation adding clarity for bilingual contexts. It distinguishes from siblings like 'get_job_status' (status check) and 'get_recent_executions' (executions vs. jobs), though not explicitly named.
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?
No guidance is provided on when to use this tool versus alternatives like 'get_recent_executions' or 'get_job_status'. The description implies it lists recent jobs, but lacks context on frequency, scope, or prerequisites for use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
perform_journal_actionC
Perform an action on a journal (approve, reject, post, etc.) / Executar acao em um diario
| Name | Required | Description | Default |
|---|---|---|---|
| journal_label | Yes | The journal label | |
| action | Yes | Action to perform | |
| parameters | No | Additional parameters |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. While it indicates this performs actions (implying mutation), it doesn't specify critical behavioral aspects like required permissions, whether actions are reversible, what happens on failure, or rate limits. For a mutation tool with zero annotation coverage, this leaves significant gaps in understanding how the tool behaves.
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 brief but includes redundant bilingual text ('/ Executar acao em um diario') that doesn't add value. It's front-loaded with the core purpose but could be more structured to highlight key information. While not verbose, the redundancy slightly reduces efficiency.
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 mutation tool with no annotations and no output schema, the description is incomplete. It doesn't explain what the tool returns, error conditions, or behavioral constraints. Given the complexity implied by an 'action' parameter and nested 'parameters' object, more context is needed to use this tool effectively.
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 schema already documents all three parameters. The description adds no additional meaning about parameters beyond what's in the schema (e.g., it doesn't clarify what specific actions are available or what 'parameters' object should contain). With high schema coverage, the baseline score of 3 is appropriate as the description doesn't compensate but also doesn't detract.
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 the tool performs actions on journals (approve, reject, post, etc.), which is a clear purpose. However, it's somewhat vague about the specific scope of actions and doesn't distinguish this tool from sibling tools like 'update_journal_period' or 'export_journals' that also operate on journals. The bilingual format adds redundancy but doesn't clarify the purpose further.
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 no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, when not to use it, or how it differs from sibling tools like 'update_journal_period' or 'get_journal_details'. The agent must infer usage from the tool name and parameters alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
query_local_metadataC
Query the local metadata cache for dimension members / Consultar cache local de metadados
| Name | Required | Description | Default |
|---|---|---|---|
| dimension | No | Dimension name (e.g., Account, Entity) | |
| member_filter | No | SQL LIKE pattern for member name (e.g., 'FCCS_Net%') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It mentions querying a 'local metadata cache', implying read-only and possibly cached data, but doesn't disclose behavioral traits like performance, data freshness, error handling, or whether it requires specific permissions. This leaves significant gaps for a tool with no annotation coverage.
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 concise and front-loaded, stating the core purpose in a single phrase. However, the bilingual repetition ('Consultar cache local de metadados') adds minor redundancy without adding value, slightly reducing efficiency.
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 no annotations, no output schema, and a tool that queries metadata (which can be complex), the description is incomplete. It lacks details on return values, error conditions, or how it integrates with the system, making it inadequate for informed use by an AI agent.
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 schema already documents both parameters ('dimension' and 'member_filter') with examples. The description adds no additional meaning beyond what the schema provides, such as explaining the cache's scope or how results are structured, resulting in a baseline score.
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 the tool queries a local metadata cache for dimension members, which is a clear purpose. However, it doesn't specify what 'dimension members' are or how this differs from sibling tools like 'get_dimensions' or 'get_members', leaving the distinction vague.
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?
No guidance is provided on when to use this tool versus alternatives. It doesn't mention prerequisites, context, or exclusions, such as when to prefer this over 'get_members' or other metadata-related tools in the sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_business_ruleC
Run a business rule (e.g., Consolidation) / Executar regra de negocio
| Name | Required | Description | Default |
|---|---|---|---|
| rule_name | Yes | The name of the business rule to run | |
| parameters | No | Optional parameters for the rule |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool runs a business rule but doesn't describe what 'run' entails—whether it's a read-only operation, mutates data, requires specific permissions, has side effects, or involves asynchronous processing. This is inadequate for a tool that likely performs significant operations.
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 brief but includes redundant bilingual text ('Executar regra de negocio'), which doesn't add value. It's front-loaded with the core purpose but lacks structure for clarity. While concise, the redundancy slightly detracts from efficiency.
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 no annotations, no output schema, and a tool that likely performs complex operations (e.g., 'Consolidation'), the description is incomplete. It doesn't cover behavioral traits, return values, error handling, or dependencies. The context signals (2 parameters, nested objects) suggest more complexity than described.
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 schema already documents both parameters ('rule_name' and 'parameters'). The description adds no additional meaning beyond what the schema provides, such as examples of rule names or parameter structures. The baseline score of 3 reflects adequate but minimal value addition.
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 tool's purpose: 'Run a business rule' with an example 'Consolidation'. It specifies the verb 'run' and resource 'business rule', distinguishing it from siblings like 'run_data_rule' by focusing on business rules rather than data rules. However, it doesn't explicitly differentiate from all siblings, and the bilingual text adds minor redundancy.
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 no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, appropriate contexts, or exclusions. Given siblings like 'run_data_rule', 'generate_consolidation_process_report', and 'export_consolidation_rulesets', the lack of differentiation leaves the agent without clear usage criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_data_ruleC
Run a Data Management load rule / Executar regra de carga do Data Management
| Name | Required | Description | Default |
|---|---|---|---|
| rule_name | Yes | The name of the data load rule | |
| start_period | Yes | Start period (e.g., 'Jan-23') | |
| end_period | Yes | End period (e.g., 'Jan-23') | |
| import_mode | No | Import mode (default: REPLACE) | |
| export_mode | No | Export mode (default: STORE_DATA) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states the tool runs/executes a rule, implying a write/mutation operation, but doesn't disclose behavioral traits like required permissions, whether it's synchronous/asynchronous, side effects, error handling, or rate limits. This is inadequate for a tool that likely performs data operations.
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 brief but includes bilingual repetition ('Executar regra de carga do Data Management'), which adds redundancy without value. It's front-loaded with the primary purpose but could be more efficient by removing the duplicate translation.
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 no annotations and no output schema, the description is incomplete. It lacks details on behavioral aspects, return values, error conditions, and how it differs from similar tools. For a tool with 5 parameters and likely data mutation, more context is needed to guide effective use.
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 parameters are fully documented in the schema. The description adds no additional parameter semantics beyond implying the tool involves 'data load' rules. Baseline 3 is appropriate as the schema handles parameter documentation adequately.
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 tool's purpose: 'Run a Data Management load rule' specifies the action (run/execute) and resource (data load rule). It distinguishes from siblings like 'run_business_rule' by specifying 'data load' rather than 'business', though the bilingual format adds minor redundancy.
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?
No guidance on when to use this tool versus alternatives is provided. The description doesn't mention prerequisites, appropriate contexts, or comparison with similar tools like 'run_business_rule' or data-related siblings. Usage is implied but not explicitly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
smart_retrieveD
Smart data retrieval with automatic 14-dimension handling / Recuperacao inteligente
| Name | Required | Description | Default |
|---|---|---|---|
| account | Yes | The Account member (e.g., 'FCCS_Net Income') | |
| entity | No | The Entity member (default: 'FCCS_Total Geography') | |
| period | No | The Period member (default: 'Jan') | |
| years | No | The Years member (default: 'FY24') | |
| scenario | No | The Scenario member (default: 'Actual') | |
| consolidation | No | The Consolidation member (default: 'FCCS_Entity Total'). Valid values: 'FCCS_Entity Input', 'FCCS_Entity Consolidation', 'FCCS_Entity Total', 'FCCS_Proportion', 'FCCS_Elimination', 'FCCS_Contribution'. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. The description fails to explain what 'smart' retrieval entails, how the 'automatic 14-dimension handling' works, what data is returned, whether this is a read-only operation, potential side effects, performance characteristics, or error conditions. It provides no actionable behavioral information beyond the vague title.
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 brief (two phrases) but inefficient. The bilingual format ('Recuperacao inteligente') adds no value for an English-speaking AI agent. The phrase 'automatic 14-dimension handling' is cryptic without explanation. While short, it wastes space on redundant or unclear elements rather than providing useful information.
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 complexity implied by 'smart' retrieval and 14-dimension handling, with no annotations and no output schema, the description is severely incomplete. It doesn't explain what makes this retrieval 'smart', what the 14 dimensions are, what data format is returned, or how this differs from simpler retrieval tools. For a potentially complex data retrieval operation, this description leaves critical gaps.
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 schema already documents all 6 parameters thoroughly with descriptions and default values. The description adds no additional parameter information beyond what's in the schema. According to scoring rules, when schema coverage is high (>80%), the baseline is 3 even with no param info in the description.
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 'Smart data retrieval with automatic 14-dimension handling / Recuperacao inteligente' is vague and tautological. 'Smart data retrieval' restates the tool name 'smart_retrieve' without specifying what makes it 'smart' or what data it retrieves. The mention of '14-dimension handling' is unclear without context. It doesn't distinguish this tool from sibling tools like 'smart_retrieve_consolidation_breakdown' or 'smart_retrieve_with_movement'.
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 no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'smart_retrieve_consolidation_breakdown' or 'smart_retrieve_with_movement', nor does it explain what specific scenarios or data types this tool is designed for. There's no indication of prerequisites, constraints, or typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
smart_retrieve_consolidation_breakdownC
Retrieve all Consolidation dimension members (Entity Input, Entity Consolidation, Entity Total, Proportion, Elimination, Contribution) for an entity / Recuperar todos os membros da dimensao Consolidation para uma entidade
| Name | Required | Description | Default |
|---|---|---|---|
| account | Yes | The Account member (e.g., 'FCCS_Net Income') | |
| entity | No | The Entity member (default: 'FCCS_Total Geography') | |
| period | No | The Period member (default: 'Jan') | |
| years | No | The Years member (default: 'FY24') | |
| scenario | No | The Scenario member (default: 'Actual') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states this is a retrieval operation, implying read-only behavior, but doesn't disclose any behavioral traits like authentication requirements, rate limits, pagination, error handling, or what format the data returns in. For a tool with 5 parameters and no output schema, this leaves significant gaps.
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 concise and front-loaded with the English version first. The Portuguese translation adds redundancy but doesn't significantly harm readability. Both sentences directly contribute to stating the tool's purpose without unnecessary elaboration.
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 tool with 5 parameters, no annotations, and no output schema, the description is insufficiently complete. It doesn't explain what the tool returns, how the consolidation dimension members are structured, or provide any behavioral context. The description alone leaves too many unanswered questions for effective tool invocation.
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 all parameters are documented in the schema. The description doesn't add any additional meaning about parameters beyond what's in the schema. It mentions 'entity' generically but doesn't elaborate on the parameter relationships or usage patterns. Baseline 3 is appropriate when the schema does the heavy lifting.
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 tool's purpose: retrieving consolidation dimension members for an entity. It specifies the resource (consolidation dimension members) and the scope (for an entity). However, it doesn't explicitly differentiate from sibling tools like 'smart_retrieve' or 'get_members', which appear to be related retrieval operations.
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 no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'smart_retrieve' or 'get_members', nor does it specify any prerequisites, exclusions, or contextual constraints for usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
smart_retrieve_with_movementC
Smart data retrieval with configurable Movement dimension / Recuperacao inteligente com dimensao Movement customizavel
| Name | Required | Description | Default |
|---|---|---|---|
| account | Yes | The Account member (e.g., 'FCCS_Net Income') | |
| movement | Yes | The Movement member (e.g., 'FCCS_Mvmts_Subtotal') | |
| entity | No | The Entity member (default: 'FCCS_Total Geography') | |
| period | No | The Period member (default: 'Jan') | |
| years | No | The Years member (default: 'FY24') | |
| scenario | No | The Scenario member (default: 'Actual') | |
| consolidation | No | The Consolidation member (default: 'FCCS_Entity Total') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states 'retrieval' implying a read operation, but doesn't clarify if it's safe, has side effects, requires authentication, or handles errors. The bilingual text adds noise without behavioral insights, leaving key operational traits undocumented.
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 inefficiently structured with bilingual repetition ('Smart data retrieval with configurable Movement dimension / Recuperacao inteligente com dimensao Movement customizavel'), which adds no value and wastes space. It lacks front-loading of critical information and could be condensed to a single, clear English phrase without loss of meaning.
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 7 parameters, no annotations, and no output schema, the description is incomplete. It doesn't explain what data is returned, how results are formatted, or any constraints like rate limits. For a data retrieval tool with multiple inputs, more context on behavior and output is needed to guide effective use.
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 schema already documents all 7 parameters with clear descriptions. The description adds no additional meaning beyond implying configurability for 'Movement', which is redundant with the schema. Baseline 3 is appropriate as the schema does the heavy lifting, but the description doesn't enhance understanding.
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 the tool performs 'smart data retrieval' with a 'configurable Movement dimension', which indicates a read operation with customization. However, it's vague about what specific data is retrieved (e.g., financial metrics, reports) and doesn't clearly distinguish from sibling tools like 'smart_retrieve' or 'smart_retrieve_consolidation_breakdown', leaving ambiguity about its unique scope.
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?
No explicit guidance is provided on when to use this tool versus alternatives. The description mentions configurability but doesn't specify scenarios, prerequisites, or exclusions. Without this, users must infer usage from parameter names like 'account' and 'movement', which is insufficient for informed tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
submit_feedbackC
Submit user feedback (rating 1-5 stars) for a tool execution to improve RL learning / Enviar feedback do usuario para melhorar aprendizado RL
| Name | Required | Description | Default |
|---|---|---|---|
| execution_id | Yes | The ID of the tool execution to rate (found in tool result or from get_recent_executions) | |
| rating | Yes | Rating from 1-5 stars (5 = excellent, 4 = good, 3 = average, 2 = poor, 1 = bad) | |
| feedback | No | Optional text feedback about the execution |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states the tool submits feedback but doesn't disclose behavioral traits like whether this is a write operation (implied by 'submit'), if it requires specific permissions, what happens after submission (e.g., confirmation, error handling), or rate limits. The description adds minimal value beyond the basic action.
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 purpose but includes a redundant Portuguese translation that adds no value for an AI agent. The first sentence is efficient, but the second is unnecessary duplication, reducing overall conciseness. It could be trimmed to a single sentence without loss of clarity.
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 mutation tool with no annotations and no output schema, the description is incomplete. It lacks details on behavioral context (e.g., side effects, response format), usage prerequisites, and error handling. While the schema covers parameters well, the description doesn't compensate for missing annotations or output information, leaving gaps for the agent.
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%, with clear documentation for all three parameters (execution_id, rating, feedback). The description adds no parameter-specific semantics beyond what's in the schema—it mentions 'rating 1-5 stars' and 'feedback' generically but doesn't elaborate on usage, formats, or constraints. Baseline 3 is appropriate given the schema's thoroughness.
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 tool's purpose: 'Submit user feedback (rating 1-5 stars) for a tool execution to improve RL learning'. It specifies the verb ('submit'), resource ('user feedback'), and scope ('for a tool execution'), distinguishing it from all sibling tools which are unrelated to feedback submission. The Portuguese translation adds redundancy but doesn't obscure the core purpose.
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 no guidance on when to use this tool versus alternatives. It mentions 'to improve RL learning' as a goal but doesn't specify prerequisites (e.g., needing an execution_id from get_recent_executions), appropriate contexts, or exclusions. The agent must infer usage from the purpose alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_journal_periodC
Update the period of a journal / Atualizar o periodo de um diario
| Name | Required | Description | Default |
|---|---|---|---|
| journal_label | Yes | The journal label | |
| new_period | Yes | New period to set | |
| parameters | No | Additional parameters |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states 'Update' which implies a mutation operation, but doesn't disclose behavioral traits like whether this requires specific permissions, what happens to existing period data, whether changes are reversible, or any rate limits. For a mutation tool with zero annotation coverage, this leaves significant gaps in understanding the tool's behavior.
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 concise with just two parallel phrases in English and Portuguese. Both versions are front-loaded with the essential action and target. While bilingual presentation adds some length, each phrase earns its place by serving different user bases without 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?
For a mutation tool with no annotations and no output schema, the description is insufficiently complete. It doesn't explain what the tool returns, what errors might occur, or important behavioral context. Given the complexity of updating a journal period (which could affect financial reporting or data integrity), more contextual information would be valuable despite the good schema 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%, so the schema already documents all three parameters. The description doesn't add any meaning beyond what's in the schema - it doesn't explain what a 'journal label' represents, what format 'new_period' should be in, or what 'additional parameters' might include. With high schema coverage, the baseline score of 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?
The description clearly states the action ('Update'/'Atualizar') and the resource ('period of a journal'/'periodo de um diario'), providing both English and Portuguese versions. It distinguishes from siblings like 'get_journal_details' or 'perform_journal_action' by specifying the period update function. However, it doesn't explicitly differentiate from other journal-related tools beyond the basic verb+resource pairing.
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 no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing an existing journal), exclusions, or comparisons to sibling tools like 'perform_journal_action' or 'import_journals'. The agent must infer usage from the tool name and parameters alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_metadataC
Validate application metadata / Validar metadados da aplicacao
| Name | Required | Description | Default |
|---|---|---|---|
| log_file_name | No | Optional log file name for results |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states only 'Validate application metadata', which gives no insight into whether this is a read-only operation, what permissions are required, what happens during validation, or what the output might be. For a tool with no annotation coverage, this is completely inadequate.
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 brief but inefficiently structured—it includes a redundant Portuguese translation that adds no value for an AI agent. While short, it fails to front-load critical information, making it appear concise but actually under-specified.
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 no annotations, no output schema, and a vague purpose, the description is insufficient for a tool that likely performs validation (a non-trivial operation). It should explain what 'validation' means in this context, what the expected outcomes are, and how it differs from related tools, but it provides none of this.
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 100% description coverage for its single parameter ('log_file_name'), so the baseline is 3. The description adds no parameter-specific information, but since there is only one optional parameter and the schema fully documents it, the impact is minimal. A score of 4 reflects that the description doesn't detract from the schema's completeness.
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 'Validate application metadata' is a tautology that essentially restates the tool name 'validate_metadata'. It adds a Portuguese translation but provides no specific information about what validation entails, what 'metadata' refers to, or what resources are involved. It fails to distinguish this tool from siblings like 'query_local_metadata' or 'get_application_info'.
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 guidance on when to use this tool versus alternatives. The description offers no context about appropriate scenarios, prerequisites, or exclusions. Given siblings like 'query_local_metadata' and 'get_application_info', the lack of differentiation leaves the agent with no basis for choosing between them.
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.
10 tool updates
v1.0.0- Added
generate_consolidation_process_report - Added
generate_report_script - Added
generate_system_pitch - Changed
get_journals8 fields changed- added
Input schema / properties / consolidationAdded value: +{ + "default": "FCCS_Entity Input", + "description": "Filter by consolidation member (default: 'FCCS_Entity Input')", + "type": "string" +} - changed
Input schema / properties / period / descriptionPrevious value: -"Filter by period"New value: +"Filter by period (required, e.g., 'Jan', 'Feb', 'Mar')" - changed
Input schema / properties / scenario / descriptionPrevious value: -"Filter by scenario"New value: +"Filter by scenario (required, e.g., 'Actual')" - added
Input schema / properties / status / defaultAdded value: +"Posted" - changed
Input schema / properties / status / descriptionPrevious value: -"Filter by status"New value: +"Filter by status (default: 'Posted'). Valid: 'Working', 'Submitted', 'Approved', 'Rejected', 'Posted'" - added
Input schema / properties / viewAdded value: +{ + "default": "FCCS_Periodic", + "description": "Filter by view (default: 'FCCS_Periodic')", + "type": "string" +} - changed
Input schema / properties / year / descriptionPrevious value: -"Filter by year"New value: +"Filter by year (required, e.g., 'FY25')" - added
Input schema / requiredAdded value: +[ + "scenario", + "year", + "period" +]
- Added
get_recent_executions - Added
query_local_metadata - Changed
smart_retrieve1 field changed- added
Input schema / properties / consolidationAdded value: +{ + "description": "The Consolidation member (default: 'FCCS_Entity Total'). Valid values: 'FCCS_Entity Input', 'FCCS_Entity Consolidation', 'FCCS_Entity Total', 'FCCS_Proportion', 'FCCS_Elimination', 'FCCS_Contribution'.", + "type": "string" +}
- Added
smart_retrieve_consolidation_breakdown - Added
smart_retrieve_with_movement - Added
submit_feedback
28 tool updates
- First observed
clear_data - First observed
copy_data - First observed
deploy_form_template - First observed
export_consolidation_rulesets - First observed
export_data_slice - First observed
export_journals - First observed
generate_intercompany_matching_report - First observed
generate_investment_memo - First observed
generate_report - First observed
get_application_info - First observed
get_dimension_hierarchy - First observed
get_dimensions - First observed
get_job_status - First observed
get_journal_details - First observed
get_journals - First observed
get_members - First observed
get_report_job_status - First observed
get_rest_api_version - First observed
import_consolidation_rulesets - First observed
import_journals - First observed
import_supplementation_data - First observed
list_jobs - First observed
perform_journal_action - First observed
run_business_rule - First observed
run_data_rule - First observed
smart_retrieve - First observed
update_journal_period - First observed
validate_metadata
TDQS
Scored across 36 tools
Most tools have distinct purposes, such as clear_data for clearing, copy_data for copying, and generate_report for reporting. However, some overlap exists, like get_journals and get_journal_details both retrieving journal information, which could cause minor confusion. Overall, descriptions help differentiate, but a few tools have unclear boundaries.
Tool names largely follow a consistent verb_noun pattern, such as clear_data, copy_data, and generate_report. There are minor deviations, like smart_retrieve and smart_retrieve_with_movement using adjectives, but the naming remains readable and predictable throughout the set.
With 36 tools, the count is borderline high for an FCCS server, feeling heavy and potentially overwhelming. While it covers various aspects like data management, reporting, and consolidation, it might benefit from consolidation or categorization to improve usability without sacrificing functionality.
The tool set provides comprehensive coverage for FCCS operations, including data management (clear, copy, import, export), reporting (generate various reports), consolidation (rulesets, journals, actions), and system interactions (info, status, metadata). No obvious gaps are present, supporting full CRUD/lifecycle workflows in the domain.
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
Read and edit GA4, Search Console and Google Tag Manager from any MCP client. 29 tools.
Query financial statements, KPIs, ratios, cash forecasts and budgets from your general ledger
Remote MCP for 1,500+ APIs. Vault-managed credentials; OAuth or API key. Search, load, and execute.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables management and configuration of Cisco ACI (Application Centric Infrastructure) fabrics through the APIC REST API, providing 35+ tools for tenant management, network policies, EPGs, bridge domains, VRFs, contracts, and health monitoring.2-
- AlicenseNot gradedqualityAmaintenanceConnect AI agents to Oracle EPM Cloud (Planning, PBCS, EPBCS) via REST APIs. Automate month-end close, run business rules, manage substitution variables, refresh databases, export data slices, and monitor job status through natural language. Built by Fred Mamadjanov, Oracle ACE and EPM Solution Architect.14MIT
- FlicenseNot gradedqualityBmaintenanceEnables interaction with Oracle Cloud Infrastructure through the MCP protocol. Supports dynamic profile selection and provides 85 tools for managing compute, databases, networking, IAM, storage, load balancers, OKE, monitoring, and cost management.-
- AlicenseAqualityAmaintenanceEnables querying and acting on any Acumatica ERP tenant's contract-based REST API through 8 generic tools, covering all entities with read-only by default safety.8MIT