Skip to main content
Glama
yone-k

Zaim API MCP Server

by yone-k

Zaim API MCP Server

English README

Zaim APIとの連携を可能にするMCP (Model Context Protocol) サーバーです。OAuth 1.0a認証を使用してZaimの家計簿データの取得・操作を行います。

特徴

  • Zaim API(OAuth 1.0a)との完全な統合

  • 14個の包括的なツールセット

  • 家計簿データの取得・作成・更新・削除

  • マスターデータ(カテゴリ、ジャンル、口座、通貨)の取得

  • TypeScriptベースの型安全な実装

  • Zodスキーマによる厳密なバリデーション

  • 包括的なテストカバレッジ(128テスト)

  • Dockerサポート

Related MCP server: freee MCP Server

実装済みツール

認証・ユーザー情報

  • zaim_check_auth_status - 認証状態の確認

  • zaim_get_user_info - ユーザー情報の取得

家計簿データ操作

  • zaim_get_money_records - 家計簿記録の取得(フィルタリング・ページネーション対応)

  • zaim_create_payment - 支出記録の作成

  • zaim_create_income - 収入記録の作成

  • zaim_create_transfer - 振替記録の作成

  • zaim_update_money_record - 既存記録の更新

  • zaim_delete_money_record - 記録の削除

マスターデータ取得

  • zaim_get_user_categories - ユーザーカテゴリ一覧

  • zaim_get_user_genres - ユーザージャンル一覧

  • zaim_get_user_accounts - ユーザー口座一覧

  • zaim_get_default_categories - デフォルトカテゴリ一覧

  • zaim_get_default_genres - デフォルトジャンル一覧

  • zaim_get_currencies - 利用可能通貨一覧

要件

  • Docker(推奨)

  • Node.js 22+(ローカル開発時)

  • Zaim APIのOAuth認証情報

    • Consumer Key

    • Consumer Secret

    • Access Token

    • Access Token Secret

環境変数設定

# 必須:Zaim API認証情報
ZAIM_CONSUMER_KEY=your_consumer_key
ZAIM_CONSUMER_SECRET=your_consumer_secret
ZAIM_ACCESS_TOKEN=your_access_token
ZAIM_ACCESS_TOKEN_SECRET=your_access_token_secret

インストール

Dockerを使用(推奨)

# リポジトリをクローン
git clone https://github.com/yone-k/zaim-api-mcp.git
cd zaim-api-mcp

# Dockerイメージをビルド
docker build -t zaim-api-mcp .

ローカル開発

# 依存関係をインストール
npm install

# 開発モードで開始
npm run dev

# テスト実行
npm test

# ビルド
npm run build

Claude Desktop設定

1. 設定ファイルの場所

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json

2. Docker設定(推奨)

{
  "mcpServers": {
    "zaim-api": {
      "command": "docker",
      "args": [
        "run", 
        "--rm", 
        "-i",
        "-e", "ZAIM_CONSUMER_KEY=your_consumer_key",
        "-e", "ZAIM_CONSUMER_SECRET=your_consumer_secret",
        "-e", "ZAIM_ACCESS_TOKEN=your_access_token",
        "-e", "ZAIM_ACCESS_TOKEN_SECRET=your_access_token_secret",
        "zaim-api-mcp"
      ]
    }
  }
}

3. ローカルビルド設定

{
  "mcpServers": {
    "zaim-api": {
      "command": "node",
      "args": ["/path/to/zaim-api-mcp/dist/index.js"],
      "env": {
        "ZAIM_CONSUMER_KEY": "your_consumer_key",
        "ZAIM_CONSUMER_SECRET": "your_consumer_secret",
        "ZAIM_ACCESS_TOKEN": "your_access_token",
        "ZAIM_ACCESS_TOKEN_SECRET": "your_access_token_secret"
      }
    }
  }
}

使用例

認証状態の確認

zaim_check_auth_status を使って認証が正しく設定されているか確認してください

家計簿データの取得

zaim_get_money_records を使って、2024年1月の支出記録を取得してください

支出の記録

zaim_create_payment を使って、本日1,500円の昼食代を食費カテゴリで記録してください

カテゴリ一覧の取得

zaim_get_user_categories を使って利用可能なカテゴリ一覧を表示してください

API設定

config/zaim-config.jsonで詳細な設定が可能です:

  • APIタイムアウト設定

  • レート制限設定

  • キャッシュ設定

  • ログレベル設定

プロジェクト構造

zaim-api-mcp/
├── src/
│   ├── core/              # MCPサーバーコア機能
│   │   ├── tool-handler.ts
│   │   └── zaim-api-client.ts
│   ├── tools/             # ツール実装
│   │   ├── auth/          # 認証関連ツール
│   │   ├── money/         # 家計簿データツール
│   │   ├── master/        # マスターデータツール
│   │   └── registry.ts    # ツール登録
│   ├── types/             # 型定義
│   ├── utils/             # ユーティリティ
│   └── index.ts           # エントリーポイント
├── tests/                 # テストファイル
├── config/                # 設定ファイル
└── docker-compose.yml     # Docker設定

開発ガイド

Git ワークフロー

  1. 機能ごとにブランチを作成

  2. TDD(テスト駆動開発)で実装

  3. すべてのテストが通ることを確認

  4. プルリクエストを作成

コミットメッセージ規約

feat: 新機能の追加
fix: バグ修正
docs: ドキュメントの変更
refactor: リファクタリング
test: テストの追加・修正
chore: ビルドプロセスやツールの変更

利用可能なスクリプト

npm run build          # TypeScriptビルド
npm run start          # 本番サーバー起動
npm run dev            # 開発サーバー起動
npm run lint           # ESLint実行
npm run typecheck      # 型チェック
npm test               # テスト実行
npm run test:watch     # テスト監視モード
npm run test:coverage  # カバレッジレポート
npm run docker:build   # Dockerイメージビルド
npm run docker:run     # Dockerコンテナ実行
npm run docker:dev     # Docker Compose起動

トラブルシューティング

認証エラー

  • 環境変数が正しく設定されているか確認

  • Zaim開発者サイトでアプリケーションの設定を確認

  • アクセストークンの有効期限を確認

Docker関連

  • Dockerデーモンが起動しているか確認

  • 環境変数が正しく渡されているか確認

  • ログで詳細なエラーメッセージを確認

貢献

  1. リポジトリをフォーク

  2. フィーチャーブランチを作成 (git checkout -b feat/amazing-feature)

  3. 変更をコミット (git commit -m 'feat: 素晴らしい機能を追加')

  4. ブランチをプッシュ (git push origin feat/amazing-feature)

  5. プルリクエストを作成

ライセンス

MITライセンス - 詳細はLICENSEファイルを参照してください。

関連リンク

Available Tools

14 tools
zaim_check_auth_statusB

Zaim APIの認証状態をチェックし、アクセストークンの有効性を確認します

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior2/5

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 states what the tool does but doesn't describe important behavioral aspects: what 'checking' entails (e.g., makes a test API call), what happens if authentication fails, whether this consumes rate limits, or what the response looks like. The description is minimal and lacks operational context.

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

Conciseness5/5

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

The description is a single, efficient Japanese sentence that directly states the tool's purpose with zero wasted words. It's appropriately sized for a simple authentication check tool and is front-loaded with the essential information.

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

Completeness2/5

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

For a tool with no annotations and no output schema, the description is insufficiently complete. It doesn't explain what the check returns (e.g., token expiry time, user info, success/failure status) or how the agent should interpret results. Given the authentication context and lack of structured output documentation, more completeness is needed.

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

Parameters4/5

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

The tool has zero parameters (schema coverage 100%), so there are no parameters to document. The description appropriately doesn't discuss parameters, which is correct for a parameterless tool. Baseline score for zero parameters is 4.

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

Purpose4/5

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

