Skip to main content
Glama
automatikstudio

ProposalPilot MCP Server

README.md
# ProposalPilot MCP Server

An MCP (Model Context Protocol) server that generates professional freelance project proposals using AI.

## Features

- **AI-Powered Proposals**: Uses Claude to generate compelling, tailored proposals
- **Complete Proposal Structure**: Executive summary, scope, timeline, pricing, and terms
- **Customizable Tone**: Professional, confident, or friendly writing styles
- **MCP Compatible**: Works with any MCP-compatible client (Claude Desktop, etc.)

## Installation

```bash
cd mcp-servers/proposalpilot-mcp
npm install
npm run build
```

## Configuration

Set your Anthropic API key:

```bash
export ANTHROPIC_API_KEY=your-key-here
```

### Claude Desktop

Add to your Claude Desktop config (`~/.config/claude-desktop/config.json` or `~/Library/Application Support/Claude/claude_desktop_config.json`):

```json
{
  "mcpServers": {
    "proposalpilot": {
      "command": "node",
      "args": ["/path/to/mcp-servers/proposalpilot-mcp/dist/index.js"],
      "env": {
        "ANTHROPIC_API_KEY": "your-key-here"
      }
    }
  }
}
```

## Tool: `generate_proposal`

Generates a professional freelance project proposal.

### Required Inputs

| Parameter | Type | Description |
|-----------|------|-------------|
| `project_description` | string | Detailed description of the project requirements (min 10 chars) |
| `client_name` | string | Name of the client or company |
| `budget` | string | Budget info (e.g., "$100/hr", "$5000 fixed", "$3000-5000") |
| `timeline` | string | Desired timeline (e.g., "2 weeks", "by March 15") |

### Optional Inputs

| Parameter | Type | Description |
|-----------|------|-------------|
| `tone` | string | Writing tone: "professional", "confident", or "friendly" |
| `services` | string | Freelancer's services/skills to highlight |

### Example

```json
{
  "name": "generate_proposal",
  "arguments": {
    "project_description": "Build a modern e-commerce website with React frontend and Node.js backend. Need product catalog, shopping cart, checkout with Stripe, and admin dashboard.",
    "client_name": "TechStartup Inc",
    "budget": "$8,000 - $12,000",
    "timeline": "6 weeks",
    "tone": "professional",
    "services": "Full-stack web development, React, Node.js, PostgreSQL"
  }
}
```

### Output

Returns a complete proposal with:

1. **Executive Summary** - Project understanding and fit
2. **Scope of Work** - Detailed deliverables breakdown
3. **Timeline** - Milestones and schedule
4. **Pricing** - Cost breakdown based on budget
5. **Terms & Conditions** - Payment and revision policies

## Development

```bash
# Run in development mode
npm run dev

# Build
npm run build

# Test
npm test
```

## Testing

The test script validates server startup, tool listing, and (if ANTHROPIC_API_KEY is set) proposal generation:

```bash
npm run build
npm test
```

## License

MIT

TDQS

B3/5.0

Scored across 1 tool

Disambiguation5/5

With only one tool, there is no possibility of ambiguity or overlap between tools. The tool's purpose is clearly defined and distinct by default.

Naming Consistency5/5

A single tool inherently has perfect naming consistency, as there are no other tools to compare against. The name 'generate_proposal' follows a clear verb_noun pattern.

Tool Count2/5

A single tool is too few for a server named 'ProposalPilot MCP Server', which suggests a broader scope for managing proposals. This minimal set limits functionality and likely leaves gaps in the proposal lifecycle.

Completeness1/5

The tool set is severely incomplete for the implied domain of proposal management. It only provides generation, with no tools for editing, reviewing, listing, deleting, or other essential CRUD operations, causing significant agent failures.