brainstorming
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or planning anything new, in software or out of it (a talk, a business, a renovation).
token-optimizationToken optimization best practices for MCP server and tool interactions. Minimizes token consumption while maintaining effectiveness. USE WHEN: user mentions "token usage", "optimize tokens", "reduce API calls", "MCP efficiency", asks about "how to use less tokens", "MCP best practices", "limit output size", "efficient queries" DO NOT USE FOR: Code optimiz…
Independent GitHub snapshot · Automated classification · Original documentation governs
name: token-optimization description: | Token optimization best practices for MCP server and tool interactions. Minimizes token consumption while maintaining effectiveness.
USE WHEN: user mentions "token usage", "optimize tokens", "reduce API calls", "MCP efficiency", asks about "how to use less tokens", "MCP best practices", "limit output size", "efficient queries"
performance instead,
Text compression - this is about API usage patterns,
Cost optimization (infrastructure) - use cloud/DevOps skills
allowed-tools: Read, Grep, GlobDeep Knowledge: Use
mcp__documentation__fetch_docswith technology:token-optimizationfor comprehensive documentation.
Guidelines for minimizing token consumption in MCP server and external tool interactions.
This skill focuses on API/tool call optimization. Do NOT use for:
performance skill for speed optimization| Principle | Description |
|---|---|
| Lazy Loading | Load information only when strictly necessary |
| Minimal Output | Request only needed data, use limit and compact parameters |
| Progressive Detail | Start with overview/summary, drill down only if needed |
| Cache First | Check if information is already in context before external calls |
| Anti-Pattern | Why It's Bad | Token-Efficient Solution |
|---|---|---|
| **SELECT *** | Returns unnecessary columns | Specify exact columns needed |
| No LIMIT clause | Returns entire dataset | Always add LIMIT (e.g., 100) |
| Full schema requests | Returns massive specs | Use compact=true or format="summary" |
| Recursive documentation fetch | Fetches entire doc tree | Use search_docs with specific query |
| Fetching full logs | Returns thousands of lines | Use tail_logs or find_errors with limit |
| Copy-paste documentation | Duplicates content | Summarize and reference, don't quote verbatim |
| No pagination | Returns all results at once | Use offset/limit for large datasets |
| Full API schema exploration | Multi-MB specifications | Get endpoint list first, details on-demand |
| Issue | Check | Solution |
|---|---|---|
| Large MCP response | Output size > 2000 tokens | Add limit parameter, use compact format |
| Repeated API calls | Calling same tool multiple times | Cache results in conversation context |
| Slow context buildup | Too many tool calls | Batch related queries, use more specific tools |
| Unnecessary documentation fetch | Info already known | Check skill files first, fetch docs as last resort |
| Full table scan results | Database query returns too much | Add WHERE clause and LIMIT |
| Verbose error logs | Full stack traces repeated | Summarize errors, reference line numbers |
-- BAD: Query without limits
SELECT * FROM users
-- GOOD: Query with filters and limits
SELECT id, name, email FROM users WHERE active = true LIMIT 100
Tool usage:
execute_query: ALWAYS use limit parameter (default: 1000)get_schema(compact=true): For DB structure overviewdescribe_table: Before exploratory queriesexplain_query: Before complex queries on large tables-- BAD: Full schema
get_api_schema(format="full")
-- GOOD: Summary only for overview
get_api_schema(format="summary")
-- GOOD: Path list with limit
list_api_paths(limit=50)
-- GOOD: Single endpoint details
get_api_endpoint_details(path="/users/{id}", method="GET")
Tool usage:
get_api_schema(format="summary"): For API overviewlist_api_paths(limit=50): For endpoint listget_api_models(compact=true): For model list without full schemasearch_api(limit=10): For targeted searches-- BAD: Entire document
fetch_docs(topic="react")
-- GOOD: Targeted search
search_docs(query="useEffect cleanup", maxResults=3)
Tool usage:
search_docs(maxResults=3): For specific information searchfetch_docs: Only for very specific topics-- BAD: All logs
parse_logs(file="/var/log/app.log")
-- GOOD: Recent errors only
find_errors(file="/var/log/app.log", limit=50)
-- GOOD: Tail for live debugging
tail_logs(file="/var/log/app.log", lines=50)
Tool usage:
tail_logs(lines=50): For recent logsfind_errors(limit=50): For error debuggingparse_logs(limit=200): Only if full analysis neededTool usage:
scan_dependencies: Prefer over scan_allscan_secrets: Faster than full scanscan_all: Only for complete auditsTool usage:
analyze_complexity(path="src/specific/file.ts"): Target specific filesfind_duplicates(minLines=10): Filter significant duplicates onlycode_metrics: Compact output for overviewBefore calling an MCP tool, verify:
limit?compact=true if available?Found 1523 rows. First 20:
| id | name | status |
|----|------|--------|
| 1 | ... | active |
...
Use offset=20 for next page.
API has 45 endpoints. Summary by tag:
- users: 8 endpoints
- auth: 5 endpoints
- products: 12 endpoints
...
Use get_api_endpoint_details for specifics.
Found 234 errors in last hour. Top 5 by frequency:
1. ConnectionTimeout: 89 occurrences
2. ValidationError: 45 occurrences
...
Use tail_logs or parse_logs with filters for details.
Deep Knowledge: Use
mcp__documentation__fetch_docswith technology:token-optimizationfor advanced optimization techniques.