CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

fmp-api

Financial Modeling Prep API for stocks, fundamentals, SEC filings, institutional holdings (13F), and congressional trading. Use when fetching financial statements, ratios, DCF valuations, insider/institutional ownership, or screening stocks.

Quality

77%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./.claude/skills/fmp-api/SKILL.md

The canonical home for this skill is fmp-api in fernandezbaptiste/Skrillz

SKILL.md
Quality
Evals
Security

Quality

Content

61%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body is highly actionable — executable, field-accurate code for every common task plus a solid error-handling pattern — but it is held back by poor bundle integration and redundancy. The inline endpoint tables duplicate references/ENDPOINTS.md, scripts/fmp_client.py is never surfaced, and the stable-endpoint note and rate-limit facts are each repeated several times.

Suggestions

Replace the inline 'API Endpoints Reference' tables with a pointer to references/ENDPOINTS.md (e.g., 'Full endpoint reference: See [ENDPOINTS.md](references/ENDPOINTS.md)'), and add a section pointing to scripts/fmp_client.py as the ready-made client instead of hand-rolled requests calls.

Consolidate the duplicated tier/limit information: keep the Rate Limits table and 'Free tier limitations' once, and cut the 'Free vs Paid Features' section's restatement of the per-endpoint Free/Paid markers.

State the stable-endpoint migration note once (Quick Start) and integrate the safe_api_call error checks into the task examples so validation is a checkpoint within each workflow rather than an afterthought.

DimensionReasoningScore

Conciseness

The body is mostly free of known-concept padding and consists of concrete API data, but it repeats itself: the '/stable/ vs /api/v3/' migration note appears in four places ('Important: New Endpoint Format', both BASE_URL code blocks, and Best Practice #1), and the 'Free vs Paid Features' section restates the endpoint tables' Free/Paid markers and the '250 API calls/day' rate limit already shown in the Rate Limits table.

3 / 5

Actionability

Every task section ships complete, copy-paste-ready Python with correct parameter names ('symbol', 'period', 'from'/'to', 'apikey'), real response fields (e.g., 'dcf', 'stockPrice', 'fillingDate'), and the 'safe_api_call' error-handling pattern covers 'Error Message' payloads, empty responses, RequestException, and JSON decode errors.

5 / 5

Workflow Clarity

Tasks are presented as isolated snippets with no sequencing guidance (e.g., how to chain quote → financials → DCF into a valuation), and the error-handling/validation logic lives in a separate section that none of the task examples actually use, leaving checkpoints implicit rather than integrated. It is a read-only API skill, so the destructive-operation cap does not apply.

3 / 5

Progressive Disclosure

The bundle contains references/ENDPOINTS.md (a complete endpoint reference) and scripts/fmp_client.py (a production client), yet neither file is linked or mentioned anywhere in the body, while ~70 lines of inline 'API Endpoints Reference' tables duplicate ENDPOINTS.md. This matches the anchor for content that clearly belongs in separate files being inlined with references effectively buried/absent.

2 / 5

Total

13

/

20

Passed

Description

83%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description: concrete capabilities, explicit 'Use when...' triggers, third-person voice, and no fluff. Its only weaknesses are minor — a few natural trigger terms (quotes, earnings, profiles) are absent and the generic financial-data triggers overlap slightly with sibling API skills.

DimensionReasoningScore

Specificity

'fetching financial statements, ratios, DCF valuations, insider/institutional ownership, or screening stocks' lists several specific concrete actions, but coverage has minor gaps — real-time quotes/prices, earnings calendars, and company profiles are core capabilities the body documents yet the description omits. Not a 5 (not comprehensive), clearly above a 3 (well more than 1-2 actions).

4 / 5

Completeness

It explicitly answers both halves: what ('Financial Modeling Prep API for stocks, fundamentals, SEC filings, institutional holdings (13F), and congressional trading') and when ('Use when fetching financial statements, ratios, DCF valuations, insider/institutional ownership, or screening stocks') with concrete trigger phrases, matching the anchor-5 example structure exactly.

5 / 5

Trigger Term Quality

Natural user phrases are well covered: 'financial statements', 'ratios', 'DCF valuations', 'SEC filings', '13F', 'insider/institutional ownership', 'screening stocks'. A few natural terms a user would say are missing, e.g., 'stock quotes', 'earnings calendar', 'company profile', 'congressional/insider trading' appears only as a domain noun not a 'use when' trigger.

4 / 5

Distinctiveness Conflict Risk

The explicit FMP naming and unique data types (13F, congressional trading, pre-computed DCF) give it a clear niche, but the general triggers ('financial statements', 'ratios', 'screening stocks') overlap with closely related sibling skills the body itself lists (finnhub-api, twelvedata-api, alphavantage-api), so minor overlap risk remains.

4 / 5

Total

17

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

15

/

16

Passed

Repository

fernandezbaptiste/Skrillz

Path

.claude/skills/fmp-api/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.