agentleFS
summationaisummationai/summation-plugin/skills/signin/SKILL.md

signin

Skill0 starsChanged 3 months agoMITView on GitHub

Connect the host to Summation via the hosted MCP server. Use when the user needs to connect Summation, when Summation tools are missing or unauthenticated, or when any Summation MCP call fails with 401/403.

The file

We split this skill into the rules it gives an agent

12 rules. About 0 are common, 7 are distinctive, and 5 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈7

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 5

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Treat as internal only if the value is 1, true, yes, or on (case-insensitive).

    line 16
  2. Distinctive:

    Do not ask about environments or tenants.

    line 37
  3. Very specific:

    Call MCP whoami on server summation.

    line 41
  4. Distinctive:

    Ask which environment they want: prod, staging, or sandbox (only these three).

    line 65
  5. Distinctive:

    Do not accept arbitrary URLs or hosts.

    line 67
  6. Distinctive:

    If they need a specific tenant now, pause until they’ve switched org on the web app, then continue.

    line 77
  7. Distinctive:

    Remove may fail with “not found / not registered” — that is fine.

    line 94
  8. Very specific:

    If the host CLI add is unavailable (Desktop-only), tell them to set the Summation MCP URL to the chosen env’s allowlisted host in the host …

    line 96
  9. Distinctive:

    Never print, log, or commit tokens.

    line 114
  10. Distinctive:

    Never ask the user to paste client secrets, device codes, or bearers into chat.

    line 115
  11. Very specific:

    Never use sum_api.py login / login-poll / mcp-connect for host MCP auth.

    line 116
  12. Very specific:

    Prefer the plugin/server named summation when multiple Summation-related MCP entries exist (unless the user explicitly wants another).

    line 118

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Summation Sign-in

Auth is owned by the host MCP client. You never mint, poll, store, or inject a credential. External and internal flows differ — detect mode first.

0. Detect mode (do this first)

printf '%s' "${SUMMATION_PLUGIN_INTERNAL:-${ADDISON_PLUGIN_INTERNAL:-}}"

Treat as internal only if the value is 1, true, yes, or on (case-insensitive). Anything else (including empty) is external.

ModeWhoExperience
External (default)CustomersOne environment (plugin MCP URL). No env or tenant questions.
InternalSummation employees (SUMMATION_PLUGIN_INTERNAL=1 in the shell that launched Claude; ADDISON_PLUGIN_INTERNAL still works)Ask environment, then tenant guidance, then auth.

Fixed environments (allowlist — never free-form hosts)

EnvMCP URL
prodhttps://mcp.summation.com/mcp
staginghttps://staging-mcp.summation.com/mcp
sandboxhttps://sandbox-mcp.summation.com/mcp

The plugin’s bundled mcp.json points summation at production (https://mcp.summation.com/mcp). Internal users can switch env at sign-in.


External flow (default)

Do not ask about environments or tenants. There is one host and one org session.

E1. Check auth

Call MCP whoami on server summation.

OutcomeAction
Identity returnedReport who they are; done (or hand off to start).
Needs authenticationContinue to E2.
Server missingEnable/reload the summation plugin; do not hand-register alternate URLs.

E2. Authenticate

Summation needs a one-time browser sign-in. When the host prompts you to authenticate summation, approve it in the browser (same account/SSO as the web app). No password or token is pasted into this chat.

Invoke whoami again. Prefer the host Authenticate control (/mcp, or codex mcp login summation) if tools are not yet authed.

E3. Confirm

get_default_project or list_projects. Report identity + org. Ready.


Internal flow (SUMMATION_PLUGIN_INTERNAL=1)

I1. Choose environment

Ask which environment they want: prod, staging, or sandbox (only these three). Default suggestion: prod (matches the plugin default).

Do not accept arbitrary URLs or hosts.

I2. Tenant (org)

Explain clearly:

MCP auth binds to the org you approve in the browser (your active org on the Summation web app for that environment).
To use a different tenant: switch org on that env’s web app first, then we re-authenticate.
Env and tenant both change only by signing out and signing in again.

If they need a specific tenant now, pause until they’ve switched org on the web app, then continue.

I3. Point summation at the chosen env (headerless)

User-scope override so the chosen env wins over the plugin default. Do not set an Authorization header or any bearer token — host OAuth owns the credential.

# replace URL with the allowlisted URL for the chosen env
# Claude Code:
claude mcp remove -s user summation
claude mcp add -s user --transport http summation '<ENV_MCP_URL>'
# Codex:
codex mcp logout summation
codex mcp remove summation
codex mcp add summation --url '<ENV_MCP_URL>'

Remove may fail with “not found / not registered” — that is fine; continue to add. Surface any other remove failure. Add must succeed before auth.

If the host CLI add is unavailable (Desktop-only), tell them to set the Summation MCP URL to the chosen env’s allowlisted host in the host MCP UI (still no Authorization header), or re-auth after an admin points the plugin default.

I4. Authenticate

Same browser prompt as external, for server summation. Then whoami.

I5. Confirm

Report: environment, identity, org/tenant, scopes. Note that switching either env or tenant requires the signout skill, then this flow again.


After sign-in (both modes)

Sign-in only connects MCP. Before any data work, load the api skill — surface routing (sumcli when a shell is available, MCP otherwise), the CLI's separate sumcli auth login credential, and safety rules live there, and nothing else puts them in context. For first-time users, suggest the start skill.

Rules (both modes)

  • Never print, log, or commit tokens.
  • Never ask the user to paste client secrets, device codes, or bearers into chat.
  • Never use sum_api.py login / login-poll / mcp-connect for host MCP auth.
  • On later 401/403: re-run this skill (re-auth), do not improvise REST auth.
  • Prefer the plugin/server named summation when multiple Summation-related MCP entries exist (unless the user explicitly wants another).

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.