CtrlK
BlogDocsLog inGet started
Tessl Logo

attio

Attio integration via Apideck's CRM unified API — same methods work across every connector in CRM, switch by changing `serviceId`. Use when the user wants to read, write, or search contacts, companies, leads, opportunities, activities, and pipelines in Attio. Routes through Apideck with serviceId "attio".

87

Quality

86%

Does it follow best practices?

Impact

No eval scenarios have been run

SecuritybySnyk

Passed

No known issues

SKILL.md
Quality
Evals
Security

Quality

Discovery

100%

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

This is a strong skill description that clearly identifies the specific CRM platform (Attio), the integration mechanism (Apideck unified API), the concrete actions supported (read, write, search), and the specific entities involved (contacts, companies, leads, opportunities, activities, pipelines). It includes an explicit 'Use when' clause with natural trigger terms and is highly distinguishable from other potential CRM skills through the named service and serviceId.

DimensionReasoningScore

Specificity

Lists multiple specific concrete actions and entities: 'read, write, or search contacts, companies, leads, opportunities, activities, and pipelines in Attio.' Also mentions the technical mechanism (Apideck unified API, serviceId).

3 / 3

Completeness

Clearly answers both 'what' (Attio integration via Apideck CRM unified API for reading, writing, searching CRM entities) and 'when' (explicit 'Use when the user wants to read, write, or search contacts, companies, leads, opportunities, activities, and pipelines in Attio').

3 / 3

Trigger Term Quality

Includes strong natural keywords users would say: 'contacts', 'companies', 'leads', 'opportunities', 'activities', 'pipelines', 'Attio', 'CRM', as well as action terms 'read', 'write', 'search'. Good coverage of domain-specific terms.

3 / 3

Distinctiveness Conflict Risk

Highly distinctive by naming the specific service 'Attio' and the routing mechanism 'Apideck with serviceId attio'. This clearly distinguishes it from other CRM integrations that might use different serviceIds or different platforms entirely.

3 / 3

Total

12

/

12

Passed

Implementation

72%

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

The skill is well-structured with good progressive disclosure and actionable code examples, but suffers from verbosity — particularly marketing-oriented explanations about Apideck's value proposition that Claude doesn't need. The workflow for handling unsupported operations could be more explicitly sequenced as a decision tree rather than scattered across sections.

Suggestions

Remove the 'Portable across 21 CRM connectors' section or reduce it to a single sentence — Claude doesn't need to be sold on the architecture's benefits.

Consolidate the coverage check and proxy fallback into an explicit numbered workflow: 1. Check coverage → 2. If supported, use unified API → 3. If UnsupportedOperationError, use proxy API with specific downstream URL.

Trim the 'When to use this skill' section to just the serviceId and API mapping — Claude can infer activation context from the skill description.

DimensionReasoningScore

Conciseness

The skill includes some unnecessary verbosity — the 'Portable across 21 CRM connectors' section is marketing-style explanation Claude doesn't need, the 'When to use this skill' section over-explains activation triggers, and phrases like 'This is the compounding advantage of using Apideck over integrating Attio directly' are promotional filler. The core information could be delivered in roughly half the tokens.

2 / 3

Actionability

Provides fully executable TypeScript code for listing contacts, a concrete curl command for verifying coverage, and a complete proxy API escape hatch with real headers. The code examples are copy-paste ready with clear environment variable references.

3 / 3

Workflow Clarity

There's an implicit workflow (check coverage → use unified API → fall back to proxy if unsupported), but it's not presented as a clear sequential process with validation checkpoints. The coverage verification step and the UnsupportedOperationError handling are mentioned but not woven into an explicit decision flow with error recovery.

2 / 3

Progressive Disclosure

Excellent progressive disclosure with a concise overview and well-signaled one-level-deep references to SDK skills, best practices, connector coverage, OpenAPI specs, and Attio's own docs. Navigation is clear and references are consistently formatted.

3 / 3

Total

10

/

12

Passed

Validation

81%

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

Validation9 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_field

'metadata' should map string keys to string values

Warning

frontmatter_unknown_keys

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

Warning

Total

9

/

11

Passed

Repository
apideck-libraries/api-skills
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.