mcpField
E
evernote-install-auth

evernote-install-auth

github.com/jeremylongshoreDevelopment2.9k49 installsUpdated 2d ago
Repository

About evernote-install-auth

A setup skill for initializing the Evernote SDK and OAuth 1.0a access to the Evernote Cloud API. It guides Node.js and Python developers through API key provisioning, authentication, and connection verification.

Key features

  1. 01Configure the Evernote SDK
  2. 02Provision and set API keys
  3. 03Implement OAuth 1.0a
  4. 04Test in sandbox with a developer token
  5. 05Verify authenticated connections

Use cases

  1. 01Set up Evernote API access for an application
  2. 02Test in sandbox without the full OAuth flow
  3. 03Re-authenticate after token expiration

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/jeremylongshore/tons-of-skills-marketplace --skill evernote-install-auth

After installing, type/evernote-install-authin Claude Code to confirm it loaded.

Bundled filesreferences/oauth-flow.md

Details

From the project README

Evernote Install & Auth

Overview

Set up the Evernote SDK and configure OAuth 1.0a authentication for accessing the Evernote Cloud API. Covers API key provisioning, SDK installation, OAuth flow implementation, and connection verification.

Prerequisites

  • Node.js 18+ or Python 3.10+
  • Package manager (npm, pnpm, or pip)
  • Evernote developer account
  • API key from Evernote developer portal (requires approval, allow 5 business days)

Instructions

Step 1: Request an API Key
  1. Navigate to the Evernote developer portal
  2. Submit the API key request form
  3. Wait for manual approval (up to 5 business days)
  4. Receive consumerKey and consumerSecret credentials
Step 2: Install the SDK
set -euo pipefail
# Node.js
npm install evernote

# Python
pip install evernote
Step 3: Configure Environment Variables
cat << 'EOF' >> .env
EVERNOTE_CONSUMER_KEY=your-consumer-key
EVERNOTE_CONSUMER_SECRET=your-consumer-secret
EVERNOTE_SANDBOX=true
EOF
Step 4: Initialize the OAuth Client
const Evernote = require('evernote');

const client = new Evernote.Client({
  consumerKey: process.env.EVERNOTE_CONSUMER_KEY,
  consumerSecret: process.env.EVERNOTE_CONSUMER_SECRET,
  sandbox: process.env.EVERNOTE_SANDBOX === 'true',
  china: false
});
Step 5: Implement the OAuth Flow

Set up request token acquisition, user authorization redirect, and callback handling. Alternatively, use a developer token for sandbox testing to skip the OAuth flow entirely.

Step 6: Verify the Connection

Create an authenticated client, access getUserStore(), and call getUser() to confirm authentication succeeds.

For the complete OAuth callback implementation, developer token setup, Python client initialization, and token expiration handling, see OAuth flow reference.

Output

  • Installed SDK package in node_modules or site-packages
  • Environment variables configured for authentication
  • Working OAuth flow implementation
  • Successful connection verification

Error Handling

ErrorCauseResolution
Invalid consumer keyWrong or unapproved keyVerify key in the developer portal
OAuth signature mismatchIncorrect consumer secretCheck secret matches the portal value
Token expiredAccess token older than 1 yearRe-authenticate the user via OAuth
Rate limit reachedToo many API callsImplement exponential backoff
Permission deniedInsufficient API key scopeRequest additional permissions

Examples

Sandbox quickstart: Obtain a developer token from sandbox.evernote.com/api/DeveloperToken.action. Set EVERNOTE_DEV_TOKEN in .env and initialize the client with sandbox: true to skip the full OAuth flow during development.

Production OAuth: Request an API key from the developer portal, implement the OAuth 1.0a flow with an HTTPS callback URL, store the access token securely alongside its edam_expires timestamp, and schedule token refresh before expiration.

Resources

Next Steps

After successful auth, proceed to evernote-hello-world for the first note creation.

Comments

Markdown supported