Skip to main content
Glama
workana-mcp

workana-mcp

by ErgoCodes

workana-mcp

An MCP server that lets Claude find and score freelance projects on Workana, so you spend your time on proposals that can actually win.

Why I built it

Most Workana projects are a poor fit: dozens of proposals already in, tiny budgets, clients who never paid anyone, or requests to move the conversation to WhatsApp. Checking each one by hand every day took longer than writing the proposals. This tool does the filtering and tells me which handful are worth my time.

It is read-only by design. Workana has no public API, so the server reads the same public pages you see in the browser without logging in. It never touches your account, never sends proposals or messages. You decide where to apply and send the proposal yourself.

Related MCP server: TopStartups Scout MCP

Tools

Tool

What it does

workana_buscar_proyectos

Search with filters: text, skills, category/subcategory, language, fixed price or hourly, age (24h/3d/week), few proposals only, client country, minimum budget, minimum rate, maximum proposals. Sort by opportunity, date or fewest proposals.

workana_ver_proyecto

Full project page: complete description, skills, budget, proposals, interested freelancers and the client (country, rating, projects posted and paid, member since, verified payment, their other projects).

workana_evaluar_proyecto

Opportunity score 0–100 with a breakdown, alerts, pros and cons, and tips for the proposal.

workana_mejores_oportunidades

Daily workflow: searches recent projects for your stack, drops the bad ones, deep-analyzes the best N and ranks them.

How the score (0–100) works

  • Stack fit (30): strong technologies (React, Node, TypeScript, Next, Express, Nest) in the skills or text, plus the % of the project's skills you have.

  • Competition (25): 0–4 proposals = 25 … 35+ = 2.

  • Budget (20): fixed price (≥ 1,000 USD = 20) or hourly rate (≥ 45 USD/h = 20).

  • Client (15): verified payment, rating, projects already paid and how many they posted.

  • Freshness (10): under 6 h = 10 … over a week = 0.

  • Penalties: paying or working outside Workana, contact via WhatsApp or Telegram, email in the description, free trial work, payment in equity or percentage, "low" budget, clones of big platforms, closed project.

Priority: high from 65, medium 45–64, low below 45. It's a heuristic to prioritize, not a guarantee.

The interesting problem: results Workana hides

Logged out, Workana only shows 7 of every 20 results per page and hides the rest to push you to sign up. Instead of logging in (which would put an account at risk), the server notices when a search has hidden results and splits it into narrower searches (by pricing model, number of proposals, subcategory, skill and, as a last resort, more pages), then merges and de-duplicates the results. max_consultas (default 20, max 30) caps how many requests that costs, and the response says how many projects it saw out of the total Workana reports.

The same idea fills another gap: a logged-out project page doesn't show the budget or verified payment, so the server finds the project in the listings by title and fills those fields in.

Requests go through curl_cffi (presenting as Chrome), wait 1.5 s between calls and are cached for 5 minutes.

Your profile

By default it scores against a fullstack stack: React.js, Node.js, TypeScript, JavaScript, Next.js, Express.js, NestJS, HTML/CSS, API/REST, MongoDB, MySQL/SQL, Git and Firebase. Two ways to change it:

  • Per query, with the mis_skills parameter.

  • Permanently, with the WORKANA_MIS_SKILLS variable in the server config (comma-separated).

Install (Linux)

Register the run.sh launcher in Claude Desktop. On first run it installs its dependencies into .venv and logs to install.log.

  1. Claude Desktop → Settings → Developer → Edit config.

  2. Inside "mcpServers", add:

"workana": {
  "command": "bash",
  "args": ["/PATH/TO/workana-mcp/run.sh"]
}

Optionally, set your skills profile:

"workana": {
  "command": "bash",
  "args": ["/PATH/TO/workana-mcp/run.sh"],
  "env": { "WORKANA_MIS_SKILLS": "React.js,Node.js,TypeScript,Next.js,NestJS,PostgreSQL,Docker" }
}
  1. Fully restart Claude Desktop. The first start takes a minute or two while it installs. If the workana_* tools don't show up, check install.log.

Example prompts

  • "Give me today's best Workana opportunities for my stack."

  • "Find fixed-price React or Next projects posted in the last 24 hours with few proposals."

  • "Evaluate this project: https://www.workana.com/job/…"

  • "Find hourly Node.js projects paying at least 20 USD/h from clients in Spain or the US."

