Proposal Generator MCP

Proposal Generator MCP

Generates professional client proposals including timeline, tech stack, price estimate, and milestone breakdown from client requirements.

Category
Visit Server

README

Proposal Generator MCP

An MCP (Model Context Protocol) server that turns client requirements into a timeline, tech stack, price estimate, milestone breakdown, and a ready-to-send Markdown proposal document — built for freelancers and agencies.

{
  "clientName": "Green Valley Fertilizers",
  "projectType": "ecommerce",
  "features": ["auth", "ecommerce-catalog", "payments", "admin-dashboard", "search"],
  "region": "pakistan"
}

Use it from Claude Desktop, Claude Code, Cursor, or any MCP-compatible client.

Tools

Tool Returns
generate_proposal Full pipeline: JSON summary + Markdown proposal document
estimate_price_and_timeline Quick estimate: hours, price range, timeline
recommend_tech_stack Tech stack suggestion based on project type + features
list_feature_catalog Every recognized feature key with its hour estimate and category

Install & run

Option A — from source (local development)

git clone <repo-url> proposal-generator
cd proposal-generator
bun install
bun run build

Start the server:

bun start

Option B — from npm (published package)

npm install -g @proposal-generator/server
# or
bun install -g @proposal-generator/server

Run it:

proposal-generator-mcp

Scripts reference

Script Description
bun run build Build with tsdown (ESM + .d.ts + sourcemap)
bun run dev Watch mode rebuild on changes
bun run lint Auto-fix lint & formatting issues (biome)
bun run lint:check Check lint without writing
bun run typecheck tsc --noEmit type verification
bun run release Build, bump version, publish to npm

Configure your MCP client

Claude Desktop

Edit claude_desktop_config.json (location varies by OS):

Local source install:

{
  "mcpServers": {
    "proposal-generator": {
      "command": "bun",
      "args": ["run", "/absolute/path/to/proposal-generator/packages/server/dist/index.mjs"]
    }
  }
}

Global npm install:

{
  "mcpServers": {
    "proposal-generator": {
      "command": "npx",
      "args": ["@proposal-generator/server"]
    }
  }
}

Claude Code

# Local source install
claude mcp add proposal-generator -- bun run /absolute/path/to/proposal-generator/packages/server/dist/index.mjs

# Global npm install
claude mcp add proposal-generator -- npx @proposal-generator/server

Cursor

Settings → Features → MCP Servers → Add new MCP server:

Field Local npm
Name proposal-generator proposal-generator
Type command command
Command bun run /absolute/path/.../dist/index.mjs npx @proposal-generator/server

opencode

If using opencode, add to your project's opencode.json:

{
  "mcpServers": {
    "proposal-generator": {
      "command": "bun",
      "args": ["run", "packages/server/dist/index.mjs"]
    }
  }
}

Any MCP client (stdio)

{
  "mcpServers": {
    "proposal-generator": {
      "command": "bun",
      "args": ["run", "/path/to/packages/server/dist/index.mjs"]
    }
  }
}

Customizing estimates

Everything that drives the numbers lives in two files — no logic changes needed:

File What to tune
packages/server/src/data/featureCatalog.ts Feature keys, hour estimates, tech pulled in
packages/server/src/data/rateCards.ts Regional hourly rates, base hours per project type, complexity multipliers

The milestone template (phase names, payment splits) lives in packages/server/src/logic/estimator.ts. The proposal document layout lives in packages/server/src/logic/proposalBuilder.ts.

After editing any of these, rebuild with bun run build.


Project structure

proposal-generator/
├── package.json               # workspace root (bun monorepo)
├── biome.json                 # lint & format config
├── tsconfig.base.json         # shared TypeScript config
├── opencode.json              # opencode MCP config
├── .gitignore
├── README.md
│
└── packages/
    └── server/                # @proposal-generator/server
        ├── package.json
        ├── tsconfig.json      # extends tsconfig.base.json
        ├── tsdown.config.ts   # build config
        ├── dist/              # build output (gitignored)
        └── src/
            ├── index.ts                   # MCP server + tool definitions
            ├── data/
            │   ├── featureCatalog.ts      # feature -> hours/tech mapping
            │   └── rateCards.ts           # regional rates, base hours, multipliers
            └── logic/
                ├── estimator.ts           # core math: hours, price, timeline, milestones
                └── proposalBuilder.ts     # renders the Markdown proposal document

Publishing to npm

# Login (one-time)
npm login

# Bump version, tag, and publish
bun run release

This runs: bun run buildbumpp (version bump + git tag) → npm publish.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured