Skip to main content
Glama
matteoantoci

MCP Bitpanda Server

MCP 비트판다 서버

Bitpanda API와 상호 작용하기 위한 도구를 제공하는 모델 컨텍스트 프로토콜(MCP) 서버입니다. 이 서버를 통해 MCP 프로토콜을 통해 거래, 지갑, 거래 등 Bitpanda 기능에 프로그래밍 방식으로 접근할 수 있습니다.

필수 조건

  • Node.js(v18 이상 권장)

  • npm(Node.js와 함께 제공)

  • Bitpanda API 키( BITPANDA_API_KEY 환경 변수로 설정)

  • (선택 사항) MCP 호환 클라이언트 또는 러너(예: VSCode 확장, CLI)

Related MCP server: MCP YNAB Server

설정

  1. 저장소를 복제하거나 프로젝트 디렉토리에 있는지 확인하세요.

  2. 종속성 설치:

    지엑스피1

  3. 서버를 빌드하세요:

    npm run build

    이렇게 하면 컴파일된 JavaScript 코드가 포함된 build 디렉토리가 생성됩니다.

서버 실행

  • 곧장:

    node build/index.js

    또는 시작 스크립트가 있는 경우:

    npm run start
  • MCP 러너를 통해: stdio 전송을 사용하여 서버를 실행하도록 MCP 클라이언트를 구성합니다. MCP 설정 항목 예시:

    "mcp-bitpanda": {
      "transportType": "stdio",
      "command": "node",
      "args": [
        "/path/to/mcp-bitpanda/build/index.js"
      ]
      // Add environment variables, e.g., for the API key
      "environmentVariables": {
        "BITPANDA_API_KEY": "YOUR_BITPANDA_API_KEY" // Replace with your actual API key or use a secure method to provide it
      }
      // ... other optional settings ...
    }

사용 가능한 도구

  • get_asset_info : 특정 자산에 대한 자세한 정보를 해당 기호(예: BTC, XAU)별로 검색합니다.

    • 매개변수: symbol (문자열, 필수)

    • 참고: 이 도구에는 API 키가 필요하지 않습니다.

  • get_ohlc : 특정 자산, 법정 통화 및 기간에 대한 OHLC(시가/고가/저가/종가) 데이터를 검색합니다.

    • 매개변수:

      • symbol (문자열, 필수): 거래 심볼입니다.

      • fiatCurrency (문자열, 필수): 법정 통화(예: USD, EUR).

      • timeframe (문자열, 필수): "일" 또는 "주"입니다.

    • 참고: 이 도구에는 API 키가 필요하지 않습니다.

  • list_trades : Bitpanda API에서 사용자의 모든 거래를 나열합니다. 최신 거래가 먼저 표시됩니다. 응답은 커서를 기준으로 페이지 번호가 매겨집니다.

    • 매개변수:

      • type (문자열, 선택 사항): buy 또는 sell 중 하나.

      • cursor (문자열, 선택 사항): 클라이언트가 마지막으로 확인한 거래의 ID입니다. 이 ID 이후의 거래만 반환됩니다. cursor 매개변수가 비어 있거나 누락되면 처음부터 거래가 반환됩니다.

      • page_size (정수, 선택 사항): 페이지 분할 응답의 페이지 크기입니다.

  • list_asset_wallets : Bitpanda API에서 자산 유형별로 그룹화된 모든 사용자 자산 지갑을 나열합니다.

    • 매개변수: 없음.

  • list_fiat_wallets : Bitpanda API에서 사용자의 모든 법정 화폐 지갑을 나열합니다.

    • 매개변수: 없음.

  • list_fiat_transactions : Bitpanda API에서 사용자의 모든 법정화폐 거래를 나열합니다. 최신 법정화폐 거래가 먼저 표시됩니다. 응답은 커서로 페이지 번호를 매겨 표시됩니다.

    • 매개변수:

      • type (문자열, 선택 사항): 매수, 매도, 입금, 출금, 이체, 환불.

      • status (문자열, 선택 사항): 보류, 처리 중, 완료, 취소됨.

      • cursor (문자열, 선택 사항): 클라이언트가 마지막으로 확인한 법정화폐 거래의 ID입니다. 이 ID 이후의 법정화폐 거래만 반환됩니다. cursor 매개변수가 비어 있거나 누락되면 처음부터 법정화폐 거래가 반환됩니다.

      • page_size (정수, 선택 사항): 페이지 분할 응답의 페이지 크기입니다.

  • list_crypto_wallets : Bitpanda API에서 사용자의 모든 암호화폐 지갑을 나열합니다.

    • 매개변수: 없음.

  • list_crypto_transactions : Bitpanda API에서 사용자의 모든 암호화폐 거래를 나열합니다. 최신 암호화폐 거래가 먼저 표시됩니다. 응답은 커서로 페이지 번호가 매겨집니다.

    • 매개변수:

      • type (문자열, 선택 사항): buy , sell , deposit , withdrawal , transfer , refund 또는 ico 중 하나.

      • status (문자열, 선택 사항): pending , processing , unconfirmed_transaction_out , open_invitation , finished 또는 canceled 중 하나.

      • cursor (문자열, 선택 사항): 클라이언트가 마지막으로 확인한 암호화 거래의 ID입니다. 이 ID 이후의 암호화 거래만 반환됩니다. cursor 매개변수가 비어 있거나 누락되면 처음부터 암호화 거래가 반환됩니다.

      • page_size (정수, 선택 사항): 페이지 분할 응답의 페이지 크기입니다.

  • list_commodity_transactions : Bitpanda API에서 사용자의 모든 상품 거래를 나열합니다. 최신 상품 거래가 먼저 표시됩니다. 응답은 커서로 페이지 번호를 매겨 표시됩니다.

    • 매개변수:

      • cursor (문자열, 선택 사항): 클라이언트가 마지막으로 확인한 상품 거래의 ID입니다. 이 ID 이후의 상품 거래만 반환됩니다. cursor 매개변수가 비어 있거나 누락되면 처음부터 상품 거래가 반환됩니다.

      • page_size (정수, 선택 사항): 페이지 분할 응답의 페이지 크기입니다.