The description clearly states the tool's purpose: checking Zaim API authentication status and verifying access token validity. It specifies the verb ('check'/'verify') and resource ('authentication status'/'access token'), but doesn't explicitly differentiate from sibling tools (though it's the only auth-related tool in the list).

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

Usage Guidelines2/5

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 (like needing to authenticate first), error conditions, or typical use cases (e.g., before making other API calls). The agent must 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.

zaim_create_incomeC

Zaimに収入記録を作成します

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYes金額
dateYes日付(YYYY-MM-DD形式)
category_idYesカテゴリID
to_account_idNo入金先口座ID
placeNo場所・会社名
commentNoメモ

TDQS

C2.9/5.0
Behavior2/5

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 states this creates an income record (implying a write/mutation operation) but provides no information about permissions needed, whether the operation is idempotent, what happens on success/failure, rate limits, or what the response looks like. For a creation tool with zero annotation coverage, this is insufficient.

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

Conciseness5/5

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

The description is a single, efficient sentence in Japanese that directly states the tool's purpose. There's no wasted language or unnecessary elaboration. It's appropriately sized for what it communicates.

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

Completeness2/5

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

For a creation/mutation tool with no annotations and no output schema, the description is inadequate. It doesn't explain what happens after creation, what the response contains, error conditions, or behavioral characteristics. The description should provide more context about this being a write operation with specific implications.

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

Parameters3/5

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

The schema has 100% description coverage with clear parameter documentation in Japanese. The tool description adds no additional parameter information beyond what's already in the schema. With complete schema coverage, the baseline score of 3 is appropriate as the description doesn't need to compensate for schema gaps.

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

Purpose4/5

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

The description clearly states the action ('作成します' - creates) and resource ('収入記録' - income record) in Zaim. It distinguishes from siblings like zaim_create_payment (expenses) and zaim_create_transfer (transfers), but doesn't explicitly mention this distinction in the description text itself.

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

Usage Guidelines2/5

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 zaim_create_payment or zaim_create_transfer. It doesn't mention prerequisites, authentication requirements, or any context about when income recording is appropriate versus other financial operations.

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

zaim_create_paymentC

Zaimに支出記録を作成します

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYes金額
dateYes日付(YYYY-MM-DD形式)
category_idYesカテゴリID
genre_idYesジャンルID
from_account_idNo出金元口座ID
placeNo場所・店舗名
commentNoメモ
nameNo品名

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. '作成します' implies a write/mutation operation, but the description doesn't disclose behavioral traits like authentication requirements, whether the operation is idempotent, error handling, or what happens on success/failure. For a mutation tool with zero annotation coverage, this is a significant gap in behavioral transparency.

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

Conciseness5/5

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

The description is a single, efficient Japanese sentence that directly states the tool's purpose. It's appropriately sized and front-loaded with zero wasted words, 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.

Completeness2/5

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, no annotations, and no output schema, the description is incomplete. It doesn't address authentication needs, error conditions, return values, or how this tool differs from similar write operations (create_income, create_transfer). The agent lacks crucial context for proper tool invocation.

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

Parameters3/5

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

The description adds no parameter information beyond what the input schema provides. However, schema description coverage is 100% (all 8 parameters have descriptions in Japanese), so the baseline is 3. The description doesn't compensate with additional context about parameter relationships or usage examples.

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

Purpose4/5

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

The description 'Zaimに支出記録を作成します' clearly states the action ('作成します' - creates) and resource ('支出記録' - payment record) in Japanese. It's specific about creating a payment record in the Zaim system. However, it doesn't explicitly differentiate from sibling tools like 'zaim_create_income' or 'zaim_create_transfer', 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.

Usage Guidelines2/5

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 when to choose this over 'zaim_create_income' or 'zaim_create_transfer', nor any prerequisites or context for usage. The agent must 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.

zaim_create_transferB

Zaimに振替記録を作成します(口座間の資金移動)

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYes金額
dateYes日付(YYYY-MM-DD形式)
from_account_idYes出金元口座ID
to_account_idYes入金先口座ID
commentNoメモ

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden but only states it creates records without disclosing behavioral traits. It doesn't mention whether this is a write operation requiring specific permissions, if it's idempotent, what happens on failure, or any rate limits. For a mutation tool with zero annotation coverage, this is a significant gap.

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

Conciseness5/5

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

The description is a single, efficient sentence in Japanese that clearly communicates the tool's purpose. It's appropriately sized with zero wasted words and front-loads the essential information about creating transfer records.

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

Completeness2/5

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

For a mutation tool with no annotations and no output schema, the description is insufficient. It doesn't explain what happens after creation (success response format, error conditions), doesn't mention authentication requirements despite zaim_check_auth_status being a sibling, and provides minimal behavioral context for a write operation.

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

Parameters3/5

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 adds no additional parameter semantics beyond what's in the schema. The baseline score of 3 is appropriate when the schema does the heavy lifting for parameter documentation.

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

Purpose4/5

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

The description clearly states the action ('作成します' - creates) and resource ('振替記録' - transfer record) with the context of being between accounts. It distinguishes from siblings like zaim_create_income and zaim_create_payment by specifying it's for transfers between accounts rather than income or payments.

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

Usage Guidelines3/5

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

The description implies usage context by specifying '口座間の資金移動' (fund transfers between accounts), which helps differentiate from income/payment creation tools. However, it doesn't explicitly state when to use this versus alternatives or mention any prerequisites like authentication status.

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

zaim_delete_money_recordA

Zaimの家計簿記録を削除します。削除は永続的で復元できません。

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes削除する記録のID
modeYes記録の種類

TDQS

A4/5.0
Behavior4/5

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

With no annotations provided, the description carries full burden and adds valuable behavioral context: it explicitly states deletion is permanent ('永続的') and irreversible ('復元できません'). However, it doesn't mention authentication requirements, rate limits, or error conditions.

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

Conciseness5/5

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

The description is a single, efficient sentence that immediately states the tool's purpose and critical behavioral warning. Every word earns its place with no redundancy or unnecessary elaboration.

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

Completeness4/5

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

For a destructive operation with no annotations and no output schema, the description provides essential context about permanence. However, it lacks information about authentication requirements, error responses, or what happens after deletion that would make it fully complete.

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

Parameters3/5

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 (id and mode with enum values). The description doesn't add any parameter-specific information beyond what's in the schema, maintaining the baseline score.

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

Purpose5/5

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

The description clearly states the specific action ('削除します' - delete) and resource ('Zaimの家計簿記録' - Zaim household accounting records). It distinguishes from sibling tools like zaim_get_money_records (read) and zaim_update_money_record (update) by specifying deletion.

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

Usage Guidelines3/5

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

The description implies usage when permanent deletion of a money record is needed, but doesn't explicitly state when to use this vs alternatives like zaim_update_money_record for modifications or when not to use it. No prerequisites or comparison to siblings is provided.

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

zaim_get_currenciesB

Zaimで利用可能な通貨一覧を取得します

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

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 currency list') without adding context like authentication needs, rate limits, or what the return format might be. 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.

Conciseness5/5

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

The description is a single, efficient sentence in Japanese that directly states the tool's purpose without any fluff or redundancy. It's appropriately sized and front-loaded, 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.

Completeness3/5

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

Given the tool's low complexity (0 parameters, no output schema), the description is minimally adequate. However, with no annotations and no output schema, it lacks details on behavioral aspects like return values or error handling. It meets the basic requirement but leaves gaps that could hinder agent performance.

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

Parameters4/5

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 introduce any confusion. A baseline of 4 is appropriate as it avoids misalignment with the schema.

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

Purpose4/5

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

The description clearly states the verb '取得します' (get/retrieve) and the resource '通貨一覧' (currency list), making the purpose unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'zaim_get_user_accounts' or 'zaim_get_user_info', which are also retrieval operations but for different resources, 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.

Usage Guidelines2/5

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 context, prerequisites, or exclusions, such as whether it requires authentication or how it relates to other 'get' tools in the sibling list. This leaves the agent with minimal usage context.

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

zaim_get_default_categoriesB

Zaimのデフォルトカテゴリ一覧を取得します(支出または収入)

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYesカテゴリのモード(支出/収入)

TDQS

B3.1/5.0
Behavior2/5

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 it's a read operation ('取得します' - get), which implies non-destructive behavior, but doesn't mention any behavioral traits like authentication requirements, rate limits, or what the output looks like. For a tool with zero annotation coverage, this is a significant gap, as it doesn't add context beyond the basic purpose.

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

Conciseness4/5

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

The description is a single, efficient sentence in Japanese that directly states the purpose. It's appropriately sized and front-loaded with the key action and resource. There's no wasted text, but it could be slightly more structured if it included brief usage hints, though it's not necessary for conciseness.

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

Completeness2/5

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

Given the complexity (a read operation with one parameter) and no annotations or output schema, the description is incomplete. It doesn't explain what the tool returns (e.g., list format, fields) or any behavioral aspects like error handling. For a tool with no structured data to rely on, the description should provide more context to be fully helpful, making it inadequate.

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

Parameters3/5

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

The description adds minimal meaning beyond the input schema. It mentions '支出または収入' (expense or income), which aligns with the 'mode' parameter's enum values ('payment' and 'income'), but the schema already has 100% coverage with a clear description for 'mode.' With high schema coverage, the baseline is 3, and the description doesn't compensate with additional details like parameter constraints or examples, so it meets the minimum viable standard.

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

Purpose4/5

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

The description clearly states the tool's purpose: 'Zaimのデフォルトカテゴリ一覧を取得します(支出または収入)' translates to 'Get Zaim's default category list (expense or income).' It specifies the verb ('取得します' - get) and resource ('デフォルトカテゴリ一覧' - default category list), and distinguishes it from siblings like 'zaim_get_user_categories' by specifying 'default' categories. However, it doesn't explicitly contrast with all siblings, such as 'zaim_get_default_genres,' which is similar but for genres, so it's 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.

Usage Guidelines3/5

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

The description implies usage by mentioning '支出または収入' (expense or income), which relates to the 'mode' parameter, but it doesn't provide explicit guidance on when to use this tool versus alternatives. For example, it doesn't clarify when to use 'zaim_get_default_categories' versus 'zaim_get_user_categories' or 'zaim_get_default_genres.' The context is clear but lacks explicit when/when-not statements or named alternatives, so it's adequate but with gaps.

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

zaim_get_default_genresB

Zaimのデフォルトジャンル一覧を取得します(支出または収入)

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYesジャンルのモード(支出/収入)

TDQS

B3.1/5.0
Behavior2/5

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 states this is a retrieval operation ('取得します'), which implies read-only behavior, but doesn't mention any constraints like rate limits, authentication requirements, or response format details that would help the agent understand how to properly invoke it.

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

Conciseness5/5

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

The description is a single, efficient sentence in Japanese that communicates the core purpose without any wasted words. It's appropriately sized for a simple retrieval tool with one parameter.

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

Completeness3/5

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

For a simple read operation with 100% schema coverage but no annotations or output schema, the description provides adequate basic information about what the tool does. However, it lacks details about authentication requirements, response format, or error conditions that would be helpful for the agent.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already fully documents the single 'mode' parameter with its enum values and description. The description adds no additional parameter information beyond what's in the schema, meeting the baseline expectation when schema coverage is high.

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

Purpose4/5

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

The description clearly states the action ('取得します' - get/retrieve) and resource ('Zaimのデフォルトジャンル一覧' - Zaim's default genre list) with scope qualification ('支出または収入' - expense or income). It doesn't explicitly differentiate from sibling tools like zaim_get_user_genres, but the 'default' distinction is implied.

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

Usage Guidelines2/5

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 like zaim_get_user_genres or zaim_get_default_categories. The description only states what the tool does, not when it should be selected over other available options.

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

zaim_get_money_recordsB

Zaim家計簿の支出・収入・振替記録を取得します。日付範囲、カテゴリ、モードでフィルタリング可能です。

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNo記録の種類(支出/収入/振替)
start_dateNo開始日(YYYY-MM-DD形式)
end_dateNo終了日(YYYY-MM-DD形式)
category_idNoカテゴリID
limitNo取得件数(最大100件)
pageNoページ番号(1から開始)

TDQS

B3.2/5.0
Behavior2/5

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 retrieves records with filtering but doesn't disclose behavioral traits like whether this requires authentication (implied by sibling tools with auth), rate limits, pagination behavior (though schema hints at it), or what happens when no records match. The description is minimal and lacks critical operational context.

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

Conciseness5/5

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

The description is two concise sentences in Japanese, front-loaded with the core purpose and followed by filtering capabilities. Every sentence earns its place with no wasted words, making it efficient and well-structured.

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

Completeness2/5

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

Given no annotations, no output schema, and a tool with 6 parameters for retrieving financial records, the description is incomplete. It lacks information on authentication requirements, error handling, response format, and how filtering interacts (e.g., AND/OR logic). For a data retrieval tool in a household accounting context, this leaves significant gaps for an AI agent.

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

Parameters3/5

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. The description adds minimal value by mentioning filtering by date range, category, and mode, but doesn't provide additional semantics beyond what's in the schema (e.g., explaining relationships between parameters). 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.

Purpose4/5

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

The description clearly states the tool's purpose: 'Zaim家計簿の支出・収入・振替記録を取得します' (retrieves expenditure, income, and transfer records from Zaim household accounting). It specifies the verb '取得します' (retrieves) and resource '記録' (records), but doesn't explicitly differentiate from sibling tools like zaim_get_user_categories or zaim_get_user_info that also retrieve data.

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

Usage Guidelines3/5

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

The description mentions filtering capabilities ('日付範囲、カテゴリ、モードでフィルタリング可能です'), which implies usage context for retrieving filtered records. However, it doesn't provide explicit guidance on when to use this tool versus alternatives like zaim_get_user_categories for category data or zaim_get_user_info for user information.

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

zaim_get_user_accountsB

Zaimユーザーの口座一覧を取得します

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

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 '取得します' (get/retrieve) implies a read-only operation, the description doesn't specify authentication requirements, rate limits, error conditions, or what the return format looks like (e.g., list structure, pagination). For a tool with zero annotation coverage, this leaves significant 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.

Conciseness5/5

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

The description is a single, efficient sentence in Japanese that directly states the tool's purpose with zero wasted words. It's appropriately sized for a simple retrieval tool and front-loads the essential information without unnecessary elaboration.

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

Completeness3/5

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), the description is adequate as a basic statement of purpose. However, without annotations or output schema, it lacks details on authentication, response format, or error handling that would be helpful for an agent. It meets minimum viability but has clear gaps in contextual information.

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

Parameters4/5

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% (though empty). With no parameters to document, the description doesn't need to compensate for any gaps. A baseline of 4 is appropriate since there's nothing to explain beyond what's already covered by the schema (which indicates no inputs).

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

Purpose4/5

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

The description clearly states the verb ('取得します' - get/retrieve) and resource ('Zaimユーザーの口座一覧' - Zaim user account list), making the purpose specific and understandable. However, it doesn't explicitly differentiate from sibling tools like 'zaim_get_user_info' or 'zaim_get_money_records' which also retrieve user-related data, 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.

Usage Guidelines2/5

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. With sibling tools like 'zaim_get_user_info' (which might include account info) and 'zaim_get_money_records' (which involves financial data), there's no indication of when this specific account-listing tool is appropriate or what distinguishes it from other retrieval operations.

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

zaim_get_user_categoriesB

Zaimユーザーのカスタムカテゴリ一覧を取得します

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

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 states this is a retrieval operation ('取得します'), implying it's read-only, but doesn't mention authentication requirements, rate limits, error conditions, or what the return format looks like. For a tool with zero annotation coverage, this leaves significant 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.

Conciseness5/5

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

The description is a single, efficient sentence in Japanese that directly states the tool's purpose without any wasted words. It's appropriately sized for a simple retrieval tool and front-loads the essential information.

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

Completeness3/5

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 no parameters and no output schema, the description adequately states what it does. However, without annotations or output schema, it should ideally mention what the return data looks like (e.g., list format, category structure) or authentication requirements to be more complete for agent use.

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

Parameters4/5

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 input requirements. The description doesn't need to add parameter information, and it appropriately doesn't mention any parameters. The baseline for 0 parameters with full schema coverage is 4.

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

Purpose4/5

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

The description clearly states the verb ('取得します' - get/retrieve) and resource ('Zaimユーザーのカスタムカテゴリ一覧' - Zaim user's custom category list), making the purpose specific and understandable. However, it doesn't explicitly differentiate from sibling tools like 'zaim_get_default_categories', which might cause confusion about when to use each.

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

Usage Guidelines2/5

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 'zaim_get_default_categories' or 'zaim_get_user_genres'. It lacks context about prerequisites (e.g., authentication status) or typical use cases, 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.

zaim_get_user_genresB

Zaimユーザーのカスタムジャンル一覧を取得します

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden but only states what the tool does without behavioral details. It doesn't disclose whether this is a read-only operation, requires authentication, has rate limits, or describes the return format. 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.

Conciseness5/5

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

The description is a single, efficient sentence in Japanese that directly states the tool's purpose without any wasted words. It's appropriately sized and front-loaded, making it easy to understand at a glance.

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

Completeness2/5

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

Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what the returned data looks like (e.g., list format, fields), authentication requirements, or error conditions. For a data retrieval tool, this leaves the agent with insufficient context to use it effectively.

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

Parameters4/5

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 doesn't need to add parameter semantics, and it correctly doesn't mention any parameters. Baseline 4 is appropriate for zero-parameter tools.

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

Purpose4/5

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

The description clearly states the action ('取得します' - get/retrieve) and the resource ('Zaimユーザーのカスタムジャンル一覧' - Zaim user's custom genre list). It distinguishes from siblings like 'zaim_get_default_genres' by specifying 'user' and 'custom' genres. However, it doesn't explicitly contrast with all siblings, 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.

Usage Guidelines2/5

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 'zaim_get_default_genres' or 'zaim_get_user_categories'. It lacks context about prerequisites (e.g., authentication status) or typical use cases, offering only a basic functional statement.

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

zaim_get_user_infoB

Zaimユーザーの詳細情報(プロフィール、統計情報等)を取得します

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior2/5

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 retrieves user information but doesn't mention any behavioral traits such as authentication requirements, rate limits, response format, or whether it's a read-only operation. 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.

Conciseness5/5

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

The description is a single, efficient sentence in Japanese: 'Zaimユーザーの詳細情報(プロフィール、統計情報等)を取得します'. It is front-loaded with the core purpose and uses parentheses to clarify scope without unnecessary elaboration. Every word earns its place, making it highly concise and well-structured.

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

Completeness2/5

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

Given the tool's complexity (simple retrieval with no parameters) but lack of annotations and output schema, the description is incomplete. It doesn't explain what the returned user information includes (e.g., profile vs. statistics details), authentication needs, or error handling. For a tool with no structured data to supplement it, the description should provide more context to be fully helpful.

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

Parameters4/5

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 add parameter semantics, as there are no parameters to explain. This meets the baseline for tools with no parameters, as it doesn't mislead or omit necessary information about inputs.

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

Purpose4/5

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

The description clearly states the tool's purpose: 'Zaimユーザーの詳細情報(プロフィール、統計情報等)を取得します' (Get detailed Zaim user information such as profile, statistics, etc.). It specifies the verb '取得します' (get/retrieve) and resource 'Zaimユーザーの詳細情報' (Zaim user details), making it easy to understand what the tool does. However, it doesn't explicitly differentiate from sibling tools like 'zaim_get_user_accounts' or 'zaim_get_money_records', which also retrieve user-related data but for different resources.

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

Usage Guidelines2/5

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 prerequisites (e.g., authentication status), context for usage, or exclusions. Given sibling tools like 'zaim_get_user_accounts' and 'zaim_get_user_categories', the lack of differentiation leaves the agent without clear usage instructions.

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

zaim_update_money_recordC

Zaimの既存の家計簿記録を更新します

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes更新する記録のID
modeYes記録の種類
amountNo金額
dateNo日付(YYYY-MM-DD形式)
category_idNoカテゴリID
genre_idNoジャンルID(paymentモードの場合は必須)
from_account_idNo出金元口座ID(支出・振替の場合)
to_account_idNo入金先口座ID(収入・振替の場合)
placeNo場所・店舗名
commentNoメモ
nameNo品名

TDQS

C2.9/5.0
Behavior2/5

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. '更新します' (updates) implies a mutation operation, but the description doesn't disclose any behavioral traits: no information about authentication requirements, rate limits, error conditions, whether the update is partial or complete, or what happens to unspecified fields. For a mutation tool with 11 parameters and no annotation coverage, this is a significant gap.

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

Conciseness5/5

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

The description is a single, efficient Japanese sentence that directly states the tool's purpose: 'Zaimの既存の家計簿記録を更新します' (Updates Zaim's existing household account records). There's zero wasted verbiage or unnecessary elaboration. It's appropriately sized and front-loaded with the essential information.

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

Completeness2/5

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

For a mutation tool with 11 parameters, no annotations, and no output schema, the description is incomplete. It doesn't explain what happens when the tool is invoked (response format, success indicators, error handling), doesn't mention authentication requirements despite sibling tools including auth-related tools, and provides no behavioral context. The description alone is insufficient for an agent to understand how to properly use this tool.

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

Parameters3/5

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

The schema description coverage is 100%, with all 11 parameters having descriptions in Japanese. The tool description doesn't add any parameter-specific information beyond what's already in the schema. According to the scoring rules, when schema_description_coverage is high (>80%), the baseline is 3 even with no 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.

Purpose4/5

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

The description clearly states the action ('更新します' - updates) and the resource ('Zaimの既存の家計簿記録' - Zaim's existing household account records). It distinguishes from sibling tools like zaim_create_income/payment/transfer by specifying it updates existing records rather than creating new ones. However, it doesn't explicitly mention what fields can be updated beyond the general concept.

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

Usage Guidelines2/5

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 are sibling tools for creating records (zaim_create_income/payment/transfer) and deleting records (zaim_delete_money_record), but the description doesn't explain when updating is appropriate versus creating new or deleting existing records. No prerequisites or constraints are mentioned.

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. Dates show when Glama detected each change.

  1. 14 tool updatesv1.0.0
    • First observedzaim_check_auth_status
    • First observedzaim_create_income
    • First observedzaim_create_payment
    • First observedzaim_create_transfer
    • First observedzaim_delete_money_record
    • First observedzaim_get_currencies
    • First observedzaim_get_default_categories
    • First observedzaim_get_default_genres
    • First observedzaim_get_money_records
    • First observedzaim_get_user_accounts
    • First observedzaim_get_user_categories
    • First observedzaim_get_user_genres
    • First observedzaim_get_user_info
    • First observedzaim_update_money_record

TDQS

A3.7/5.0
Disambiguation5/5

Every tool has a clearly distinct purpose with no ambiguity. Tools are well-separated by resource (e.g., money records, categories, user info) and action (e.g., create, get, update, delete). For example, zaim_create_income, zaim_create_payment, and zaim_create_transfer handle different types of money records, while get tools target specific data sets like currencies or accounts.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern with the prefix 'zaim_', such as zaim_create_income, zaim_get_currencies, and zaim_update_money_record. This uniformity makes the tool set predictable and easy to navigate, with no deviations in naming style or structure.

Tool Count5/5

With 14 tools, the count is well-scoped for a personal finance API server. Each tool earns its place by covering essential operations like CRUD for money records, retrieval of metadata (currencies, categories), and user management, without being excessive or too sparse for the domain.

Completeness5/5

The tool surface provides complete CRUD/lifecycle coverage for the Zaim API domain. It includes creation, retrieval, update, and deletion for money records, along with supporting operations for authentication, user info, accounts, and metadata (currencies, categories, genres). No obvious gaps exist; agents can perform full workflows without dead ends.

Maintenance

ActivityInactive
ResponsivenessSyncing

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

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to interact with YNAB budgets through natural language. Supports managing accounts, categories, transactions, and budget months with 21 tools for comprehensive budget operations.
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables 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
  • A
    license
    A
    quality
    D
    maintenance
    Enables AI assistants to query and manage personal finance data through the unofficial Money Lover REST API. It provides 27 tools covering authentication, wallets, categories, transactions, events, debts, and static configuration with both read and write capabilities.
    33
    32
    ISC
  • A
    license
    B
    quality
    D
    maintenance
    Enables AI agents to interact with your Lunch Money personal finance data, providing tools for managing transactions, categories, budgets, assets, and accounts.
    15
    24
    ISC

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/yone-k/zaim-api-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server