mcp-server-freee
Click on "Deploy 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., "@mcp-server-freee今月の売上を教えて"
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.
mcp-server-freee
日本語
freee会計 MCP Server
AI Agentがfreee会計を直接操作するための Model Context Protocol (MCP) サーバー
日本初のfreee会計向けMCPサーバーです。Claude、ChatGPT、その他のAI Agentからfreee会計APIを安全に呼び出せます。
対応機能
カテゴリ | ツール | 説明 |
事業所 |
| 事業所情報の取得 |
取引 |
| 収入・支出の管理 |
請求書 |
| 請求書の作成・管理 |
勘定科目 |
| 勘定科目一覧 |
取引先 |
| 取引先の管理 |
部門 |
| 部門一覧 |
品目 |
| 品目一覧 |
タグ |
| メモタグ一覧 |
仕訳 |
| 仕訳帳のダウンロード |
口座振替 |
| 振替一覧 |
明細 |
| 自動で経理の明細 |
口座 |
| 口座一覧・残高 |
ユーザー |
| 事業所ユーザー一覧 |
試算表 |
| 貸借対照表・損益計算書 |
経費 |
| 経費申請一覧 |
税区分 |
| 税区分コード一覧 |
セットアップ
1. freee APIアプリ作成
freee Developers でアプリを作成
OAuth 2.0でアクセストークンを取得
2. インストール
npm install @aslink/mcp-server-freeeまたは直接実行:
npx @aslink/mcp-server-freee3. 環境変数
export FREEE_ACCESS_TOKEN="your_access_token_here"4. Claude Desktop設定
claude_desktop_config.json に追加:
{
"mcpServers": {
"freee": {
"command": "npx",
"args": ["@aslink/mcp-server-freee"],
"env": {
"FREEE_ACCESS_TOKEN": "your_access_token_here"
}
}
}
}使用例
Claudeに話しかけるだけ:
「今月の売上を教えて」
「株式会社〇〇への請求書を作成して」
「未決済の取引を一覧して」
「試算表を見せて」
「先月の経費申請を確認して」
ライセンス
MIT — AS LINK
Related MCP server: freee MCP Server
English
freee Accounting MCP Server
Model Context Protocol (MCP) server for AI Agents to interact with freee Accounting API
The first MCP server for freee — Japan's leading cloud accounting SaaS. Enables Claude, ChatGPT, and other AI agents to securely access freee accounting data.
Features
20+ tools covering deals, invoices, partners, journals, trial balance, and more
Full read/write support for core accounting operations
Japanese-native — designed for Japanese business workflows
Secure — uses OAuth 2.0 access tokens, no credentials stored
Quick Start
export FREEE_ACCESS_TOKEN="your_token"
npx @aslink/mcp-server-freeeLicense
MIT — AS LINK
Available Tools
21 toolscreate_dealB
取引(収入・支出)を作成
| Name | Required | Description | Default |
|---|---|---|---|
| type | Yes | 収入/支出 | |
| details | Yes | 取引明細行 | |
| due_date | No | 支払期日 (yyyy-MM-dd) | |
| company_id | Yes | 事業所ID | |
| issue_date | Yes | 発生日 (yyyy-MM-dd) | |
| partner_id | No | 取引先ID | |
| ref_number | No | 管理番号 |
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 'create' and gives no information about side effects, persistence, required permissions, return behavior, or any other operational 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 a single short sentence with no filler or redundancy. It is front-loaded and efficient, even though other dimensions handle the missing 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?
This is a create operation with 7 parameters, no annotations, and no output schema. The one-line description lacks usage guidance, behavioral context, return-value expectations, and any differentiation from related creation tools, so it is not complete enough for an agent to invoke confidently.
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 every parameter is already documented in the schema. The description adds no additional parameter-level meaning beyond what the schema provides, which keeps this at the 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 a specific verb and resource: it creates a transaction (取引) and clarifies the scope as income/expense. This makes the basic purpose clear, though it does not explicitly distinguish it from sibling tools like create_invoice.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: use this tool when creating an income or expense transaction. However, there is no explicit guidance about when not to use it or when to prefer an alternative such as create_invoice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_invoiceD
請求書を作成
| Name | Required | Description | Default |
|---|---|---|---|
| title | No | タイトル | |
| due_date | No | 支払期日 | |
| company_id | Yes | 事業所ID | |
| issue_date | Yes | 発行日 (yyyy-MM-dd) | |
| partner_id | Yes | 取引先ID | |
| booking_date | No | 売上計上日 | |
| invoice_lines | Yes | 請求書明細 | |
| invoice_number | No | 請求書番号 |
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, and it fails: '作成' (create) merely signals a write operation, which is already evident from the tool name. Nothing is disclosed about side effects, validation failures, numbering behavior, or response semantics.
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 short sentence, but this is under-specification rather than deliberate conciseness — there is nothing substantive to structure or front-load. A single phrase cannot carry the required usage and behavioral information, so brevity here is a defect, not a virtue.
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 8 parameters, 4 required, a nested invoice_lines array with per-line requirements (name, quantity, unit_price, tax_code), no output schema, and no annotations, a five-word description is completely inadequate. An agent gets no understanding of valid tax codes, date formats beyond issue_date, or what a successful invocation returns.
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 every parameter having a Japanese label and issue_date including a format hint ('yyyy-MM-dd'). The description adds no parameter-level meaning, but the baseline of 3 applies because the schema already documents the parameters thoroughly.
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 '請求書を作成' is the Japanese equivalent of the tool name 'create_invoice' — a pure tautology that restates the name without adding specifics. There is no mention of scope, behavior, or distinction from siblings like create_deal or create_partner.
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. Sibling tools such as create_deal and create_partner exist, but no criteria, prerequisites, or exclusions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_partnerD
取引先を作成
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | 取引先名 | |
| org_code | No | 法人番号 | |
| long_name | No | 正式名称 | |
| name_kana | No | カナ名称 | |
| shortcut1 | No | ショートカット1 | |
| company_id | Yes | 事業所ID | |
| country_code | No | 国コード (JP等) |
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 merely says 'create' and provides no information about side effects, state mutation, error behavior, idempotency, or permission requirements. This is inadequate 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 extremely short and under-specified. While there is no redundant text, it omits nearly all useful context, so this is not conciseness but sparse inadequacy.
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 7 parameters, 2 required fields, no output schema, and no annotations, a one-line tautology is completely insufficient. The agent cannot understand what a partner is, how company_id relates to the creation, or what the expected outcome is, making safe invocation unlikely.
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% — all 7 parameters have Japanese descriptions in the schema itself. The tool description adds no parameter detail, but the schema already carries that weight, so the baseline 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 '取引先を作成' is essentially a Japanese restatement of the tool name 'create_partner' and offers no definition of what a 取引先 (business partner) is in this system. It states the verb and resource but is tautological, providing no differentiation from siblings like create_deal or create_invoice.
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 such as list_partners or create_deal. The description only states the action and gives no context about prerequisites, typical scenarios, or when another tool would be more appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_companiesA
freeeアカウントに紐づく事業所一覧を取得
| 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. It discloses the read-only nature through the verb 取得 and the list scope through 一覧, but it does not mention any additional behaviors such as pagination, ordering, or required permissions. For a zero-parameter list operation this is minimally adequate.
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, short sentence that front-loads the scope and resource. It contains no filler and every word contributes to the 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 that there are no parameters and no output schema, the description tells the agent that the tool returns a list of companies for the account. It does not specify the structure of each company object, but for a simple list retrieval with no configuration, an agent can invoke it correctly with the information provided.
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 no properties and thus 100% schema coverage is trivial. With zero parameters, the description does not need to explain any parameters, and it does not. The baseline of 4 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 uses a specific verb (取得, 'retrieve') and a specific resource (事業所一覧, 'list of business offices'), and it states the scope (freeeアカウントに紐づく, 'associated with the freee account'). This clearly distinguishes it from the sibling get_company, which targets a single company.
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 conveys that this tool returns all companies for the account, which implies when to use it, but it does not explicitly mention alternatives or exclusions. There is no guidance on when to prefer get_company or other list tools, though the plural naming makes the intent fairly clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_companyB
事業所の詳細情報を取得
| Name | Required | Description | Default |
|---|---|---|---|
| company_id | Yes | 事業所ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full disclosure burden. It only restates the retrieval nature of the tool and does not mention read-only guarantees, error behavior, authentication needs, or what exactly the returned '詳細情報' contains.
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 short Japanese sentence with no filler words or redundant content. The verb and object are front-loaded, making it appropriately compact for a simple one-parameter getter.
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 simple one-parameter schema, the description is minimally viable for invoking the tool. However, with no annotations and no output schema, it leaves room for ambiguity about response format and how this differs from the list-oriented sibling get_companies.
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 fully documents the sole parameter company_id with the description 事業所ID and 100% coverage, so the baseline applies. The description adds no additional meaning about the format, lookup semantics, or edge cases for the parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the action verb 取得 and identifies the resource 事業所の詳細情報, making it clear the tool returns details for a single company. It does not explicitly contrast with sibling get_companies, though the singular/plural naming makes the distinction inferable.
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 get_company versus get_companies or the other list-oriented sibling tools. The description lacks prerequisites, exclusions, or a typical call sequence, 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.
get_dealA
取引の詳細を取得
| Name | Required | Description | Default |
|---|---|---|---|
| deal_id | Yes | 取引ID | |
| company_id | Yes | 事業所ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. The verb '取得' (retrieve) clearly indicates a read-only operation, which is the most important behavioral trait. However, the description does not disclose what exactly is returned, how errors are signaled, or any other behavioral nuances; this is acceptable for a simple getter but not richly transparent.
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 concise sentence that is front-loaded with the core action and resource. There is no redundant or filler content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter getter with fully documented parameters, the description is nearly sufficient. It clearly indicates that deal details will be retrieved, though it does not explicitly state the return format or why company_id is needed. Since there is no output schema, a tiny bit more detail about the response could be helpful, but it remains adequate for the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: deal_id is described as '取引ID' and company_id as '事業所ID'. The description adds no additional parameter semantics beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description '取引の詳細を取得' clearly states a specific verb (get) and resource (deal details). It is unambiguous and semantically distinguishes this tool from list_deals (which lists deals) and create_deal (which creates a deal).
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 gives no guidance on when to use this tool versus alternatives such as list_deals or get_company. There is no mention of the condition that a specific deal_id is needed, nor any exclusion of cases where list_deals would be more appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_trial_balanceC
試算表を取得(貸借対照表/損益計算書)
| Name | Required | Description | Default |
|---|---|---|---|
| end_month | No | 終了月 (1-12) | |
| company_id | Yes | 事業所ID | |
| fiscal_year | No | 会計年度 | |
| start_month | No | 開始月 (1-12) |
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 restates the purpose and offers no explanation of read-only semantics, period interpretation, defaults, authentication needs, or return format. The 'get' prefix implies read-only but this is implicit rather than stated.
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 concise sentence with no filler. It is front-loaded with the core action and resource, making it easy for an agent to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description should compensate by explaining return values, default period behavior, or how fiscal_year and start/end_month interact. It does none of this, so an agent only has the parameter names and the minimal one-line purpose to work with.
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 four parameters already have meaningful descriptions such as 事業所ID, 会計年度, and 開始月/終了月. The tool description adds no additional parameter semantics, but the baseline of 3 is appropriate because the schema handles the parameter 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 clearly states the tool retrieves a trial balance, with a parenthetical indicating balance sheet and profit/loss statement scope. The verb 取得 is specific and the resource 試算表 is recognizable, but it does not explicitly differentiate from sibling tools such as list_journals or list_account_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?
There is no guidance on when to use this tool versus alternatives. The description gives no exclusions, prerequisites, or hints about whether this tool is preferred for report-style data versus other listing tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_account_itemsC
勘定科目一覧を取得
| Name | Required | Description | Default |
|---|---|---|---|
| base_date | No | 基準日 (yyyy-MM-dd) | |
| company_id | Yes | 事業所ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavior. It indicates a read-only retrieval action, but it does not mention pagination, ordering, permissions, base_date semantics, or what fields are returned in the response.
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, short, front-loaded sentence with no wasted words. It is appropriately minimal, though the brevity means it provides little beyond the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with two parameters, the description is minimally adequate. However, with no output schema and no annotations, the agent would benefit from knowing what an account item is, how base_date affects results, and the shape of the returned list.
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 both base_date and company_id already described in the schema. The description adds no additional parameter meaning, so it earns the baseline score but does not improve on 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 states a specific verb (取得 = get) and resource (勘定科目一覧 = list of account items), so an agent can tell it retrieves a chart-of-accounts list. It does not explicitly differentiate from sibling list_items, but the term 勘定科目 clearly targets accounting account items rather than generic 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 such as list_items, list_deals, or get_trial_balance. There are no context cues, exclusion conditions, or scenario-based instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_dealsC
取引(収入・支出)一覧を取得
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | 収入/支出 | |
| limit | No | 取得件数 (max 100) | |
| offset | No | オフセット | |
| status | No | 決済状況 | |
| company_id | Yes | 事業所ID | |
| partner_id | No | 取引先ID | |
| end_issue_date | No | 発生日To (yyyy-MM-dd) | |
| start_issue_date | No | 発生日From (yyyy-MM-dd) |
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 says 'get a list' and does not disclose pagination behavior, default limits, ordering, response shape, or whether the list includes both income and expense unless filtered. This is minimal coverage for a list operation with eight 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 short sentence with no filler, and the core action and resource are front-loaded. However, it is so terse that it omits useful context; this is more under-specification than ideal conciseness, but it is still clean and scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has eight parameters, no annotations, no output schema, and a one-line description. It does not explain return value structure, filtering semantics, pagination, or how this list relates to the many sibling list tools. The schema covers parameters, but the overall description is not sufficient for an agent to confidently select and invoke this tool correctly in 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 parameters are fully documented in the schema. The description's mention of 'income/expense' lightly reinforces the type parameter but does not add meaningful semantics beyond what the schema already provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that this tool retrieves a list of deals (income/expense), which identifies the resource and the list operation. It does not explicitly distinguish itself from sibling tools like get_deal, but the list vs. single-record distinction is implicit and reasonably clear.
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 siblings such as list_invoices, list_expense_applications, or get_deal. The available filter parameters in the schema imply common use cases, but the description itself offers no context, exclusions, or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_expense_applicationsC
経費申請一覧を取得
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| offset | No | ||
| status | No | ステータス (draft/in_progress/approved/rejected) | |
| company_id | Yes | 事業所ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure, but it only says 'get list', which implies a read operation without explaining pagination, status filtering, or the required company_id. It communicates the core action but omits nearly all behavioral context an agent needs.
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, front-loaded sentence with no wasted words. It is concise and readable, though too terse to provide meaningful behavioral or parameter guidance, which prevents a higher 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?
There is no output schema and no annotations, and the tool has four parameters including a required company_id. The description omits required inputs, pagination behavior, and return format, leaving an agent to infer too much for a reliable call.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 50%: status and company_id have descriptions, while limit and offset do not. The tool description mentions no parameters at all, so it does not compensate for the undocumented limit/offset fields or clarify how they interact.
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 operation (取得) and the resource (経費申請一覧), which is enough to identify what the tool does. The resource name distinguishes it from sibling list tools such as list_deals or list_invoices, though the description adds little beyond the tool name itself.
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 given on when to use this tool versus alternatives, nor any exclusions or prerequisites. The only usage signal is the resource name, so an agent must infer context from sibling names and the parameter schema.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_invoicesC
請求書一覧を取得
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| offset | No | ||
| company_id | Yes | 事業所ID | |
| partner_id | No | 取引先ID | |
| end_issue_date | No | 発行日To | |
| invoice_status | No | ステータス | |
| payment_status | No | 入金ステータス | |
| start_issue_date | No | 発行日From |
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 implies a read-only retrieval operation but discloses nothing about pagination, required company_id, filters, result limits, or response format. The description adds no behavioral context beyond what the tool name already communicates.
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 short sentence with no filler, front-loading the core operation. It is appropriately concise for a simple list action, though it borders on under-specification given the number of parameters and lack of annotations.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 8 parameters, no output schema, and no annotations, a one-phrase description is insufficient. The agent gets no context about the required company_id, how filters interact, pagination behavior, or what the return value looks like. The schema helps document parameters, but the overall tool context remains thin.
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 already describes 6 of 8 parameters (company_id, partner_id, date range, statuses), so the description does not need to repeat them. However, limit and offset lack descriptions, and the description adds no guidance about parameter combinations or required filtering behavior. The score stays at the baseline because schema coverage is moderately high but not complete.
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 operation clearly: '請求書一覧を取得' means 'retrieve invoice list.' The verb and resource are specific, and it is distinguishable from create_invoice by the retrieval/list semantics. However, it does not explicitly differentiate itself from other list-type siblings like list_deals, so it misses the top 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?
There is no guidance about when to use this tool versus alternatives, no mention of prerequisites, and no exclusions. Usage is only implied by the verb/resource combination, providing no practical routing information for an agent choosing among many sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_itemsC
品目一覧を取得
| Name | Required | Description | Default |
|---|---|---|---|
| company_id | Yes | 事業所ID |
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, but it only says 'get list' and reveals nothing about pagination, scoping, permissions, or side effects. The verb '取得' (get) implies a read operation, but no additional behavioral context 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 a single, front-loaded Japanese phrase with no filler or redundant clauses. It is concise without being a tautology, though it is so sparse that it sacrifices informational completeness.
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 output schema and no annotations, the description is too thin: it neither explains what kind of items are returned, nor how the required company_id scopes the list, nor what the response looks like. The single phrase is adequate for a rough idea but leaves important context unspecified.
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%: the only parameter, company_id, is described as '事業所ID' (office ID) in the schema. The tool description adds no parameter-level detail, so it earns the baseline score with the schema doing 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 Japanese description '品目一覧を取得' ('retrieve item list') states a specific verb and resource, so an agent understands it fetches a list of items. However, it does not distinguish this from siblings like list_account_items or list_deals, leaving the exact type of 'items' ambiguous.
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 gives no guidance on when to use this tool versus alternatives; it simply names the operation. There are no explicit conditions, exclusions, or sibling references such as list_account_items, so an agent must infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_journalsA
仕訳帳をダウンロード(非同期)。まずリクエストを送信し、ステータスを確認してからダウンロード
| Name | Required | Description | Default |
|---|---|---|---|
| end_date | No | 終了日 (yyyy-MM-dd) | |
| company_id | Yes | 事業所ID | |
| start_date | No | 開始日 (yyyy-MM-dd) |
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 explicitly discloses that the operation is asynchronous and outlines the expected sequence: request, status check, then download. This is meaningful behavioral context beyond what the schema provides. However, the description does not clarify what the initial response contains, how the status is checked, or what the actual download artifact looks like, keeping it from a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences: the first front-loads the core purpose and the async nature, the second gives the minimal workflow. Every word earns its place and there is no redundancy. The structure is easy to parse and quickly conveys the essential behavior.
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 is asynchronous, lacks an output schema, and has no annotations, the description is only partially complete. It names the workflow steps but does not explain how the status check is performed, what a success response looks like, or whether this tool returns a job ID. For a tool with such a non-trivial async flow, more detail about the expected intermediate and final responses would be needed for fully autonomous 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 each parameter (company_id, start_date, end_date) having a reasonable description with format and purpose. The tool description does not add any parameter-level semantics, so a baseline of 3 is appropriate. The async workflow is not tied to any specific parameter, which is fine because the parameters are simple date filters and an identifier.
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 with a specific verb and resource: '仕訳帳をダウンロード' (download journal). It also adds the key qualifier '非同期' (asynchronous), which distinguishes it from the sibling list_* tools that are presumably synchronous reads. This is more than a tautology and helps an agent understand the operation at a glance.
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 a workflow hint ('まずリクエストを送信し、ステータスを確認してからダウンロード' – first send request, check status, then download), but gives no guidance on when to choose this tool over the many sibling tools (list_deals, list_transfers, get_trial_balance, etc.). There are no exclusion criteria or alternative pointers, so an agent must infer usage context from the resource name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_partnersC
取引先一覧を取得
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| offset | No | ||
| keyword | No | 検索キーワード | |
| company_id | Yes | 事業所ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full behavioral burden. It only states that a list is retrieved, but says nothing about pagination via limit/offset, scoping by company_id, or response 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 a single short sentence with no filler, making it easy to scan. However, it is underspecified and sacrifices useful behavioral context for 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?
With no annotations, no output schema, and four parameters, a one-line description is incomplete. It omits the required company_id scope, pagination semantics, and expected return shape, leaving the agent to infer important invocation details.
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 describes only company_id and keyword, leaving limit and offset undocumented (50% coverage). The description adds no parameter meaning and does not compensate for the undocumented pagination 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 a specific action (retrieve a list) and a specific resource (取引先/partners), so the agent can distinguish it from create_partner and other list tools. It does not explicitly call out sibling differentiation, but the resource is unambiguous.
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 verb '一覧を取得' implies this tool is for retrieving a partner list, but there is no explicit when/when-not guidance or mention of alternatives. No exclusions are stated, and the agent must infer usage from the tool name and description alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_sectionsC
部門一覧を取得
| Name | Required | Description | Default |
|---|---|---|---|
| company_id | Yes | 事業所ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the full behavioral disclosure burden. It only says 'get list,' which implies a read operation, but it does not disclose pagination, ordering, filtering behavior, permissions, or the absence of side effects. This is minimal information for an agent selecting the 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 extremely concise and front-loaded, with no filler or redundant words. It is easy to parse, though slightly terse; a bit more behavioral or contextual detail would make it more appropriately sized for agent decision-making.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter list tool, this is minimally viable: it names the resource and the schema covers the required parameter. However, there is no output schema and no annotations, and the description does not describe return fields, pagination, ordering, or edge cases, leaving meaningful 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?
The input schema already documents company_id as '事業所ID' with 100% coverage. The description adds no additional parameter-level semantics, so the baseline score of 3 applies. The description does not help clarify what company_id means beyond what the schema already states.
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 a specific operation: obtaining a list of departments (部門一覧を取得). It identifies both the verb and the resource, so an agent can understand what the tool does. However, it does not explicitly differentiate this tool from sibling list_* tools or mention scoping beyond the required company_id.
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 does not mention that company_id is required to scope the result, nor does it reference related tools such as get_companies. The usage context is only implied by the phrase 'list of departments.'
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_tagsB
メモタグ一覧を取得
| Name | Required | Description | Default |
|---|---|---|---|
| company_id | Yes | 事業所ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure, but it only states 'get memo tag list' — essentially restating the function. It does not disclose whether the operation is read-only (beyond the word '取得'), how results are ordered or paginated, or how errors are handled.
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, front-loaded sentence with no filler, redundancy, or unnecessary detail. It is appropriately sized for a simple list operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter list tool, the description is minimally viable: it names the operation and resource. However, with no output schema and no behavioral notes, the agent is left without information about the shape of the returned tag list or any filtering semantics beyond company_id.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already documents the only parameter, company_id, with a description ('事業所ID'), and schema description coverage is 100%. The tool description adds no additional meaning to the parameter, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the operation ('取得', retrieve) and the resource ('メモタグ', memo tags), so an agent can tell this lists memo tags. It is distinguishable from sibling list_* tools by the unique resource, though it does not explicitly contrast with any alternative.
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 usage guidance is provided. The description does not mention when to use this tool versus any alternative, nor does it give prerequisites or exclusions. An agent must infer applicability solely from the resource name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_taxesA
税区分コード一覧を取得
| Name | Required | Description | Default |
|---|---|---|---|
| company_id | Yes | 事業所ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the behavioral burden. '取得' and '一覧' convey read-only list retrieval, which is a basic behavioral trait. However, the description does not mention response structure, pagination, or scope beyond the schema, so transparency is adequate but minimal.
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 one short, focused sentence with no filler. It front-loads the resource and action and is appropriately sized for a simple list 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?
For a one-parameter list tool, the description identifies the purpose and the schema covers the required parameter. However, with no output schema or annotations, the return structure and broader usage context remain unspecified, leaving a moderate completeness gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter company_id is fully documented in the schema with type and description (事業所ID), giving 100% schema coverage. The description adds no parameter-level meaning beyond what the schema already provides, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description is '税区分コード一覧を取得' — a specific verb (取得) and resource (税区分コード一覧). It unambiguously identifies a list of tax classification codes and is distinguishable from all sibling tools, none of which target tax codes.
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 when-to-use or alternative guidance is given. The usage is implied: this tool should be used when a list of tax classification codes is needed. Since there is no direct sibling overlap, the lack of exclusions is not critical, but the guidance is still only implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_transfersC
口座振替一覧を取得
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| offset | No | ||
| end_date | No | ||
| company_id | Yes | 事業所ID | |
| start_date | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden of behavioral disclosure. It states only that the tool retrieves a list, omitting critical behaviors like pagination, date filtering, scoping by company_id, and response format. No side effects, authorization requirements, or limitations are disclosed, leaving agents to guess at runtime expectations.
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 single-sentence description is efficient and front-loaded, but it sacrifices substance for brevity. While there is no redundant wording, the description is under-specified rather than appropriately concise, offering only the basic purpose and nothing else.
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 five parameters, no output schema, and no annotations, the description is insufficient for correct tool invocation. It does not explain the meaning or format of date and pagination parameters, whether any parameters beyond company_id are required, or what the response contains. The description is not complete enough for reliable 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?
Schema coverage is only 20%, with just company_id having a description. The description adds no information about limit, offset, start_date, or end_date, leaving their meanings and formats entirely unspecified. This is a major gap because the agent cannot determine how to construct valid filtering or pagination arguments.
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 a specific verb (取得, get) and resource (口座振替, account transfers), indicating a list operation. It is distinct enough from siblings like list_wallet_txns, though it does not explicitly differentiate itself or name alternatives. The Japanese phrasing is concise and unambiguous for the intended audience.
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 such as list_wallet_txns or list_invoices. There is no mention of business context, prerequisites, or scenarios where another tool would be more appropriate. An agent must rely solely on the tool name to infer applicability.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_usersB
事業所のユーザー一覧を取得
| Name | Required | Description | Default |
|---|---|---|---|
| company_id | Yes | 事業所ID |
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 says 'get list', which implies a read-only operation, but it does not mention pagination, sorting, active/inactive user filtering, required permissions, or the response shape. This lack of behavioral detail makes it hard for an agent to anticipate side effects or output variations.
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?
A single short sentence conveys the operation and resource with no filler. It is completely front-loaded and appropriately sized for a simple one-parameter list 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?
For a simple list-by-company tool, the core information is present: what it does and the required parameter. However, with no output schema and no behavioral notes, the agent lacks information about the response format or any list limitations (e.g., pagination). It is adequate for basic invocation but leaves meaningful 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 company_id is already documented as '事業所ID'. The description adds no extra meaning to the parameter. Baseline 3 applies because the schema fully handles parameter semantics.
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 (get list) and resource (users of a business office). It differentiates from sibling tools like list_partners or list_account_items because no other sibling targets users. It does not explain what 'user' means or whether the list is scoped beyond company_id, so it is not 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?
No explicit when-to-use or alternative guidance is provided. However, the wording 'ユーザー一覧を取得' implies this is the tool to use when a list of users for a business office is needed. Since the sibling list shows no other user-listing tool, the usage context is inferable, but it is not explicitly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_walletablesC
口座一覧を取得
| Name | Required | Description | Default |
|---|---|---|---|
| company_id | Yes | 事業所ID | |
| with_balance | No | 残高情報を含む |
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 only states that a list is retrieved, which implies a read operation, but it does not disclose pagination behavior, required company scoping, whether with_balance changes the response shape, or any authentication/permission requirements.
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 short Japanese phrase with no wasted words. It front-loads the core action and resource immediately, making it easy to scan.
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 output schema and no annotations, the description is too sparse to fully prepare an agent. It does not clarify what 'walletables' are, how this differs from list_wallet_txns, what the returned list looks like, or the impact of with_balance. The agent can form a basic call from the schema but not a complete mental model.
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 both company_id and with_balance documented in the input schema. The description adds no additional parameter meaning beyond what the schema already provides, so 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 '口座一覧を取得' ('retrieve list of accounts') clearly states a specific verb and resource, making the tool's basic function obvious. It does not explicitly differentiate itself from sibling tools like list_wallet_txns, but the resource naming is distinct enough to avoid outright confusion.
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 given about when to use this tool versus alternatives such as list_wallet_txns or get_trial_balance. An agent must infer usage from the name alone, with no exclusions or context clues about which tool fits which scenario.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_wallet_txnsC
明細(自動で経理)一覧を取得
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| offset | No | ||
| end_date | No | ||
| company_id | Yes | 事業所ID | |
| start_date | No | ||
| walletable_id | No | ||
| walletable_type | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden for behavioral disclosure. It conveys that the tool reads a list, but it does not disclose pagination behavior, filtering semantics, or whether walletable_id/walletable_type are required to scope the query.
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 concise sentence with no redundant wording, but it is too under-specified to be considered well-structured for a 7-parameter tool. It is short rather than appropriately sized.
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 output schema, no annotations, low schema coverage, and many sibling list tools, one phrase '明細一覧を取得' is severely incomplete. It lacks return-value context, parameter guidance, and alternatives.
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 only 14% (only company_id has a description), and the description itself adds no parameter meaning. With 7 parameters and no schema/description coverage, an agent cannot infer the purpose of limit, offset, start_date, end_date, walletable_id, or walletable_type from the text.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a list-retrieval operation (明細...一覧を取得) that aligns with the tool name list_wallet_txns, so an agent can infer it returns wallet transaction details. It does not explicitly differentiate from siblings such as list_transfers or list_deals, but the verb and resource are clear.
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 choose this tool over list_walletables, list_transfers, or list_deals, and no mention of required filters like company_id or walletable_type. Usage context is only implied by the word 'list'.
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.
21 tool updates
v0.1.0- First observed
create_deal - First observed
create_invoice - First observed
create_partner - First observed
get_companies - First observed
get_company - First observed
get_deal - First observed
get_trial_balance - First observed
list_account_items - First observed
list_deals - First observed
list_expense_applications - First observed
list_invoices - First observed
list_items - First observed
list_journals - First observed
list_partners - First observed
list_sections - First observed
list_tags - First observed
list_taxes - First observed
list_transfers - First observed
list_users - First observed
list_wallet_txns - First observed
list_walletables
TDQS
Scored across 21 tools
Most tools target distinct resources (deals, invoices, partners, accounts, etc.) and are clearly named. Some potential confusion exists between get_companies and the list_* pattern, and between list_deals, list_wallet_txns, and list_journals, but descriptions generally clarify the differences.
The naming pattern is mostly consistent: list_* for collection endpoints, get_* for detail, and create_* for creation. However, get_companies breaks the list_* convention used by similar collection endpoints, and list_wallet_txns uses an inconsistent abbreviation.
With 21 tools, the server is on the heavy side but covers a broad accounting domain. The count is borderline: it includes many list endpoints that are individually useful, but the overall surface feels large for what is still an incomplete API wrapper.
The server provides broad read coverage for many Freee entities but lacks obvious lifecycle operations: no update or delete for deals, partners, or invoices, and no get_invoice detail endpoint. Significant operations like creating/updating expense applications and managing companies are also missing, which will create dead ends for agents.
Maintenance
Related MCP Connectors
AI agents for bookkeeping, reconciliation, and financial close for SMBs.
Malaysian SME accounting, e-Invoice and payroll for your AI. 64 tools; writes are approved drafts.
- mcp-serverOAuthcom.make
Give your AI agents the tools to build, manage, and run automation workflows.
- BankSyncOAuthio.banksync
Connect AI agents to bank accounts, transactions, balances, and investments.
Related MCP Servers
- -licenseNot gradedqualityNot gradedmaintenanceEnables AI assistants to access and manage accounting data through the freee accounting API, supporting operations like transaction management, financial analysis, and account item management.280 npm1-
- AlicenseNot gradedqualityDmaintenanceEnables Claude to interact with freee accounting software through OAuth 2.0 authentication, supporting operations like transaction creation, account management, receipt uploads, and financial statement retrieval.MIT
- AlicenseAqualityBmaintenanceEnables individual proprietors and freelancers to manage daily accounting tasks like journal entries, invoice creation, and monthly reconciliation through simple tool calls, using freee's API.74 npmMIT
- AlicenseBqualityDmaintenanceEnables AI assistants to interact with freee accounting software API for managing companies, transactions, invoices, and reports via OAuth authentication.605,036 npm3MIT