activepieces
AI Agents & MCPs & AI Workflow Automation β’ (~400 MCP servers for AI agents) β’ AI Automation / AI Agent with MCPs β’ AI Workflows & AI Agents β’ MCPs for AI Agents
Xpersona Agent
Two AI agents walk into a terminal... one Googles, one writes. Out comes a full financial research report. Built with CrewAI. Financial Researcher ππ An AI-powered multi-agent system that researches any publicly traded company and delivers a polished financial analysis report β in minutes. Built with $1, it orchestrates two specialised AI agents that work in sequence: one scours the web for real-time data, the other synthesises those findings into a professional-grade Markdown report. --- Table of Contents - $1 - $1 - $1 - $1 - $1 - $1 -
git clone https://github.com/kksen18-collab/financial-researcher.gitOverall rank
#21
Adoption
No public adoption signal
Trust
Unknown
Freshness
May 18, 2026
Freshness
Last checked May 18, 2026
Best For
financial-researcher is best for crewai, multi-agent workflows where OpenClaw compatibility matters.
Not Ideal For
Contract metadata is missing or unavailable for deterministic execution.
Evidence Sources Checked
editorial-content, GITHUB OPENCLEW, runtime-metrics, public facts pack
Key links, install path, reliability highlights, and the shortest practical read before diving into the crawl record.
Overview
Two AI agents walk into a terminal... one Googles, one writes. Out comes a full financial research report. Built with CrewAI. Financial Researcher ππ An AI-powered multi-agent system that researches any publicly traded company and delivers a polished financial analysis report β in minutes. Built with $1, it orchestrates two specialised AI agents that work in sequence: one scours the web for real-time data, the other synthesises those findings into a professional-grade Markdown report. --- Table of Contents - $1 - $1 - $1 - $1 - $1 - $1 - Capability contract not published. No trust telemetry is available yet. Last updated 5/18/2026.
Trust score
Unknown
Compatibility
OpenClaw
Freshness
May 18, 2026
Vendor
Kksen18 Collab
Artifacts
0
Benchmarks
0
Last release
Unpublished
Install & run
git clone https://github.com/kksen18-collab/financial-researcher.gitSetup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.
Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.
Public facts grouped by evidence type, plus release and crawl events with provenance and freshness.
Public facts
Vendor
Kksen18 Collab
Protocol compatibility
OpenClaw
Handshake status
UNKNOWN
Crawlable docs
6 indexed pages on the official domain
Parameters, dependencies, examples, extracted files, editorial overview, and the complete README when available.
Captured outputs
Extracted files
0
Examples
6
Snippets
0
Languages
python
text
$ crewai run Enter the company to research: Apple [Researcher Agent] Searching the web for Apple financial data... [Analyst Agent] Synthesising research into a comprehensive report... === FINAL REPORT === # Comprehensive Report on Apple Inc. As of 2026-03-24 ... Report has been saved to output/report.md
text
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β USER INPUT β
β "Enter company name" β
βββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β CREW (Sequential) β
β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β STEP 1 β Research Task β β
β β Agent: Senior Financial Researcher β β
β β Tool: SerperDevTool (Google Search) β β
β β Output: Structured research document β β
β ββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββ β
β β context passed downstream β
β ββββββββββββββββββββββββββββΌββββββββββββββββββββββββββββ β
β β STEP 2 β Analysis Task β β
β β Agent: Market Analyst & Report Writer β β
β β Tool: (none β works from research context) β β
β β Output: output/report.md β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββyaml
# config/agents.yaml
researcher:
role: Senior Financial Researcher for {company}
goal: Research the company, news and potential for {company}
backstory: You're a seasoned financial researcher...
llm: openai/gpt-4o-miniyaml
# config/tasks.yaml
analysis_task:
description: Analyze the research findings and create a comprehensive report...
expected_output: A polished, professional report...
agent: analyst
context:
- research_task # β analyst reads the researcher's full output
output_file: output/report.mdpython
@crew
def crew(self) -> Crew:
return Crew(
agents=self.agents, # [researcher, analyst]
tasks=self.tasks, # [research_task, analysis_task]
process=Process.sequential,
verbose=True,
)python
ResearchCrew().crew().kickoff(inputs={"company": "Apple", "date": "2026-03-24"})Editorial read
Docs source
GITHUB OPENCLEW
Editorial quality
ready
Two AI agents walk into a terminal... one Googles, one writes. Out comes a full financial research report. Built with CrewAI. Financial Researcher ππ An AI-powered multi-agent system that researches any publicly traded company and delivers a polished financial analysis report β in minutes. Built with $1, it orchestrates two specialised AI agents that work in sequence: one scours the web for real-time data, the other synthesises those findings into a professional-grade Markdown report. --- Table of Contents - $1 - $1 - $1 - $1 - $1 - $1 -
An AI-powered multi-agent system that researches any publicly traded company and delivers a polished financial analysis report β in minutes.
Built with CrewAI, it orchestrates two specialised AI agents that work in sequence: one scours the web for real-time data, the other synthesises those findings into a professional-grade Markdown report.
$ crewai run
Enter the company to research: Apple
[Researcher Agent] Searching the web for Apple financial data...
[Analyst Agent] Synthesising research into a comprehensive report...
=== FINAL REPORT ===
# Comprehensive Report on Apple Inc.
As of 2026-03-24 ...
Report has been saved to output/report.md
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β USER INPUT β
β "Enter company name" β
βββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β CREW (Sequential) β
β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β STEP 1 β Research Task β β
β β Agent: Senior Financial Researcher β β
β β Tool: SerperDevTool (Google Search) β β
β β Output: Structured research document β β
β ββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββ β
β β context passed downstream β
β ββββββββββββββββββββββββββββΌββββββββββββββββββββββββββββ β
β β STEP 2 β Analysis Task β β
β β Agent: Market Analyst & Report Writer β β
β β Tool: (none β works from research context) β β
β β Output: output/report.md β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
An Agent is an autonomous AI entity with a specific role, goal, and backstory. Think of it as hiring a specialist for a job β you describe who they are, what they're trying to achieve, and the context that shapes their expertise. Each agent is backed by an LLM and can optionally be equipped with tools to interact with the outside world.
| Property | Purpose |
|-------------|---------|
| role | The agent's job title / persona (e.g., Senior Financial Researcher) |
| goal | What the agent is trying to accomplish |
| backstory | Background context that shapes the agent's reasoning style |
| llm | The language model powering the agent |
| tools | External capabilities the agent can invoke (search, code execution, APIsβ¦) |
| verbose | Prints the agent's chain-of-thought reasoning to the console |
# config/agents.yaml
researcher:
role: Senior Financial Researcher for {company}
goal: Research the company, news and potential for {company}
backstory: You're a seasoned financial researcher...
llm: openai/gpt-4o-mini
A Task is a specific piece of work assigned to an agent. It defines what needs to be done, what a successful result looks like, and which agent is responsible. Tasks can receive the output of previous tasks as context, enabling agents to build on each other's work.
| Property | Purpose |
|-------------------|---------|
| description | Detailed instructions for what to do |
| expected_output | Describes what a complete, correct result looks like |
| agent | Which agent is assigned to this task |
| context | List of prior tasks whose output is fed into this task |
| output_file | (Optional) Persist the result to a file |
# config/tasks.yaml
analysis_task:
description: Analyze the research findings and create a comprehensive report...
expected_output: A polished, professional report...
agent: analyst
context:
- research_task # β analyst reads the researcher's full output
output_file: output/report.md
A Crew is the team β it binds agents and tasks together under a shared process (execution strategy). The crew is responsible for scheduling tasks, routing context between them, and collecting the final result.
@crew
def crew(self) -> Crew:
return Crew(
agents=self.agents, # [researcher, analyst]
tasks=self.tasks, # [research_task, analysis_task]
process=Process.sequential,
verbose=True,
)
Kickoff the crew with dynamic inputs:
ResearchCrew().crew().kickoff(inputs={"company": "Apple", "date": "2026-03-24"})
The Process controls how tasks are executed relative to each other.
Process.sequential (used in this project)Tasks run one after another, in the order they are defined. The output of each task is automatically passed as context to the next. Simple, predictable, and great for linear pipelines.
Task 1 βββΊ Task 2 βββΊ Task 3 βββΊ Final Result
Process.hierarchicalA designated manager agent (or manager LLM) dynamically delegates tasks to the most suitable agent, decides the order of execution, and reviews outputs. Best for complex, open-ended workflows where the path isn't known upfront.
Manager Agent
/ | \
Task A Task B Task C (assigned dynamically)
\ | /
Final Result
| Feature | Sequential | Hierarchical | |----------------------|----------------------|----------------------------| | Execution order | Fixed, top-to-bottom | Dynamic delegation | | Manager agent needed | No | Yes | | Complexity | Low | High | | Best for | Linear pipelines | Complex, adaptive workflows |
Tools extend an agent's capabilities beyond text generation. They allow agents to interact with the real world β search the web, read files, execute code, call APIs, query databases, and more.
| Tool | Source | Purpose |
|-----------------|----------------|---------|
| SerperDevTool | crewai_tools | Executes real-time Google searches β gives the researcher access to current news, stock data, and filings |
| Tool | Purpose |
|---------------------------|---------|
| FileReadTool | Read local files |
| WebsiteSearchTool | Scrape and search a specific website |
| YoutubeVideoSearchTool | Search YouTube transcripts |
| CodeInterpreterTool | Execute Python code |
| ScrapeWebsiteTool | Extract full HTML content from a URL |
financial_researcher/
βββ src/
β βββ financial_researcher/
β βββ __init__.py
β βββ crew.py # Agent, Task, and Crew definitions
β βββ main.py # Entry point β prompts for company name, kicks off crew
β βββ config/
β βββ agents.yaml # Agent personas (role, goal, backstory, llm)
β βββ tasks.yaml # Task definitions (description, expected output, agent)
βββ output/
β βββ report.md # Generated report (auto-created after each run)
βββ pyproject.toml # Project metadata and dependencies
βββ .env # Your secret API keys (never commit this!)
βββ .env.example # Template β copy to .env and fill in your keys
βββ README.md
openai/gpt-4o-miniSerperDevTool β performs live Google searchesopenai/gpt-4o-mini| Task | Agent | Input | Output |
|-----------------|------------|-----------------------------|-----------------------|
| research_task | Researcher | Company name + date | Research document |
| analysis_task | Analyst | Research document (context) | output/report.md |
>=3.10 and <3.13# 1. Clone the repository
git clone https://github.com/your-username/financial-researcher.git
cd financial-researcher/financial_researcher
# 2. Install uv (if not already installed)
pip install uv
# 3. Install project dependencies
crewai install
# 4. Copy the environment template and fill in your keys
copy .env.example .env # Windows
cp .env.example .env # macOS / Linux
Open .env and add your API keys:
OPENAI_API_KEY=sk-...
SERPER_API_KEY=...
To swap the LLM model, edit src/financial_researcher/config/agents.yaml:
researcher:
llm: openai/gpt-4o-mini # or: openai/gpt-4o, anthropic/claude-3-5-sonnet, etc.
# Activate the virtual environment
.venv\Scripts\activate # Windows
source .venv/bin/activate # macOS / Linux
# Run
crewai run
You will be prompted:
Enter the company to research: Tesla
The crew runs (typically 1β3 minutes) and saves the full report to output/report.md.
The output/ directory contains a real example report generated for Apple Inc. as of March 24, 2026.
Sections include:
Pull requests are welcome! For major changes, please open an issue first to discuss what you would like to change.
git checkout -b feature/my-feature)git commit -m 'Add my feature')git push origin feature/my-feature)This project is licensed under the MIT License.
Disclaimer: Reports generated by this tool are for informational and educational purposes only. They should not be used as the basis for any financial or investment decisions.
Machine endpoints, contract coverage, trust signals, runtime metrics, benchmarks, and guardrails for agent-to-agent use.
Machine interfaces
Contract coverage
Status
missing
Auth
None
Streaming
No
Data region
Unspecified
Protocol support
Requires: none
Forbidden: none
Guardrails
Operational confidence: low
curl -s "https://www.xpersona.co/api/v1/agents/crewai-kksen18-collab-financial-researcher/snapshot"
curl -s "https://www.xpersona.co/api/v1/agents/crewai-kksen18-collab-financial-researcher/contract"
curl -s "https://www.xpersona.co/api/v1/agents/crewai-kksen18-collab-financial-researcher/trust"
Operational fit
Trust signals
Handshake
UNKNOWN
Confidence
unknown
Attempts 30d
unknown
Fallback rate
unknown
Runtime metrics
Observed P50
unknown
Observed P95
unknown
Rate limit
unknown
Estimated cost
unknown
Do not use if
Raw contract, invocation, trust, capability, facts, and change-event payloads for machine-side inspection.
Contract JSON
{
"contractStatus": "missing",
"authModes": [],
"requires": [],
"forbidden": [],
"supportsMcp": false,
"supportsA2a": false,
"supportsStreaming": false,
"inputSchemaRef": null,
"outputSchemaRef": null,
"dataRegion": null,
"contractUpdatedAt": null,
"sourceUpdatedAt": null,
"freshnessSeconds": null
}Invocation Guide
{
"preferredApi": {
"snapshotUrl": "https://www.xpersona.co/api/v1/agents/crewai-kksen18-collab-financial-researcher/snapshot",
"contractUrl": "https://www.xpersona.co/api/v1/agents/crewai-kksen18-collab-financial-researcher/contract",
"trustUrl": "https://www.xpersona.co/api/v1/agents/crewai-kksen18-collab-financial-researcher/trust"
},
"curlExamples": [
"curl -s \"https://www.xpersona.co/api/v1/agents/crewai-kksen18-collab-financial-researcher/snapshot\"",
"curl -s \"https://www.xpersona.co/api/v1/agents/crewai-kksen18-collab-financial-researcher/contract\"",
"curl -s \"https://www.xpersona.co/api/v1/agents/crewai-kksen18-collab-financial-researcher/trust\""
],
"jsonRequestTemplate": {
"query": "summarize this repo",
"constraints": {
"maxLatencyMs": 2000,
"protocolPreference": [
"OPENCLEW"
]
}
},
"jsonResponseTemplate": {
"ok": true,
"result": {
"summary": "...",
"confidence": 0.9
},
"meta": {
"source": "GITHUB_OPENCLEW",
"generatedAt": "2026-10-09T02:04:54.013Z"
}
},
"retryPolicy": {
"maxAttempts": 3,
"backoffMs": [
500,
1500,
3500
],
"retryableConditions": [
"HTTP_429",
"HTTP_503",
"NETWORK_TIMEOUT"
]
}
}Trust JSON
{
"status": "unavailable",
"handshakeStatus": "UNKNOWN",
"verificationFreshnessHours": null,
"reputationScore": null,
"p95LatencyMs": null,
"successRate30d": null,
"fallbackRate": null,
"attempts30d": null,
"trustUpdatedAt": null,
"trustConfidence": "unknown",
"sourceUpdatedAt": null,
"freshnessSeconds": null
}Capability Matrix
{
"rows": [
{
"key": "OPENCLEW",
"type": "protocol",
"support": "unknown",
"confidenceSource": "profile",
"notes": "Listed on profile"
},
{
"key": "crewai",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "multi-agent",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
}
],
"flattenedTokens": "protocol:OPENCLEW|unknown|profile capability:crewai|supported|profile capability:multi-agent|supported|profile"
}Facts JSON
[
{
"factKey": "vendor",
"label": "Vendor",
"value": "Kksen18 Collab",
"category": "vendor",
"href": "https://github.com/kksen18-collab/financial-researcher",
"sourceUrl": "https://github.com/kksen18-collab/financial-researcher",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-05-18T06:45:32.179Z",
"isPublic": true,
"metadata": {}
},
{
"factKey": "protocols",
"label": "Protocol compatibility",
"value": "OpenClaw",
"category": "compatibility",
"href": "https://www.xpersona.co/api/v1/agents/crewai-kksen18-collab-financial-researcher/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/crewai-kksen18-collab-financial-researcher/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-05-18T06:45:32.179Z",
"isPublic": true,
"metadata": {}
},
{
"factKey": "docs_crawl",
"label": "Crawlable docs",
"value": "6 indexed pages on the official domain",
"category": "integration",
"href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceType": "search_document",
"confidence": "medium",
"observedAt": "2026-04-15T05:03:46.393Z",
"isPublic": true,
"metadata": {}
},
{
"factKey": "handshake_status",
"label": "Handshake status",
"value": "UNKNOWN",
"category": "security",
"href": "https://www.xpersona.co/api/v1/agents/crewai-kksen18-collab-financial-researcher/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/crewai-kksen18-collab-financial-researcher/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true,
"metadata": {}
}
]Change Events JSON
[
{
"eventType": "docs_update",
"title": "Docs refreshed: Sign in to GitHub Β· GitHub",
"description": "Fresh crawlable documentation was indexed for the official domain.",
"href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceType": "search_document",
"confidence": "medium",
"observedAt": "2026-04-15T05:03:46.393Z",
"isPublic": true,
"metadata": {}
}
]Sponsored
Ads related to financial-researcher and adjacent AI workflows.