The tool's output is in Spanish, its author's first language.

Limitations

  • If Workana blocks requests, wait a few minutes and use fewer pages.

  • If Workana changes its site, parsers.py needs updating. The tests (.venv/bin/python tests/test_all.py) run against saved real responses and catch it.

  • Personal use, low volume. Don't use it to scrape at scale or to automate sending proposals: that violates Workana's terms and puts your account at risk.

License

MIT

Available Tools

4 tools
workana_buscar_proyectosA
Read-onlyIdempotent

Busca proyectos abiertos en Workana con filtros y les pone un puntaje rápido de oportunidad (0-100) según encaje con tu stack, competencia, presupuesto, cliente y frescura. Solo lee el listado público: para datos del cliente (proyectos pagados, antigüedad) usa workana_evaluar_proyecto.

Inputs: texto, idioma, skills, formato, +12 more. Returns: result

workana_evaluar_proyectoA
Read-onlyIdempotent

Analiza a fondo un proyecto y dice si vale la pena postularse: puntaje 0-100 con desglose (encaje de skills, competencia, presupuesto, calidad del cliente, frescura), alertas (pago fuera de Workana, trabajo gratis, contacto por WhatsApp…), puntos a favor/en contra y consejos para la propuesta.

Inputs: proyecto (required), formato, mis_skills. Returns: result

workana_mejores_oportunidadesA
Read-onlyIdempotent

Flujo completo para el día: busca proyectos recientes de tu stack, descarta los malos (presupuesto bajo, demasiada competencia), analiza a fondo los mejores N (incluye historial de pagos del cliente) y los devuelve ordenados por puntaje con alertas y consejos. Ideal para una revisión diaria.

Inputs: top, texto, idioma, skills, +8 more. Returns: result

workana_ver_proyectoB
Read-onlyIdempotent

Ficha completa de un proyecto: descripción entera, skills, presupuesto, propuestas, freelancers interesados, y datos del cliente (país, calificación, proyectos publicados/pagados, miembro desde, pago verificado, otros proyectos).

Inputs: proyecto (required), formato. Returns: result

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.6/5.0

    Scored across 4 tools

    Disambiguation4/5

    The four tools operate at distinct scopes: listing search, single-project detail, deep evaluation, and a batch daily workflow. However, three of them emit a 0-100 opportunity score (buscar, evaluar, mejores_oportunidades), which risks confusion about which to use, though the descriptions cross-reference each other to clarify.

    Naming Consistency4/5

    All tools share the workana_ prefix and use Spanish naming, and three follow a verb_noun pattern (buscar_proyectos, ver_proyecto, evaluar_proyecto). The fourth, mejores_oportunidades, breaks the verb pattern with a noun phrase, a minor deviation.

    Tool Count4/5

    Four tools is on the lean side but each has a clear role in the search/evaluate pipeline. Nothing feels redundant enough to remove, though the surface is slightly thin for a job-hunting workflow.

    Completeness3/5

    The surface covers discovery and evaluation well, but there is no tool to actually submit a proposal or save/bookmark projects, despite the tools repeatedly referencing 'postularse' (applying). This is a notable gap in the lifecycle.

    Maintenance

    ActivityMaintained
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      C
      maintenance
      Enables AI clients to read and query a daily job-scan dataset via four read-only tools, including searching job postings, viewing the latest report, and checking market statistics.
      4
      51 PyPI
      MIT
    • A
      license
      Not graded
      quality
      C
      maintenance
      Enables any MCP host to search topstartups.io job postings by keyword, location, remote preference, and date, and to fetch individual job details through read-only tools.
      MIT
    • A
      license
      A
      quality
      B
      maintenance
      Enables agents to search open projects, freelancers and Offers, read briefs and profiles with recent reviews, and check median budgets, notifications and WorkStreams using cookies from your own Chrome session. Also lets users maintain a project watchlist and saved searches with email alerts, without sending proposals, messages, or spending credits.
      2
      17
      114 PyPI
      6
      Elastic 2.0
    • A
      license
      A
      quality
      B
      maintenance
      Enables AI agents to search and read public Karlancer marketplace data, including freelance projects, freelancer profiles, fixed-price services, skills, categories, and market-rate insights. It is read-only and requires no API key or account.
      14
      195 PyPI
      MIT