← 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_intake_questions

act imperative

Create, name, rename, or remove request form sections and add, update, or remove custom questions in the spend program editor open on the user's screen WITHOUT saving. Requesting programs only. form selects the target: request (default) edits the request form and takes ids from intake.sections; change_request edits the change order form requesters fill in when changing an approved request and takes ids from change_request_intake.sections, which only purchase order programs have. Read the target form from get_spend_program_editor_state first: it lists every question with its id, and built-in fields you must not duplicate. Section operations are only supported for form=request. add_section names the sole untitled section if present, preserving its questions, or appends a new section. update_section names or renames an existing section by section_id while preserving its id, questions, and conditions. remove_section deletes the section and all its questions and clears dependent visibility or required-when rules, including change order rules. A section containing a protected question cannot be removed. Removing the last section leaves a fresh empty untitled section. Create sections first, then use created_section_ids from the result as section_id when adding questions. If the request form uses sections, every section must have a meaningful, nonblank title and at least one question before saving or publishing. When organizing a form into sections, use update_section to name any existing unnamed sections. A sole section with title=null is the default unsectioned form and may remain unnamed and empty, including after removing the last section. Leave new question descriptions blank unless the user explicitly requests them; do not repeat the question title. Only add question types listed in that form's available_question_types; other types are rejected for this program. Select choices carry ids: when replacing a question's choices, pass { id, label } for every choice you kee…

Page: /sign-in

Input schema

PropertyTypeRequiredDescription
form string no Which form to edit. request: the request form (ids from intake.sections). change_request: the change order form requesters fill in when changing an approved request (ids from change_request_intake.sections); only purchase order programs have one.
operations array yes Applied in order. Create sections first, then use their returned ids to add questions. Add a controlling question in one call and reference its returned id before adding dependent questions.
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": {
    "form": {
      "description": "Which form to edit. request: the request form (ids from intake.sections). change_request: the change order form requesters fill in when changing an approved request (ids from change_request_intake.sections); only purchase order programs have one.",
      "default": "request",
      "type": "string",
      "enum": [
        "request",
        "change_request"
      ]
    },
    "operations": {
      "description": "Applied in order. Create sections first, then use their returned ids to add questions. Add a controlling question in one call and reference its returned id before adding dependent questions.",
      "minItems": 1,
      "type": "array",
      "items": {
        "anyOf": [
          {
            "type": "object",
            "properties": {
              "operation": {
                "type": "string",
                "const": "add_section"
              },
              "title": {
                "description": "Section heading for the request form only. Names the sole untitled section if one exists, preserving its questions; otherwise appends a new section. Use the returned created_section_ids to add questions in a subsequent call. Every section needs at least one question before saving or publishing.",
                "type": "string",
                "minLength": 1
              }
            },
            "required": [
              "operation",
              "title"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "operation": {
                "type": "string",
                "const": "update_section"
              },
              "section_id": {
                "description": "Section id from intake.sections in get_spend_program_editor_state.",
                "type": "string"
              },
              "title": {
                "description": "Name or rename a request form section, preserving its id, questions, and conditions.",
                "type": "string",
                "minLength": 1
              }
            },
            "required": [
              "operation",
              "section_id",
              "title"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "operation": {
                "type": "string",
                "const": "remove_section"
              },
              "section_id": {
                "description": "Section id from intake.sections. Removes the request form section and all its questions. Rejected if any contained question cannot be deleted. Rules depending on deleted questions are cleared, including change order rules. Removing the last section leaves a fresh empty untitled section.",
                "type": "string"
              }
            },
            "required": [
              "operation",
              "section_id"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "operation": {
                "type": "string",
                "const": "add_question"
              },
              "title": {
                "description": "Question shown to requesters. Unique per type within a section.",
                "type": "string",
                "minLength": 1
              },
              "type": {
                "type": "string",
                "enum": [
                  "ADDRESS",
                  "BOOLEAN",
                  "CONTACT",
                  "DATE",
                  "DEPARTMENT",
                  "EMAIL",
                  "FILE_UPLOAD",
                  "LINK",
                  "MERCHANT",
                  "MERCHANT_CATEGORY",
                  "NUMBER",
                  "PARAGRAPH",
                  "TEXT",
                  "TEXT_MULTI_SELECT",
                  "TEXT_SINGLE_SELECT",
                  "USER",
                  "VENDOR"
                ]
              },
              "description": {
                "description": "Helper text under the question. Leave blank unless the user explicitly requests it; do not repeat the title.",
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "required": {
                "description": "Defaults to false.",
                "type": "boolean"
              },
              "choices": {
                "description": "Choice labels, in order. Only for TEXT_SINGLE_SELECT and TEXT_MULTI_SELECT.",
                "minItems": 1,
                "type": "array",
                "items": {
                  "type": "string",
                  "minLength": 1
                }
              },
              "visible_when": {
                "description": "Show this question only when an earlier answer matches.",
                "type": "object",
                "properties": {
                  "question_id": {
                    "description": "id of an EARLIER question of type BOOLEAN, TEXT_SINGLE_SELECT, or TEXT_MULTI_SELECT that controls whether this question is shown.",
                    "type": "string"
                  },
                  "equals": {
                    "description": "For a BOOLEAN controlling question: show when the answer equals this value.",
                    "type": "boolean"
                  },
                  "is_one_of": {
                    "description": "For a select controlling question: show when the answer is one of these choice labels.",
                    "minItems": 1,
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  }
                },
                "required": [
                  "question_id"
                ],
                "additionalProperties": false
              },
              "section_id": {
                "description": "Section to add to, from the target form (intake.sections or change_request_intake.sections) in get_spend_program_editor_state. Defaults to the first section.",
                "type": "string"
              },
              "position": {
                "description": "Zero-based index within the section. Defaults to the end.",
                "type": "integer",
                "minimum": 0,
                "maximum": 9007199254740991
              }
            },
            "required": [
              "operation",
              "title",
              "type"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "operation": {
                "type": "string",
                "const": "update_question"
              },
              "question_id": {
                "description": "id from the target form (intake.sections or change_request_intake.sections) in get_spend_program_editor_state.",
                "type": "string"
              },
              "title": {
                "type": "string",
                "minLength": 1
              },
              "description": {
                "type": "string"
              },
              "required": {
                "type": "boolean"
              },
              "choices": {
                "description": "Replacement choices, in order. Pass { id, label } with an id from the target form's sections to keep or rename an existing choice so visibility and required-when rules that depend on it keep working; pass a bare string to add a new choice. Existing choices left out are removed; removal is rejected when another question's or section's rule depends on the choice. The type cannot change.",
                "minItems": 1,
                "type": "array",
                "items": {
                  "anyOf": [
                    {
                      "type": "string",
                      "minLength": 1
                    },
                    {
                      "type": "object",
                      "properties": {
                        "id": {
                          "description": "Choice id from the target form (intake.sections or change_request_intake.sections) in get_spend_program_editor_state. Ids change when the user saves, so read them from the same editor_revision you write against.",
                          "type": "string"
                        },
                        "label": {
                          "type": "string",
                          "minLength": 1
                        }
                      },
                      "required": [
                        "id",
                        "label"
                      ],
                      "additionalProperties": false
                    }
                  ]
                }
              },
              "visible_when": {
                "description": "Replace the visibility rule; null always shows the question.",
                "anyOf": [
                  {
                    "description": "Show this question only when an earlier answer matches.",
                    "type": "object",
                    "properties": {
                      "question_id": {
                        "description": "id of an EARLIER question of type BOOLEAN, TEXT_SINGLE_SELECT, or TEXT_MULTI_SELECT that controls whether this question is shown.",
                        "type": "string"
                      },
                      "equals": {
                        "description": "For a BOOLEAN controlling question: show when the answer equals this value.",
                        "type": "boolean"
                      },
                      "is_one_of": {
                        "description": "For a select controlling question: show when the answer is one of these choice labels.",
                        "minItems": 1,
                        "type": "array",
                        "items": {
                          "type": "string"
                        }
                      }
                    },
                    "required": [
                      "question_id"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "operation",
              "question_id"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "operation": {
                "type": "string",
                "const": "remove_question"
              },
              "question_id": {
                "description": "id from the target form (intake.sections or change_request_intake.sections) in get_spend_program_editor_state.",
                "type": "string"
              }
            },
            "required": [
              "operation",
              "question_id"
            ],
            "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": [
    "operations",
    "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