Agent-Native Calendar
Agent-Native Google Calendar - manage events, sync, and public booking
Description from the maker (original English)
Identify integer sequences by terms, search the OEIS, read formulas, programs, b-files, cross-refs.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
MCP_LOG_LEVEL, OEIS_QUEUE_MAX_WAIT_MSYou need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Works in Claude on the web, desktop and mobile:
https://oeis.caseyjhand.com/mcpOpen Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"oeis": {
"command": "npx",
"args": [
"-y",
"@cyanheads/oeis-mcp-server"
],
"env": {
"MCP_LOG_LEVEL": "your-value",
"OEIS_QUEUE_MAX_WAIT_MS": "your-value"
}
}
}
}Run this in your terminal
claude mcp add --transport http oeis https://oeis.caseyjhand.com/mcpclaude mcp add oeis --env MCP_LOG_LEVEL=your-value --env OEIS_QUEUE_MAX_WAIT_MS=your-value -- npx -y @cyanheads/oeis-mcp-serverFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"oeis": {
"url": "https://oeis.caseyjhand.com/mcp"
}
}
}Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"oeis": {
"command": "npx",
"args": [
"-y",
"@cyanheads/oeis-mcp-server"
],
"env": {
"MCP_LOG_LEVEL": "your-value",
"OEIS_QUEUE_MAX_WAIT_MS": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"oeis": {
"type": "http",
"url": "https://oeis.caseyjhand.com/mcp"
}
}
}Paste into .vscode/mcp.json in your project
{
"servers": {
"oeis": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@cyanheads/oeis-mcp-server"
],
"env": {
"MCP_LOG_LEVEL": "your-value",
"OEIS_QUEUE_MAX_WAIT_MS": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
ChatGPT connects only to servers on the internet:
https://oeis.caseyjhand.com/mcpMenu names can differ slightly by plan and over time.
Your choice stays on this device in a cookie; no account needed.
MCP_LOG_LEVEL envOEIS_QUEUE_MAX_WAIT_MS envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Tool names and descriptions exactly as the server reported them on Nov 7, 2026. The maker wrote them, not us; we show them as plain text.
oeis_identify_sequenceIdentify integer sequences that contain a run of consecutive terms, e.g. "1, 2, 5, 14, 42". Returns up to 10 matches per page in OEIS relevance order, each with the index n at which the supplied run begins. For the best hit rate supply about 6 terms and leave off the first one or
oeis_search_sequencesSearch the OEIS using its query syntax: plain words, "quoted phrases", comma-separated terms, prefixes (keyword:, author:, name:, comment:, formula:, program:, xref:, id:), | for OR, and a leading - to exclude. Returns up to 10 summaries per page. For identifying a sequence from
oeis_get_sequenceFetch one OEIS entry by A-number. Returns the name, data-line terms, offset, keywords, author, dates, and the sections: comments, formulas (recurrences and generating functions), examples, programs (Maple, Mathematica, PARI, Python, …), references, links, cross-references, and ex
oeis_get_termsList terms a(n) of a sequence with their indices n. Reads the entry's b-file when it has one — often thousands of terms beyond the data line — and otherwise the data line itself. Values are exact decimal strings of any size. A slice stops at limit terms (at most 1000 per call), a
oeis_get_cross_refsList sequences related to an OEIS entry. direction outgoing returns the A-numbers named in the entry's cross-reference (Cf.) lines, with any parenthetical note beside each; direction incoming returns entries that mention this A-number anywhere. Each row carries the related sequen
oeis_list_referenceLook up OEIS vocabulary used by the other tools: keyword flags (nonn, core, tabl, cons, …), search syntax (prefixes, operators, wildcards, sort orders, paging window), and identifier conventions (A-numbers, legacy M/N numbers, offsets, b-files).
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 8, 2026
The registry name was verified with the GitHub account cyanheads, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
Responded in 154 ms (HTTP 200)
No sign-in needed
Read 6 tool descriptions and found no hidden instructions to the AI
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 3 of 3 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
Either way works: install it on your computer or connect to the cloud version.
The GitHub repo last changed –, and the latest version (0.1.3) reached the registry 21 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.
In the same category: Agent-Native Calendar, Excel MCP Server, MCP Server for Excel
Servers in the same category from other makers, sorted by stars.
Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
Agent-Native Google Calendar - manage events, sync, and public booking
Lets AI create and edit Excel files itself, including formulas, charts and PivotTables, without Excel installed.
Excel automation for AI - Sheets, Power Query, DAX, VBA, Tables, Ranges and more. Windows only.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
@cyanheads/oeis-mcp-server Identify integer sequences by terms, search the OEIS, read formulas, programs, b-files, cross-refs via MCP. STDIO or Streamable HTTP. 6 Tools • 1 Resource
Public Hosted Server: https://oeis.caseyjhand.com/mcp
Integer sequences from the On-Line Encyclopedia of Integer Sequences (OEIS). Identify a sequence from a few observed terms, search with OEIS's own query syntax, read an entry's formulas and programs, page through extended terms from its b-file, and walk its cross-references. Every result links to its oeis.org page. No API key required.
| Tool | Description |
|---|---|
oeis_identify_sequence | Identify sequences that contain a run of consecutive terms, in OEIS relevance order, with the index where the run begins |
oeis_search_sequences | Search with OEIS query syntax: words, quoted phrases, term lists, and prefixes such as keyword: and author: |
oeis_get_sequence | Fetch one entry by A-number: terms, offset, keywords, formulas, programs, comments, references, links, and cross-references |
oeis_get_terms | List terms a(n) with their indices from the entry's b-file, or from its data line when it has none |
oeis_get_cross_refs | List the sequences an entry cross-references, or the entries that mention it |
oeis_list_reference | Decode keyword flags, search syntax, and identifier and offset conventions, with no upstream call |
| Resource | Description |
|---|---|
oeis://sequence/{aNumber} | One entry by A-number as JSON, always whole |
The same record is available through oeis_get_sequence for clients that only call tools.
oeis_identify_sequence toolterms: up to 60 consecutive terms separated by commas or spaces (a bracketed list or a trailing ... is accepted), each an integer of at most 200 digits or _ for one unknown term; matchSigns (default false) ignores signs unless setstart 0–100 in steps of 10; each row carries the oeis_search_sequences row fields plus matchStartIndex, the n where the run begins in that entry's data line (absent when the run isn't there)notice says which and how to retry (drop leading terms, divide out a common factor, or add terms). OEIS matches a run only within each entry's data line (at most about 270 characters), never its b-file, and a zero-hit notice says so when every nonzero term has 10 or more digits, five or more terms of 4 or more digits lie within 10% of each other, or the run passes 270 charactersoeis_search_sequences toolquery (1–1,000 characters) is sent as written: words, "quoted phrases", term lists, prefixes such as keyword:, author:, name:, formula:, xref:, and id:, | for OR, and a leading - to excludesort: relevance (default), number, created, or modified; 10 per page, start 0–100 in steps of 10name, terms, offset / firstIndex, keywords, author, legacyIds, modified (the last edit, ISO 8601 with offset), and url, in oeis_get_sequence's formats; author and legacyIds are absent where OEIS has nonetotalCount and effectiveQuery, the query as OEIS parsed it. A query OEIS parses as one run of terms (effectiveQuery reads seq: or signed: and the terms, as for bare numbers separated by commas) is matched within each entry's data line, as in oeis_identify_sequence, and its zero-hit notice names that limit under the same conditionseffectiveQuery shows that split, the notice says so and gives the terms joined by commas to search as one runoeis_get_sequence toolname, terms, offset / firstIndex, keywords, author, legacyIds, referenceCount, revision, created / modified, url, and bFileUrl, plus eight sections: comments, formulas, examples, programs, references, links, crossReferences, extensionskind: "outline" returns the core fields and a sized sections list; pass sections (e.g. ["formulas", "programs"]) to get the chosen onesnextFromItem as fromItem, with the same sections, for the next. A fromItem naming a section not in sections fails as from_item_not_selectedsequence_not_found; withdrawn (dead), reserved, and recycled entries come back with a noticeoeis_get_terms toolfromIndex (default: the first available index) and limit (default 100; one call returns at most 1,000 terms, so a larger limit is served as 1,000); a slice also stops at about 100,000 bytes or at the end of a 1 MiB part of the b-file, and nextFromIndex continues itsource: "bfile" reads the entry's b-file in 1 MiB parts, so a fromIndex past the first 1 MiB costs one or two more paced requests; bFileCut: true means the file goes on past lastAvailableIndex. source: "data" means the entry has no b-file and the terms are its data line{ n, value }, value an exact decimal string; an unknown A-number fails as sequence_not_found# comment, or an n a(n) pair is skipped, and the notice says how many; a b-file that holds no pair at all fails as upstream_unparseable and is not cachedoeis_get_cross_refs tooldirection: "outgoing" (default) lists the A-numbers named in the entry's cross-reference lines, with the note written beside each and the lines verbatim; "incoming" lists the entries that mention the A-numberstart 0–100 in steps of 10; every row carries url, and resolved rows add the name, terms, offset, keywords, author, legacy IDs, and last edit (modified)resolved: false with a retry notice instead of failing; sequence_not_found applies to outgoing onlyoeis_list_reference tooltopic: keywords (flags such as nonn, core, tabl, cons), search_syntax (prefixes, operators, wildcards, sort orders, paging), or identifiers (A-numbers, legacy M/N numbers, offsets, b-files)entries (name, description) and notes from static tablesoeis://sequence/{aNumber} resourceapplication/json: the record oeis_get_sequence returns with kind: "full", never outlinedaNumber takes the same forms as the tools (oeis://sequence/A108 reads A000108); an unknown A-number fails as sequence_not_foundBuilt on @cyanheads/mcp-ts-core: stdio and Streamable HTTP transports, pluggable auth (none / jwt / oauth), swappable storage (in-memory, filesystem, Supabase, Cloudflare KV/R2/D1), structured logging with optional OpenTelemetry tracing.
OEIS-specific:
A000045, a000045, A45, 45, and an oeis.org sequence URL all resolve in every tool; a legacy M/N book number is pointed to oeis_search_sequences..., the Unicode minus sign, and mixed comma and space separatorsAgent-friendly output:
truncated, shown, cap, plus totalCount and effectiveQuery where OEIS reports them) and a notice that says how to narrow or continuesequence_not_found, from_item_not_selected, upstream_unparseable, pacer_shed, and upstream_rate_limited, the rate-limit errors carrying retryAfter when one is knownkind, source, per-row resolved), so callers branch on data, not string parsinghttps://oeis.org/A###### URL; contributor-written text renders as code spans and code fences, so a markdown client shows formulas and names exactly as written, and only http and https link URLs are keptoeis.org asks automated clients to wait 10 seconds between requests. The server sends one upstream request at a time and starts each at least 10 seconds after the last, across every tool. Results are cached in memory, so a repeated lookup returns at once and costs oeis.org nothing: records for 24 hours, or until a search result shows a later edit (then revalidated with a conditional request), search pages for 1 hour, and b-file parts for 7 days. An entry's cached "no b-file" answer is dropped as soon as a fetched record lists a b-file.
A call with nothing cached waits its turn in the queue. When the wait would pass OEIS_QUEUE_MAX_WAIT_MS (default 30,000 ms), the call fails with pacer_shed and a retryAfter instead of hanging. If oeis.org answers 429, the server holds every queued call back before trying again, and reports upstream_rate_limited once its retries are spent. The pace is per server process.
start ≤ 100); A000045's 6,161 incoming references, for example, are reachable only through their first 110.Only the beginning is shown; read the rest in the repo