Back to the catalog

io.github.getqlows/qlows-mcp

Find Tenders in 35 Countries of the WTO-GPA Zone and ground your AI for your RFP responses

Open source Open in the app JSON README (API)

About

Find Tenders in 35 Countries of the WTO-GPA Zone and ground your AI for your RFP responses

Details

Kind
MCP servers
Topic
No topic detected
Publisher
getqlows
Origin
official
Category
ferramentas
Transport
local
Version
1.0.0
Last push
2026-07-10T06:48:48Z
Repository state
ativo
Language
TypeScript
License
MIT
Added
2026-08-29 03:02:51
Updated
2026-08-29 03:02:51
Origin id
io.github.getqlows/qlows-mcp

README

<a href="https://qlows.com?utm_source=github&utm_medium=readme&utm_campaign=mcp">
  <img src="https://qlows.com/brand/qlows-mark-color.svg" alt="qlows" height="72" />
</a>

# qlows MCP connector

[![npm](https://img.shields.io/npm/v/@qlows/mcp?color=cb3837&logo=npm)](https://www.npmjs.com/package/@qlows/mcp)
[![LobeHub](https://img.shields.io/badge/LobeHub-MCP-42b883)](https://lobehub.com/mcp/getqlows-qlows-mcp)
[![MCP Registry](https://img.shields.io/badge/MCP-Registry-000000)](https://registry.modelcontextprotocol.io)
[![License: MIT](https://img.shields.io/badge/License-MIT-informational)](./LICENSE)

Bring your live **[qlows](https://qlows.com)** RFP/bid deals — and the public
tender corpus across 35 WTO-GPA countries — into Claude, Cursor, Windsurf,
Cline, Zed, or any [Model Context
Protocol](https://modelcontextprotocol.io) client.

`qlows-mcp` is a tiny local connector. It runs on your machine as a stdio MCP
server and securely proxies tool calls to the qlows API
(`https://app.qlows.com`). It stores nothing but your token, contains no
backend logic, and is **read-only** — your AI can pull deal context, never
write back.

> **Quotes. Flows. Close.** qlows preps the bid; your AI drafts from real,
> grounded context. Learn more at **https://qlows.com**.

## Install

One-click install for the common clients (or copy the JSON snippet below):

[![Add to Cursor](https://img.shields.io/badge/Add_to-Cursor-000000?logo=cursor&logoColor=white)](cursor://anysphere.cursor-deeplink/mcp/install?name=qlows&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBxbG93cy9tY3AiXX0=)
[![Add to VS Code](https://img.shields.io/badge/Add_to-VS_Code-007ACC?logo=visualstudiocode&logoColor=white)](vscode:mcp/install?%7B%22name%22%3A%22qlows%22%2C%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40qlows%2Fmcp%22%5D%7D)
[![Add to LobeChat](https://img.shields.io/badge/Add_to-LobeChat-42b883)](https://lobehub.com/mcp/getqlows-qlows-mcp)
[![Set up in Claude](https://img.shields.io/badge/Set_up-Claude_Desktop-D97757?logo=anthropic&logoColor=white)](https://qlows.com/docs/mcp)

---

## Quick start (≈ 1 minute)

```bash
# 1. Connect your account (opens the browser, you paste a token back)
npx @qlows/mcp login

# 2. Verify it works
npx @qlows/mcp test          # → prints the available tools

# 3. Print the snippet for your AI client
npx @qlows/mcp config
```

Then add qlows to your client (example: **Claude Desktop**,
`~/Library/Application Support/Claude/claude_desktop_config.json`):

```json
{
  "mcpServers": {
    "qlows": {
      "command": "npx",
      "args": ["-y", "@qlows/mcp"]
    }
  }
}
```

Restart the client. If you didn't run `login`, pass the token instead:

```json
{
  "mcpServers": {
    "qlows": {
      "command": "npx",
      "args": ["-y", "@qlows/mcp"],
      "env": { "QLOWS_TOKEN": "qlw_live_…" }
    }
  }
}
```

You'll need a qlows account to mint a personal token (free tier works for
tender search). Sign up + mint at **https://app.qlows.com/mcp**.

---

## Try these prompts

After connecting, ask your AI:

1. *"Use the qlows MCP to list my open deals, then summarize the top 3 risks
   in the most urgent one."*
2. *"Search public tenders for Zero-Trust networking in the EU closing in the
   next 30 days, and give me the qlows link for each."*
3. *"Read the deal `<deal-id>` from qlows and draft the Technical Approach
   section, grounding every claim in the compliance items and our approved
   answers."*

---

## What you get

All tools are **read-only**. Personal-data tools need a personal token; the
tender tools also work on a free account.

| Tool | What it does |
|---|---|
| `list_deals` | Your RFP/bid deals (lightweight metadata) |
| `get_deal_snapshot` | Full deal snapshot — RFP summary + compliance + Q-routing + intelligence |
| `search_compliance_items` | Keyword search across compliance items |
| `get_q_routing_state` | Sections + questions + answers + assignment state |
| `get_intelligence_summary` | AI summary + tailoring detection |
| `list_questions` | Flat question list |
| `list_competitors` | Per-deal competitor analysis |
| `search_tenders` | Public tender corpus search (FTS + filters) |
| `search_tenders_for_my_company` | Personalised semantic tender search |
| `get_tender_detail` | Full enriched record for one tender |

Plus three **prompts** (slash-commands) — `find_matching_tenders`,
`draft_rfp_section`, `weekly_pipeline_review` — see [Skills](#skills) below.

The connector discovers tools **and prompts** live from the server, so new
qlows capabilities appear without updating this package.

---

## Skills

Three things qlows is built to do inside your AI. Each maps to a
**prompt** (a slash-command your client exposes) plus the read-only tools it
drives — all grounded in real qlows data, never invented.

### 🔎 Find matching tenders

Prompt: **`find_matching_tenders`** (args: `industry`, optional `country`,
optional `deadline_within_days`). Drives `search_tenders` and returns each live
notice with its canonical `qlows_url`. Full context:
<https://qlows.com/platform/qlows-mcp>.

> *"Find open zero-trust networking tenders in Germany closing in the next 30
> days, with the qlows link for each."*

### ✍️ Draft an RFP section, grounded

Prompt: **`draft_rfp_section`** (args: `deal_id`, `section`). Pulls the deal's
compliance grid and approved answers via `get_deal_snapshot` +
`search_compliance_items`, then drafts the section with every claim traced to
source — no fabricated capabilities, dates, or past performance.

> *"Draft the Technical Approach for deal `<id>`, grounded in the compliance
> items and our approved answers."*

### 🗂️ Review your pipeline

Prompt: **`weekly_pipeline_review`** (no args). Uses `list_deals` +
`get_q_routing_state` to produce a prioritized to-do list: what's due, what's
blocked, and the next action per deal.

> *"Review my qlows pipeline and tell me which bids need attention first."*

The public tender skills work on a free account; the deal skills need a
personal token. See the [full platform overview](https://qlows.com/platform/qlows-mcp).

---

## Commands

| Command | Description |
|---|---|
| `qlows-mcp` | Run the MCP server over stdio (how clients launch it) |
| `qlows-mcp login` | Sign in via browser and store a token in `~/.qlows/config.json` (0600) |
| `qlows-mcp test` | List available tools to verify your token |
| `qlows-mcp config` | Print config path + a client setup snippet |
| `qlows-mcp help` | Usage |

**Environment variables**

- `QLOWS_TOKEN` — API token (overrides the stored one).
- `QLOWS_BASE_URL` — defaults to `https://app.qlows.com`; point at
  `http://localhost:3000` for local testing.

---

## How it works

```
MCP client (Claude/Cursor)  ⇄  qlows-mcp (stdio, local)  ⇄  https://app.qlows.com/api/mcp/<token>/rpc
```

The connector is a transparent JSON-RPC proxy. It does not implement tools — it
forwards `initialize`, `tools/list`, `tools/call`, `prompts/*`, and
`resources/*` to the qlows server and relays the responses. The token travels
in the request to qlows over HTTPS; treat it like a password.

---

## Troubleshooting

- **`No qlows token found`** — run `qlows-mcp login`, or set `QLOWS_TOKEN`.
- **`Token missing, invalid, or expired`** — the token was revoked or expired;
  mint a new one at https://app.qlows.com/mcp and re-run `login`.
- **`Rate limit exceeded`** — 60 requests/min per token; wait and retry.
- **Client doesn't see `qlows`** — restart the client after editing config;
  validate the JSON (a stray comma silently breaks it); check the client's MCP
  logs.

Verify end-to-end with the
[MCP Inspector](https://github.com/modelcontextprotocol/inspector):

```bash
npx @modelcontextprotocol/inspector npx @qlows/mcp
```

---

## Privacy & security

- Read-only: no tool writes back to your qlows account.
- The connector stores only your token, locally, at `~/.qlows/config.json`
  (permissions `0600`). It collects no telemetry.
- Tokens are SHA-256-hashed at rest on the qlows server and can be revoked
  instantly at https://app.qlows.com/mcp.
- Privacy policy: https://qlows.com/privacy

---

## Roadmap

- **One-click browser auto-capture** for `login` (loopback callback).
- **Desktop Extension (`.mcpb`)** bundle for a true one-click Claude Desktop
  install (the badge above links to setup docs in the meantime).
- **Anthropic Connector Directory** listing — the OAuth 2.1 + PKCE endpoint is
  live on the qlows server; directory submission is tracked as a follow-up.

---

## Development

```bash
npm install
npm run build
QLOWS_TOKEN=… QLOWS_BASE_URL=http://localhost:3000 node dist/index.js test
```

Publishing is automated on `v*` tags (see `.github/workflows/release.yml`):
npm publish → MCP Registry publish via GitHub OIDC.

**##Badges**

[![MCP Badge](https://lobehub.com/badge/mcp/getqlows-qlows-mcp)](https://lobehub.com/mcp/getqlows-qlows-mcp)

## License

MIT

More