Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.propal.io/llms.txt

Use this file to discover all available pages before exploring further.

1. Endpoint

The MCP server is available at:
https://api.propal.io/v1/mcp
It uses the Streamable HTTP transport and authenticates via OAuth 2.1.

2. Connect a client

Open ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows) and add a propal entry to mcpServers:
{
  "mcpServers": {
    "propal": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://api.propal.io/v1/mcp"]
    }
  }
}
Restart Claude Desktop. On first use, a browser window opens to authorize your Propal organization — accept and you’re connected.

3. First call — list components

Once connected, ask the agent to list the available DSL components:
List the available Propal components and their constraints.
The agent will call list_propal_components and surface the catalog (sections, blocks, cards, tables, gallery, embed) plus the structural rules (no nested sections, columns count must match, etc.).

4. Build your first section

Try:
Create a new proposal called "Q2 redesign" for lead Acme. Add an intro section
with a badge "Welcome", a title, a 3-paragraph description, and three goals
as numbered callouts.
The agent will chain:
1

create_proposal

Creates a blank proposal and returns its id.
2

list_propal_components / get_propal_component_schema

(Optional) Discovery if the agent isn’t yet familiar with the grammar.
3

validate_propal_component_tree (optional)

Sanity-check the tree without writing.
4

append_propal_component_tree_to_proposal

Validates, assembles, and atomically appends the section(s) to the proposal document.

5. Inspect the result

Read what the agent produced:
Show me the structure of that proposal.
Calls get_proposal_tree, returns the document mapped to DSL — sections with indices the agent can target for further edits.

6. Iterate

Anything from this point is a normal MCP tool call:
  • update_section_at_index to rewrite a section
  • set_proposal_section_attrs to swap the section style or background
  • find_and_replace_in_proposal for bulk text edits
  • apply_theme_to_proposal to change the design
See editing and theming for the full flow.

What’s next

Authentication

How OAuth 2.1, consent, and the mcp:use scope work.

Components DSL

The typed grammar for building proposal content.

Theming

Three ways to create themes, plus apply/detach/per-section.

Editing

Read, mutate, and reorder existing proposals.