Add an FXMacroData tool for macroeconomic, FX and central-bank data
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 58.8k
- Forks
- 8.5k
- Avg merge
- 1d 15h
- Merged PRs (30d)
- 109
Description
crewai-tools has strong coverage for equities, search and RAG, but no source for macroeconomic releases - inflation prints, payrolls, policy rates, release calendars - or for official FX reference rates.
That gap is awkward for an agent to fill itself, because the data is spread across eighteen separate official publishers (statistical agencies, central banks, exchanges), each with its own format and release schedule. Answering something as ordinary as "what did US core inflation print at, and when is the next release" currently means the agent needs to know which publisher to call and how to parse it.
Proposal
Add FXMacroDataTool, wrapping FXMacroData, which aggregates those official publishers behind one contract across 18 currencies.
A single dataset argument selects the surface: catalogue (discover indicator slugs), latest (the newest print of every indicator for an economy, in one request), history, calendar, press_releases, fx_rate, rate_differential, cot, commodities, market_sessions, risk_sentiment.
Two things make it useful for agents specifically:
- One call covers an economy.
dataset="latest"returns the most recent value of every indicator rather than requiring a request per series. - Every observation carries the instant it was published, so an agent can reason about what was knowable at a point in time instead of only about the present.
No API key is needed to try it - USD data is public. A key widens the history window and unlocks the other seventeen currencies plus FX, COT and commodities.
I have a working implementation with tests and a README following the existing tool layout, and I am happy to open the PR against this issue.
Disclosure: I work on FXMacroData.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the existing tool layout, then inspect the working implementation, tests, and README mentioned in the issue. Verify that the tool exposes the listed dataset choices, documents the no-key and keyed access differences, and that the tests cover the supported behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- data, tooling
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100