확장

더 많은 Bitpanda API 엔드포인트를 도구로 추가하려면 src/tools/ 에 새 도구 파일을 구현하고 src/tools/index.ts 에 등록합니다.

Available Tools

8 tools
get_asset_infoC

Retrieves detailed information for a specific asset by its symbol.

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYesThe trading symbol of the asset (e.g., BTC, XAU)

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 but offers minimal behavioral context. It implies a read-only operation ('Retrieves'), but doesn't disclose error handling, rate limits, authentication needs, or what 'detailed information' includes. This is inadequate for a tool with no annotation coverage.

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

Conciseness5/5

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

The description is a single, efficient sentence with zero waste. It's front-loaded with the core purpose and appropriately sized for a simple lookup tool.

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 and no output schema, the description is incomplete. It doesn't explain what 'detailed information' returns, error cases, or behavioral traits. For a tool in a financial context with siblings, more context is needed to guide proper usage.

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%, so the schema already fully documents the single 'symbol' parameter. The description adds marginal value by mentioning 'trading symbol' and examples (BTC, XAU), but this is redundant with the schema's description. Baseline 3 is appropriate when schema does the heavy lifting.

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

Purpose4/5

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

The description clearly states the verb ('Retrieves') and resource ('detailed information for a specific asset'), specifying it's for a single asset identified by symbol. However, it doesn't differentiate from potential sibling tools like list_asset_wallets or list_trades, which might also retrieve asset-related information.

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 sibling tools like list_asset_wallets or list_trades, nor does it specify prerequisites or exclusions (e.g., when symbol lookup is needed vs. bulk listing).

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

list_asset_walletsB

Lists all user's asset wallets grouped by asset type from the Bitpanda API.

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. It states this is a list operation, implying it's likely read-only and non-destructive, but doesn't confirm this or address other traits like authentication needs, rate limits, or response format. The description adds minimal behavioral context beyond the basic action.

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

