← WebMCP Directory

app.ramp.com

app.ramp.com

live Unverified (seed import) Finance & Crypto 28 tools imperative implementation

Sign-in page for Ramp's finance platform, used to manage corporate cards, expenses and accounts payable.

First seen 2026-10-12 · Last seen 2026-10-12 · Source: webmcp.com

Answer 11 · Act 16 · Transact 1 · Score: Not yet scored

Tool inspector

set_spend_program_settings

act imperative

Edit settings of the spend program editor open on the user's screen WITHOUT saving. Send one or more complete sections as read from get_spend_program_editor_state with your changes applied; fields left out keep their current value. Requires the editor_revision from a fresh read and is rejected if the editor changed since. Returns applied fields, fields that could not be applied for this program shape, and the form's validation errors so you can self-correct. Never claim to have saved.

Page: /sign-in

Input schema

PropertyTypeRequiredDescription
identity object no Name, description, and icon.
access object no Who can request or automatically receive the program.
program_rules object no Program-level rules that apply regardless of outcome.
funds_settings object no Money settings for the funds the program issues. Applies to funds programs and purchase order programs with a spend limit payment method. Not available for approval-only programs.
purchase_order_settings object no Purchase order outcome settings. Only for purchase order programs.
default_questions object no Built-in request form questions. Only for purchase order and approval-only programs; custom questions are edited with the intake form tools.
approval_settings object no Request-approval settings for requesting programs. Update these in the program editor, not through workflow edits.
change_request_approval_settings object no Change-request settings for requesting purchase order programs with a custom change-request policy. When using the request policy, edit approval_settings instead.
expected_editor_revision string yes The editor_revision returned by get_spend_program_editor_state that this update was computed from. The update is rejected if the editor changed since that read.
Raw JSON schema
{
  "type": "object",
  "properties": {
    "identity": {
      "description": "Name, description, and icon.",
      "type": "object",
      "properties": {
        "name": {
          "description": "Program name shown to requesters and admins.",
          "type": "string"
        },
        "description": {
          "description": "What the program is for and when to use it.",
          "type": "string"
        },
        "icon": {
          "description": "Icon id. Must be one of available_icons from get_spend_program_editor_state.",
          "type": "string"
        }
      },
      "additionalProperties": false
    },
    "access": {
      "description": "Who can request or automatically receive the program.",
      "type": "object",
      "properties": {
        "allow_all_users_requestable": {
          "description": "Requesting programs: every employee may submit requests. When true, overrides requesting_rules, including an empty list.",
          "type": "boolean"
        },
        "requesting_rules": {
          "description": "Requesting programs: who may submit requests when not everyone. Ignored when allow_all_users_requestable is true. Otherwise, replaces the rules and turns allow_all_users_requestable off; an empty list removes the rules.",
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "user",
                  "department",
                  "location",
                  "entity",
                  "user-custom-field",
                  "dynamic-user-group"
                ]
              },
              "id": {
                "description": "Ramp id of the user, department, location, business entity, user custom field value, or custom user group.",
                "type": "string"
              },
              "name": {
                "description": "Display name. Returned on read; ignored on write.",
                "type": "string"
              }
            },
            "required": [
              "type",
              "id"
            ],
            "additionalProperties": false
          }
        },
        "automatic_issuance_enabled": {
          "description": "Issuing programs and fixed-amount funds programs: issue funds automatically to matching employees instead of on request.",
          "type": "boolean"
        },
        "allow_all_users_automatic": {
          "description": "When automatic issuance is enabled: issue to every employee.",
          "type": "boolean"
        },
        "automatic_issuance_rules": {
          "description": "Who receives funds automatically when not everyone. Requires a FIXED funds amount. A non-empty list turns automatic issuance on; an empty list turns it off.",
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "user",
                  "department",
                  "location",
                  "entity",
                  "user-custom-field",
                  "dynamic-user-group"
                ]
              },
              "id": {
                "description": "Ramp id of the user, department, location, business entity, user custom field value, or custom user group.",
                "type": "string"
              },
              "name": {
                "description": "Display name. Returned on read; ignored on write.",
                "type": "string"
              }
            },
            "required": [
              "type",
              "id"
            ],
            "additionalProperties": false
          }
        }
      },
      "additionalProperties": false
    },
    "program_rules": {
      "description": "Program-level rules that apply regardless of outcome.",
      "type": "object",
      "properties": {
        "allowed_overage_percent": {
          "description": "Percent a requester may exceed the approved amount by; null disables overage.",
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ]
        },
        "default_entity_id": {
          "description": "Business entity id requests default to, from available_entities in get_spend_program_editor_state; null means no default.",
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "custom_payee_group_id": {
          "description": "Purchase order and approval-only programs: restrict payees to this vendor group id; null allows any payee.",
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "allow_new_payees_for_custom_payee_groups": {
          "description": "When a vendor group is set: let requesters propose payees outside the group.",
          "type": "boolean"
        },
        "allows_intake_accounting_coding": {
          "description": "Funds programs: ask requesters for accounting coding on the request form.",
          "type": "boolean"
        }
      },
      "additionalProperties": false
    },
    "funds_settings": {
      "description": "Money settings for the funds the program issues. Applies to funds programs and purchase order programs with a spend limit payment method. Not available for approval-only programs.",
      "type": "object",
      "properties": {
        "spend_allocation_spend_intent_type": {
          "description": "FIXED: admin sets amount and interval. CUSTOM_AMOUNT_FIXED_FREQUENCY: requester chooses the amount, admin fixes the interval. CUSTOM_AMOUNT_AND_FREQUENCY: requester chooses both.",
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "FIXED",
                "CUSTOM_AMOUNT_FIXED_FREQUENCY",
                "CUSTOM_AMOUNT_AND_FREQUENCY"
              ]
            },
            {
              "type": "null"
            }
          ]
        },
        "amount": {
          "description": "Fund limit in major currency units. Required when the type is FIXED.",
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ]
        },
        "interval": {
          "description": "How often the limit resets. TOTAL is a one-time total; CUSTOM lets the requester choose. Required unless the type is CUSTOM_AMOUNT_AND_FREQUENCY.",
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "ANNUAL",
                "CUSTOM",
                "DAILY",
                "MONTHLY",
                "QUARTERLY",
                "TERTIARY",
                "TOTAL",
                "WEEKLY",
                "YEARLY"
              ]
            },
            {
              "type": "null"
            }
          ]
        },
        "currency": {
          "description": "ISO 4217 currency code, e.g. USD.",
          "type": "string"
        },
        "requestable_frequency_once": {
          "description": "Each employee may receive these funds only once.",
          "type": "boolean"
        },
        "permitted_spend_types": {
          "description": "How the funds can be spent. At least one must stay enabled.",
          "type": "object",
          "properties": {
            "virtual_card_enabled": {
              "type": "boolean"
            },
            "primary_card_enabled": {
              "type": "boolean"
            },
            "reimbursements_enabled": {
              "type": "boolean"
            }
          },
          "additionalProperties": false
        },
        "is_shareable": {
          "description": "Fund can be shared with other employees.",
          "type": "boolean"
        },
        "transaction_amount_limit": {
          "description": "Maximum single transaction amount; null means no per-transaction limit.",
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ]
        },
        "rollover_enabled": {
          "description": "Roll unused permanent allowance into the next interval; resets annually.",
          "type": "boolean"
        },
        "rollover_caps": {
          "description": "Total balance cap used to calculate rollovers when rollover is enabled.",
          "type": "object",
          "properties": {
            "accrual": {
              "description": "Maximum balance including rollovers. Required when enabled; must be positive and at least the base amount.",
              "anyOf": [
                {
                  "type": "number",
                  "exclusiveMinimum": 0
                },
                {
                  "type": "null"
                }
              ]
            }
          },
          "additionalProperties": false
        },
        "issue_physical_card_if_needed": {
          "description": "Ship a physical card to employees who do not have one.",
          "type": "boolean"
        },
        "start_date": {
          "description": "YYYY-MM-DD. Only allow spend on or after this date; must be before lock_date when one is set. null allows spend as soon as funds are issued.",
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "lock_date": {
          "description": "YYYY-MM-DD. Do not allow spend on or after this date; must be after start_date and after today. Changing it clears relative_lock_duration_count, so change only one of the two per call; null removes a fixed lock date.",
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "relative_lock_duration_count": {
          "description": "Lock the funds this many days after they are issued. Changing it clears lock_date, so change only one of the two per call; null never auto-locks by duration.",
          "anyOf": [
            {
              "type": "integer",
              "minimum": 1,
              "maximum": 9007199254740991
            },
            {
              "type": "null"
            }
          ]
        },
        "is_exempt_from_policy_agent": {
          "description": "Skip the expense policy agent review for spend from these funds.",
          "type": "boolean"
        },
        "merchant_restrictions": {
          "description": "Allow or block specific merchants.",
          "type": "object",
          "properties": {
            "gate_type": {
              "description": "none removes the restriction; whitelist allows only the listed; blacklist blocks the listed.",
              "type": "string",
              "enum": [
                "none",
                "whitelist",
                "blacklist"
              ]
            },
            "merchant_ids": {
              "description": "Ramp merchant ids, e.g. from a merchant search.",
              "type": "array",
              "items": {
                "type": "integer",
                "minimum": -9007199254740991,
                "maximum": 9007199254740991
              }
            }
          },
          "additionalProperties": false
        },
        "category_restrictions": {
          "description": "Allow or block merchant categories.",
          "type": "object",
          "properties": {
            "gate_type": {
              "description": "none removes the restriction; whitelist allows only the listed; blacklist blocks the listed.",
              "type": "string",
              "enum": [
                "none",
                "whitelist",
                "blacklist"
              ]
            },
            "category_ids": {
              "description": "Merchant category ids from available_merchant_categories in get_spend_program_editor_state.",
              "type": "array",
              "items": {
                "type": "integer",
                "minimum": -9007199254740991,
                "maximum": 9007199254740991
              }
            }
          },
          "additionalProperties": false
        },
        "accounting_rules": {
          "description": "Default accounting coding for spend on these funds, one entry per tracking category to change. Categories not listed keep their current coding.",
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "tracking_category_id": {
                "description": "From funds_details.accounting_rules in get_spend_program_editor_state.",
                "type": "integer",
                "minimum": -9007199254740991,
                "maximum": 9007199254740991
              },
              "option_id": {
                "description": "Tracking category option id to code spend with; null clears the rule.",
                "anyOf": [
                  {
                    "type": "integer",
                    "minimum": -9007199254740991,
                    "maximum": 9007199254740991
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "option_name": {
                "description": "Option name, code, or label to search for when option_id is unknown. The match must be exact.",
                "type": "string"
              }
            },
            "required": [
              "tracking_category_id"
            ],
            "additionalProperties": false
          }
        },
        "accounting_auto_mark_ready_rule_enabled": {
          "description": "Mark transactions ready for accounting once the default coding is applied.",
          "type": "boolean"
        },
        "submission_policy_id": {
          "description": "From available_submission_policies in get_spend_program_editor_state.",
          "type": "string"
        },
        "post_spend_approval_policy_id": {
          "description": "From available_post_spend_approval_policies in get_spend_program_editor_state.",
          "type": "string"
        }
      },
      "additionalProperties": false
    },
    "purchase_order_settings": {
      "description": "Purchase order outcome settings. Only for purchase order programs.",
      "type": "object",
      "properties": {
        "purchase_order_number_prefix": {
          "description": "Prefix for generated PO numbers: uppercase letters, digits, and dashes only, no trailing dash.",
          "type": "string"
        },
        "three_way_match_enabled": {
          "description": "Require bills to match the PO and receipt before payment.",
          "type": "boolean"
        },
        "default_payment_method": {
          "description": "PURCHASE_ORDER pays by bill; SPEND_LIMIT pays with funds on a card.",
          "type": "string",
          "enum": [
            "PURCHASE_ORDER",
            "SPEND_LIMIT"
          ]
        },
        "allow_requester_to_choose_payment_method": {
          "description": "Requesters may pick the payment method instead of using the default.",
          "type": "boolean"
        },
        "auto_create_fund_on_request_approval": {
          "description": "Issue funds as soon as the request is approved.",
          "type": "boolean"
        },
        "auto_create_fund_if_payee_accepts_card": {
          "description": "Issue funds automatically when the payee accepts card payments.",
          "type": "boolean"
        },
        "create_contracts_post_approval": {
          "description": "Create a contract record when a request is approved.",
          "type": "boolean"
        },
        "allow_requestors_to_specify_savings": {
          "description": "Let requesters record negotiated savings on the request.",
          "type": "boolean"
        },
        "allows_purchase_order_accounting_coding": {
          "description": "Ask for accounting coding at the purchase order level.",
          "type": "boolean"
        },
        "allows_line_item_accounting_coding": {
          "description": "Ask for accounting coding on each line item.",
          "type": "boolean"
        }
      },
      "additionalProperties": false
    },
    "default_questions": {
      "description": "Built-in request form questions. Only for purchase order and approval-only programs; custom questions are edited with the intake form tools.",
      "type": "object",
      "properties": {
        "amount_config": {
          "description": "The \"How much?\" question.",
          "type": "object",
          "properties": {
            "title": {
              "description": "Question title shown to requesters.",
              "type": "string"
            },
            "description": {
              "description": "Helper text under the question.",
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ]
            },
            "is_required": {
              "type": "boolean"
            },
            "should_show_question": {
              "description": "Whether the question appears on the request form.",
              "type": "boolean"
            },
            "uses_line_items": {
              "description": "Collect the amount as line items.",
              "type": "boolean"
            },
            "is_start_date_required": {
              "type": "boolean"
            },
            "is_end_date_required": {
              "type": "boolean"
            },
            "dates_visible_by_default": {
              "type": "boolean"
            },
            "is_retainage_required": {
              "type": "boolean"
            },
            "retainage_visible_by_default": {
              "type": "boolean"
            }
          },
          "additionalProperties": false
        },
        "frequency_config": {
          "description": "The \"Is it one-time or recurring?\" question.",
          "type": "object",
          "properties": {
            "title": {
              "description": "Question title shown to requesters.",
              "type": "string"
            },
            "description": {
              "description": "Helper text under the question.",
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ]
            },
            "is_required": {
              "type": "boolean"
            },
            "should_show_question": {
              "description": "Whether the question appears on the request form.",
              "type": "boolean"
            },
            "should_show_frequency": {
              "description": "Show the one-time vs recurring choice.",
              "type": "boolean"
            }
          },
          "additionalProperties": false
        },
        "funds_config": {
          "description": "The virtual card payment question.",
          "type": "object",
          "properties": {
            "title": {
              "description": "Question title shown to requesters.",
              "type": "string"
            },
            "description": {
              "description": "Helper text under the question.",
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ]
            },
            "is_required": {
              "type": "boolean"
            },
            "should_show_question": {
              "description": "Whether the question appears on the request form.",
              "type": "boolean"
            }
          },
          "additionalProperties": false
        },
        "request_name_config": {
          "description": "The request name question.",
          "type": "object",
          "properties": {
            "title": {
              "description": "Question title shown to requesters.",
              "type": "string"
            },
            "description": {
              "description": "Helper text under the question.",
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ]
            },
            "is_required": {
              "type": "boolean"
            },
            "should_show_question": {
              "description": "Whether the question appears on the request form.",
              "type": "boolean"
            }
          },
          "additionalProperties": false
        }
      },
      "additionalProperties": false
    },
    "approval_settings": {
      "description": "Request-approval settings for requesting programs. Update these in the program editor, not through workflow edits.",
      "type": "object",
      "properties": {
        "default_deadline_days": {
          "description": "Default SLA in whole days (1–99) for a custom blank canvas approval policy; null disables it. Per-step overrides are unchanged.",
          "anyOf": [
            {
              "type": "integer",
              "minimum": 1,
              "maximum": 99
            },
            {
              "type": "null"
            }
          ]
        },
        "allow_self_approvals": {
          "description": "False enforces separation of duties; true lets requesters approve their own requests.",
          "type": "boolean"
        },
        "sod_fallback_absolute_group_uuid": {
          "description": "Resolved absolute approval group UUID for separation-of-duties fallback; null uses all admins. Requires separation of duties to be enabled.",
          "anyOf": [
            {
              "type": "string",
              "format": "uuid",
              "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "additionalProperties": false
    },
    "change_request_approval_settings": {
      "description": "Change-request settings for requesting purchase order programs with a custom change-request policy. When using the request policy, edit approval_settings instead.",
      "type": "object",
      "properties": {
        "default_deadline_days": {
          "description": "Default SLA in whole days (1–99) for a custom blank canvas approval policy; null disables it. Per-step overrides are unchanged.",
          "anyOf": [
            {
              "type": "integer",
              "minimum": 1,
              "maximum": 99
            },
            {
              "type": "null"
            }
          ]
        },
        "allow_self_approvals": {
          "description": "False enforces separation of duties; true lets requesters approve their own requests.",
          "type": "boolean"
        },
        "sod_fallback_absolute_group_uuid": {
          "description": "Resolved absolute approval group UUID for separation-of-duties fallback; null uses all admins. Requires separation of duties to be enabled.",
          "anyOf": [
            {
              "type": "string",
              "format": "uuid",
              "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "additionalProperties": false
    },
    "expected_editor_revision": {
      "description": "The editor_revision returned by get_spend_program_editor_state that this update was computed from. The update is rejected if the editor changed since that read.",
      "type": "string"
    }
  },
  "required": [
    "expected_editor_revision"
  ],
  "additionalProperties": false
}

Similar websites

dashboard.orderly.network

dashboard.orderly.network

Orderly dashboard

live Unverified Finance & Crypto
45 tools A40 / Act5 / T0 Not yet scored Seen 2026-10-12
get_site_overview get_dashboard_main get_tvl_by_chain get_tvl_by_token get_weekly_symbol_volume
Inspect tools
stockpilot-indol-chi.vercel.app

stockpilot-indol-chi.vercel.app

A WebMCP-powered trading terminal where humans and AI agents research markets, analyze SEC filings, and trade together — on real data.

demo Unverified Finance & Crypto Transact tools
37 tools A16 / Act18 / T3 Not yet scored Seen 2026-10-12
search_stock get_stock_details open_company_analysis get_stock_news analyze_sec_filings
Inspect tools
famabook.com

famabook.com

famabook

live Unverified Finance & Crypto Transact tools
25 tools A1 / Act19 / T5 Not yet scored Seen 2026-10-12
navigate_to_page create_sales_contract export_sales_contract_docx create_sales_quotation create_sales_order
Inspect tools
ultravioletadao.xyz

ultravioletadao.xyz

Join UltraVioleta DAO - Latin America at the cutting edge of web4. Building the agentic economy through x402, ERC-8004, decentralized governance, and collaborat…

live Unverified Finance & Crypto
19 tools A12 / Act7 / T0 Not yet scored Seen 2026-10-12
apply_dao_membership get_facilitator_networks get_dao_info search_stream_memory list_stream_summaries
Inspect tools

Related on Influzer