Skip to main content
Glama

Dodo 결제 노드 MCP 서버

스테인리스 로 만들어졌습니다.

설치

직접 호출

npx 를 통해 MCP 서버를 직접 실행할 수 있습니다.

지엑스피1

MCP 클라이언트를 통해

modelcontextprotocol.io 에서 기존 클라이언트 목록 일부를 확인할 수 있습니다. 이미 클라이언트가 있는 경우 해당 설명서를 참조하여 MCP 서버를 설치하세요.

구성 JSON이 있는 클라이언트의 경우 다음과 같습니다.

{ "mcpServers": { "dodopayments_api": { "command": "npx", "args": ["-y", "dodopayments-mcp", "--client=claude", "--tools=dynamic"], "env": { "DODO_PAYMENTS_API_KEY": "My Bearer Token", "DODO_PAYMENTS_ENVIRONMENT": "live_mode" } } } }

Related MCP server: Flutterwave MCP Server

MCP 클라이언트에 엔드포인트 노출

MCP 서버에서 엔드포인트를 도구로 노출하는 방법에는 두 가지가 있습니다.

  1. 엔드포인트당 하나의 도구를 노출하고 필요에 따라 필터링합니다.

  2. API에서 엔드포인트를 동적으로 검색하고 호출하기 위한 도구 세트 노출

필터링 엔드포인트 및 도구

명령줄에서 패키지를 실행하여 MCP 서버에서 제공하는 도구 세트를 검색하고 필터링할 수 있습니다. 이는 모든 엔드포인트를 한 번에 포함하는 것이 AI 컨텍스트 창에 너무 많은 대규모 API에 유용할 수 있습니다.

다양한 측면으로 필터링할 수 있습니다.

  • --tool 이름으로 특정 도구를 포함합니다.

  • --resource 특정 리소스 아래의 모든 도구를 포함하며 와일드카드(예: my.resource* 를 가질 수 있습니다.

  • --operation 읽기(get/list) 작업만 포함되거나 쓰기 작업만 포함됩니다.

동적 도구

MCP 서버에 --tools=dynamic 지정하면 API에서 엔드포인트당 하나의 도구를 노출하는 대신 다음 도구가 노출됩니다.

  1. list_api_endpoints - 검색 쿼리로 선택적으로 필터링하여 사용 가능한 엔드포인트를 검색합니다.

  2. get_api_endpoint_schema - 특정 엔드포인트에 대한 자세한 스키마 정보를 가져옵니다.

  3. invoke_api_endpoint - 적절한 매개변수를 사용하여 모든 엔드포인트를 실행합니다.

이를 통해 MCP 클라이언트에서 전체 API 엔드포인트 세트를 사용할 수 있으며, 모든 스키마를 한 번에 컨텍스트에 로드할 필요가 없습니다. 대신 LLM은 이러한 도구를 자동으로 함께 사용하여 엔드포인트를 동적으로 검색, 조회 및 호출합니다. 그러나 스키마의 간접적인 특성으로 인해 도구를 명시적으로 가져올 때보다 정확한 속성을 제공하는 데 어려움을 겪을 수 있습니다. 따라서 명시적 도구, 동적 도구 또는 둘 다를 선택할 수 있습니다.

--help 입력하여 자세한 내용을 확인하세요.

이러한 모든 명령줄 옵션은 반복되고, 결합될 수 있으며, 해당 제외 버전(예: --no-tool )을 가질 수 있습니다.

사용 가능한 도구 목록을 보려면 --list 사용하거나 아래를 참조하세요.

MCP 클라이언트 지정

다양한 클라이언트는 임의의 도구와 스키마를 처리하는 데 필요한 능력이 다릅니다.

--client 인수를 사용하여 사용 중인 클라이언트를 지정할 수 있으며, MCP 서버는 해당 클라이언트와 더 호환되는 도구와 스키마를 자동으로 제공합니다.

  • --client=<type> : 알려진 MCP 클라이언트를 기반으로 모든 기능을 설정합니다.

    • 유효한 값: openai-agents , claude , claude-code , cursor

    • 예: --client=cursor

또한, 위 목록에 없는 클라이언트가 있거나 시간이 지남에 따라 클라이언트가 개선된 경우 특정 기능을 수동으로 활성화하거나 비활성화할 수 있습니다.

  • --capability=<name> : 개별 클라이언트 기능 지정

    • 사용 가능한 기능:

      • top-level-unions : 도구 스키마에서 최상위 유니온에 대한 지원을 활성화합니다.

      • valid-json : 인수에 대한 JSON 문자열 구문 분석을 활성화합니다.

      • refs : 스키마에서 $ref 포인터에 대한 지원을 활성화합니다.

      • unions : 스키마에서 union 유형(anyOf)에 대한 지원을 활성화합니다.

      • formats : 스키마에서 형식 검증에 대한 지원을 활성화합니다(예: 날짜-시간, 이메일)

      • tool-name-length=N : 도구 이름의 최대 길이를 N자로 설정합니다.

    • 예: --capability=top-level-unions --capability=tool-name-length=40

    • 예: --capability=top-level-unions,tool-name-length=40

예시

  1. 카드에 대한 읽기 작업에 대한 필터:

--resource=cards --operation=read
  1. 다른 도구를 포함하는 동시에 특정 도구 제외:

--resource=cards --no-tool=create_cards
  1. 사용자 정의 최대 도구 이름 길이로 커서 클라이언트를 구성하세요.

--client=cursor --capability=tool-name-length=40
  1. 여러 기준을 적용한 복잡한 필터링:

--resource=cards,accounts --operation=read --tag=kyc --no-tool=create_cards

도구와 서버를 개별적으로 가져오기

// Import the server, generated endpoints, or the init function import { server, endpoints, init } from "dodopayments-mcp/server"; // import a specific tool import createPayments from "dodopayments-mcp/tools/payments/create-payments"; // initialize the server and all endpoints init({ server, endpoints }); // manually start server const transport = new StdioServerTransport(); await server.connect(transport); // or initialize your own server with specific tools const myServer = new McpServer(...); // define your own endpoint const myCustomEndpoint = { tool: { name: 'my_custom_tool', description: 'My custom tool', inputSchema: zodToJsonSchema(z.object({ a_property: z.string() })), }, handler: async (client: client, args: any) => { return { myResponse: 'Hello world!' }; }) }; // initialize the server with your custom endpoints init({ server: myServer, endpoints: [createPayments, myCustomEndpoint] });

사용 가능한 도구

이 MCP 서버에서는 다음과 같은 도구를 사용할 수 있습니다.

자원 payments :

  • create_payments ( write ):

  • retrieve_payments ( read ):

  • list_payments ( read ):

  • retrieve_line_items_payments ( read ):

리소스 subscriptions :

  • create_subscriptions ( write ):

  • retrieve_subscriptions ( read ):

  • update_subscriptions ( write ):

  • list_subscriptions ( read ):

  • change_plan_subscriptions ( write ):

  • charge_subscriptions ( write ):

리소스 invoices.payments :

  • retrieve_invoices_payments ( read ):

리소스 licenses :

  • activate_licenses ( write ):

  • deactivate_licenses ( write ):

  • validate_licenses ( write ):

리소스 license_keys :

  • retrieve_license_keys ( read ):

  • update_license_keys ( write ):

  • list_license_keys ( read ):

리소스 license_key_instances :

  • retrieve_license_key_instances ( read ):

  • update_license_key_instances ( write ):

  • list_license_key_instances ( read ):

리소스 customers :

  • create_customers ( write ):

  • retrieve_customers ( read ):

  • update_customers ( write ):

  • list_customers ( read ):

리소스 customers.customer_portal :

  • create_customers_customer_portal ( write ):

리소스 refunds :

  • create_refunds ( write ):

  • retrieve_refunds ( read ):

  • list_refunds ( read ):

자원 disputes :

  • retrieve_disputes ( read ):

  • list_disputes ( read ):

자원 payouts :

  • list_payouts ( read ):

리소스 webhook_events :

  • retrieve_webhook_events ( read ):

  • list_webhook_events ( read ):

리소스 products :

  • create_products ( write ):

  • retrieve_products ( read ):

  • update_products ( write ):

  • list_products ( read ):

  • delete_products ( write ):

  • unarchive_products ( write ):

리소스 products.images :

  • update_products_images ( write ):

리소스 misc :

  • list_supported_countries_misc ( read ):

리소스 discounts :

  • create_discounts ( write ): code 생략되거나 비어 있으면 무작위 16자 대문자 코드가 생성됩니다.

  • retrieve_discounts ( read ): GET /할인/{할인_id}

  • update_discounts ( write ): 패치 /discounts/{discount_id}

  • list_discounts ( read ): GET /discounts

  • delete_discounts ( write ): DELETE /discounts/{discount_id}

리소스 addons :

  • create_addons ( write ):

  • retrieve_addons ( read ):

  • update_addons ( write ):

  • list_addons ( read ):

  • update_images_addons ( write ):

리소스 brands :

  • create_brands ( write ):

  • retrieve_brands ( read ): 씬 핸들러는 get_brand 호출하고 Json(...) 으로 래핑합니다.

  • update_brands ( write ):

  • list_brands ( read ):

  • update_images_brands ( write ):

-
security - not tested
-
license - not tested
-
quality - not tested

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/dodopayments/dodopayments-node'

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