Conciseness5/5

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

The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's front-loaded with the core action and resource, making it easy 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 has no parameters and no output schema, the description is minimally adequate by stating what it does. However, as a list operation with sibling tools that might overlap (e.g., 'list_crypto_wallets'), it lacks context on scope or differentiation, and without annotations, it doesn't address behavioral aspects like safety or response format, leaving gaps for the agent.

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 input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description appropriately doesn't discuss parameters, and the baseline for this scenario is 4, as it avoids redundancy while being complete for a parameterless tool.

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 ('Lists') and resource ('user's asset wallets grouped by asset type from the Bitpanda API'), making the purpose understandable. However, it doesn't explicitly differentiate from sibling tools like 'list_crypto_wallets' or 'list_fiat_wallets', which appear to be more specific versions of this tool.

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 'list_crypto_wallets' or 'list_fiat_wallets'. It doesn't mention prerequisites, exclusions, or comparative contexts, leaving the agent to infer usage from tool names alone.

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

list_commodity_transactionsA

Lists all user's commodity transactions from the Bitpanda API. Newest commodity transactions come first. Response is cursor paginated.

ParametersJSON Schema
NameRequiredDescriptionDefault
cursorNoId of the last known commodity transaction by the client. Only commodity transactions after this id are returned. Empty or missing cursor parameter will return commodity transactions from the start.
page_sizeNoSize of a page for the paginated response

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 the full burden and adds valuable behavioral context: it specifies that results are sorted with 'newest commodity transactions come first' and that the 'response is cursor paginated.' This discloses key operational traits beyond basic listing, though it could mention rate limits or authentication needs.

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 front-loaded with the core purpose, followed by ordering and pagination details in two concise sentences. Every sentence adds essential information without redundancy, making it efficient and well-structured for quick comprehension.

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?

Given the tool's moderate complexity (2 parameters, no output schema, no annotations), the description is fairly complete: it covers purpose, ordering, and pagination. However, it lacks details on response format, error handling, or authentication requirements, which would enhance completeness for an API 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%, so the schema already documents both parameters (cursor and page_size) thoroughly. The description does not add any parameter-specific details beyond what the schema provides, such as syntax examples or default values, meeting the baseline for high coverage.

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 ('Lists'), resource ('all user's commodity transactions'), and source ('from the Bitpanda API'), distinguishing it from sibling tools like list_crypto_transactions or list_fiat_transactions by specifying commodity transactions. It provides a complete purpose statement without being tautological.

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 for retrieving commodity transactions in a paginated, newest-first order, but does not explicitly state when to use this tool versus alternatives (e.g., compared to list_trades or other transaction types). It offers some context through ordering and pagination, but lacks explicit guidance on prerequisites or exclusions.

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

list_crypto_transactionsA

Lists all user's crypto transactions from the Bitpanda API. Newest crypto transactions come first. Response is cursor paginated.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeNoOne of `buy`, `sell`, `deposit`, `withdrawal`, `transfer`, `refund` or `ico`.
statusNoOne of `pending`, `processing`, `unconfirmed_transaction_out`, `open_invitation`, `finished` or `canceled`.
cursorNoId of the last known crypto transaction by the client. Only crypto transactions after this id are returned. Empty or missing cursor parameter will return crypto transactions from the start.
page_sizeNoSize of a page for the paginated response

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 the full burden. It discloses key behavioral traits: ordering ('Newest crypto transactions come first'), pagination method ('cursor paginated'), and that it's a read operation (implied by 'Lists'). However, it lacks details on rate limits, authentication needs, or error handling.

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 efficiently structured in three concise sentences with zero waste: states purpose, ordering, and pagination method. Each sentence adds essential information, making it front-loaded and appropriately sized for the tool's complexity.

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?

Given no annotations and no output schema, the description provides good context on behavior (ordering, pagination) but lacks details on response format, error cases, or authentication. It's mostly complete for a list operation but could be enhanced with output expectations.

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%, providing full documentation of all 4 parameters. The description adds no parameter-specific information beyond what the schema already states, so it meets the baseline of 3 without compensating with additional semantic context.

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 verb ('Lists') and resource ('all user's crypto transactions from the Bitpanda API'), distinguishing it from siblings like list_fiat_transactions, list_commodity_transactions, and list_trades by specifying crypto transactions. It provides specific scope and data source.

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 for retrieving crypto transactions, but does not explicitly state when to use this tool versus alternatives like list_fiat_transactions or list_trades. No exclusions or prerequisites are mentioned, leaving usage context somewhat vague.

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

list_crypto_walletsB

Lists all user's crypto wallets from the Bitpanda 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?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states it 'Lists all user's crypto wallets' but doesn't mention authentication requirements, rate limits, pagination behavior, or what data is returned. For a read operation with zero annotation coverage, this leaves significant gaps.

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

Conciseness5/5

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

The description is a single, efficient sentence that directly states the tool's purpose with no wasted words. It's appropriately sized and front-loaded, making it easy to parse.

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 for a tool that presumably returns wallet data. It doesn't explain what information is included in the listing (e.g., balances, addresses) or any behavioral aspects like authentication needs. For a tool with no structured metadata, more context 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 0 parameters with 100% schema description coverage, so the schema fully documents the lack of inputs. The description doesn't need to add parameter information, and it correctly implies no parameters are required by not mentioning any.

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 ('Lists') and resource ('all user's crypto wallets from the Bitpanda API'), making the purpose immediately understandable. It doesn't explicitly distinguish from sibling tools like 'list_fiat_wallets' or 'list_asset_wallets', but the specificity of 'crypto wallets' provides some implicit differentiation.

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 on when to use this tool versus alternatives like 'list_fiat_wallets' or 'list_asset_wallets'. The description simply states what it does without indicating context, prerequisites, or exclusions.

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

list_fiat_transactionsA

Lists all user's fiat transactions from the Bitpanda API. Newest fiat transactions come first. Response is cursor paginated.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeNobuy, sell, deposit, withdrawal, transfer, refund
statusNopending, processing, finished, canceled
cursorNoId of the last known fiat transaction by the client. Only fiat transactions after this id are returned. Empty or missing cursor parameter will return fiat transactions from the start.
page_sizeNoSize of a page for the paginated response

TDQS

A3.5/5.0
Behavior3/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 adds useful context: it specifies that results are ordered newest-first and cursor-paginated. However, it doesn't cover critical aspects like authentication requirements, rate limits, error handling, or what the response format looks like, leaving gaps for a tool with no annotation support.

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 front-loaded with the core purpose in the first sentence, followed by two concise sentences adding key behavioral details (ordering and pagination). 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.

Completeness3/5

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

Given no annotations and no output schema, the description is moderately complete: it covers purpose, ordering, and pagination but lacks details on authentication, error handling, response format, and usage guidelines. For a list tool with 4 parameters and no structured support, it should do more to compensate for these gaps.

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 fully documents all parameters. The description adds no additional meaning beyond what the schema provides, such as explaining parameter interactions or usage examples. Baseline 3 is appropriate when the schema handles all parameter documentation.

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 verb ('Lists') and resource ('all user's fiat transactions from the Bitpanda API'), specifying the scope and data source. It distinguishes from siblings like list_crypto_transactions by focusing on fiat transactions, making the purpose specific and well-defined.

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, such as list_crypto_transactions or list_trades. It lacks context about use cases, prerequisites, or exclusions, leaving the agent without direction for tool selection among siblings.

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

list_fiat_walletsB

Lists all user's fiat wallets from the Bitpanda API.

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 states it's a list operation, implying it's likely read-only, but doesn't confirm this or add any other behavioral context such as authentication requirements, rate limits, pagination, or what happens if no wallets exist. This leaves significant gaps for a tool interacting with an external API.

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, direct sentence that efficiently conveys the core purpose without any fluff or redundancy. It's appropriately sized and front-loaded, making it easy 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 simplicity (0 parameters, no output schema, no annotations), the description is adequate but not complete. It specifies the resource type ('fiat wallets') and source ('Bitpanda API'), which is helpful, but lacks behavioral details like authentication needs or response format, which are important for API tools. The absence of an output schema increases the need for more context in the description.

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% (though empty). The description doesn't need to add parameter semantics, so it meets the baseline expectation. It appropriately doesn't discuss parameters, avoiding unnecessary detail.

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 ('Lists') and resource ('all user's fiat wallets from the Bitpanda API'), making the purpose immediately understandable. However, it doesn't explicitly differentiate from sibling tools like 'list_crypto_wallets' or 'list_asset_wallets', which would require mentioning it specifically retrieves fiat (not crypto or asset) wallets.

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 sibling tools like 'list_crypto_wallets' or 'list_asset_wallets', nor does it specify prerequisites, contexts, or exclusions for its use.

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

list_tradesA

Lists all user's trades from the Bitpanda API. Newest trades come first. Response is cursor paginated.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeNoOne of `buy` or `sell`
cursorNoId of the last known trade by the client. Only trades after this id are returned. Empty or missing cursor parameter will return trades from the start.
page_sizeNoSize of a page for the paginated response

TDQS

A3.5/5.0
Behavior3/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 adds useful context: it specifies ordering ('Newest trades come first') and pagination behavior ('Response is cursor paginated'), which are not covered by the schema. However, it lacks details on permissions, rate limits, or error handling, leaving gaps for a tool with no annotation support.

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 front-loaded with the core purpose in the first sentence, followed by ordering and pagination details in two concise sentences. Every sentence adds value without redundancy, making it efficient and well-structured.

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 no annotations and no output schema, the description partially compensates by explaining ordering and pagination. However, for a tool with 3 parameters and no structured output information, it should ideally cover more behavioral aspects like response format or error cases to be 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 all parameters thoroughly. The description does not add any parameter-specific semantics beyond what the schema provides, such as explaining interactions between parameters or default values. Baseline 3 is appropriate when the schema does the heavy lifting.

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

Purpose5/5

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

The description clearly states the verb 'Lists' and the resource 'all user's trades from the Bitpanda API', specifying the scope as the user's trades. It distinguishes from siblings like list_asset_wallets or list_crypto_transactions by focusing specifically on trades rather than wallets or transaction types.

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 such as list_crypto_transactions or list_fiat_transactions, which might overlap in functionality. It mentions cursor pagination but does not specify prerequisites or exclusions for usage.

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.

  1. 3 tool updatesv1.0.0
    • Changedlist_asset_wallets1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedlist_crypto_wallets1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedlist_fiat_wallets1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
  2. 8 tool updates
    • First observedget_asset_info
    • First observedlist_asset_wallets
    • First observedlist_commodity_transactions
    • First observedlist_crypto_transactions
    • First observedlist_crypto_wallets
    • First observedlist_fiat_transactions
    • First observedlist_fiat_wallets
    • First observedlist_trades

TDQS

A3.5/5.0

Scored across 8 tools

Disambiguation4/5

The tools are mostly distinct, focusing on different resource types like assets, wallets, transactions, and trades. However, there is some potential overlap between 'list_trades' and the transaction tools (commodity, crypto, fiat), as trades might be a subset or related to transactions, which could cause minor confusion without additional context.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern with 'get_' or 'list_' prefixes, using snake_case throughout. This predictability makes it easy for agents to understand and select tools based on their naming conventions.

Tool Count5/5

With 8 tools, the server is well-scoped for a Bitpanda API integration, covering key areas like asset information, wallets, transactions, and trades. Each tool serves a clear purpose without being overly broad or too limited for the domain.

Completeness3/5

The tools provide good read/list coverage for assets, wallets, transactions, and trades, but there are notable gaps in CRUD operations. For example, there are no tools for creating, updating, or deleting resources (e.g., executing trades or modifying wallets), which limits the server's functionality to querying only.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers