Skip to main content

Advanced Agent

CLI agent and MCP server for researching developer tools using Firecrawl + LangGraph + Ollama.

It takes a user query (for example, vector databases), finds relevant tools, scrapes key pages, runs structured analysis, and prints concise recommendations. It can run as a standalone CLI or be exposed as an MCP tool for use with Claude and other MCP clients.

Requirements

  • Python >=3.11,<3.14
  • uv installed
  • Node.js and npx (used to run the Firecrawl MCP server)
  • Firecrawl API key
  • Ollama running locally

Quick Start

  1. Install dependencies:
uv sync
  1. Create env file:
cp .env.example .env
  1. Set required values in .env:
  • FIRECRAWL_API_KEY (required)
  • OLLAMA_MODEL and OLLAMA_BASE_URL (defaults are usually fine)
  1. Start Ollama and ensure the model exists:
ollama serve
ollama pull qwen2.5:1.5b
  1. Run the app:
uv run .\main.py

Type your query at the prompt. Use exit or quit to stop.

How It Works

  1. Extract likely tool names from search content
  2. Research each tool's official pages
  3. Analyze results into structured fields (pricing, OSS, APIs, integrations)
  4. Generate a short recommendation summary

Run as MCP Server

The workflow is also exposed as an MCP tool (research_dev_tools) via server.py. To use it with Claude Desktop or another MCP client, add this to your MCP client config:

{
  "mcpServers": {
    "dev-tools-researcher": {
      "command": "uv",
      "args": ["run", "research-mcp-server"],
      "env": {
        "FIRECRAWL_API_KEY": "<your-key>"
      }
    }
  }
}

Or run directly:

uv run research-mcp-server

Project Structure

  • main.py — CLI loop and output formatting
  • server.py — MCP server exposing the workflow as a research_dev_tools tool
  • src/workflow.py — LangGraph workflow orchestration
  • src/firecrawl.py — Firecrawl MCP client (search/scrape via npx firecrawl-mcp)
  • src/models.py — Pydantic state/result models
  • src/prompts.py — Prompt templates

Run with Docker (Local)

Build image locally:

docker build -t advanced-agent:local .

Run interactively with env vars:

docker run --rm -it --env-file .env advanced-agent:local

Run Tests

Install dev dependencies and run tests:

uv sync --dev
uv run pytest -q

Publish with GitHub Actions (GHCR)

This repo includes .github/workflows/docker.yml.

  • On pull requests: runs tests, then builds image only (no push)
  • On main/master push: builds and pushes to GHCR
  • On version tag push (for example v1.2.3): publishes semver tags (1.2.3, 1.2, 1)
  • On manual trigger: builds and pushes

Example:

git tag v1.2.3
git push origin v1.2.3

Published image name:

ghcr.io/<owner>/<repo>:latest

After first push, make sure the GHCR package visibility is set as desired (public/private).

Run published image anywhere locally:

docker run --rm -it \
  --env-file .env \
  ghcr.io/<owner>/<repo>:latest

Common Issues

  • FIRECRAWL_API_KEY is required...

    • Add a valid key to .env.
  • npx: command not found or Firecrawl MCP errors

    • Install Node.js (which includes npx). The Firecrawl MCP server is launched automatically via npx firecrawl-mcp.
  • Ollama connection/model errors

    • Start Ollama (ollama serve) and pull the configured model.
  • Python/import warnings in editor

    • Make sure VS Code is using this project's interpreter: advanced-agent/.venv.
  • Container exits or fails on startup

    • Confirm .env includes valid FIRECRAWL_API_KEY and Ollama settings.
    • If using local Ollama from inside Docker, set OLLAMA_BASE_URL to a host-reachable address (for example http://host.docker.internal:11434).

Release files for advanced-agent 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for advanced-agent 0.1.1
File Size Uploaded
advanced_agent-0.1.1.tar.gz 96.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for advanced-agent 0.1.1
File Interpreter ABI Platform
advanced_agent-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 106.9 kB

Release files / advanced_agent-0.1.1.tar.gz

Download URL advanced_agent-0.1.1.tar.gz
Size 96.3 kB
Tags Source
SHA-256 checksum
How to use checksums
067f5cc0cbac361ddb3e451a0bbdbd9ad292e750b7a9a953c62c07bee87d8848
BLAKE2b-256 checksum
How to use checksums
e4ff66a43f880ed43c7210404168ad108b9792ef113f3e2766405420bea2cd96
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 22, 2026.

Transparency log

Release files / advanced_agent-0.1.1-py3-none-any.whl

Download URL advanced_agent-0.1.1-py3-none-any.whl
Size 10.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
128e685040f00219ddd26e0d16f8b31e39f1ce4934c14a2611281c156a83c875
BLAKE2b-256 checksum
How to use checksums
02694ada031fa34afc2328867b16ce30b3664e6ccbf84fa97ae4ae9d33043c09
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 22, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page