mu
Qué hace este MCP
Supports personal and collaborative tasks including web browsing, app creation, blogs, bookmarks, discussions, and contact management.
Herramientas
Esquema de entrada
{'type': 'object', 'required': ['prompt'], 'properties': {'prompt': {'type': 'string', 'description': "Description of the app to build, e.g. 'an expense tracker', 'a packing checklist', 'a water intake counter'"}, 'request_key': {'type': 'string', 'description': 'Reuse this key when retrying the same request. Omit to deduplicate identical descriptions.'}}}
Esquema de entrada
{'type': 'object', 'properties': {}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': ''}}}
Esquema de entrada
{'type': 'object', 'properties': {}}
Esquema de entrada
{'type': 'object', 'required': ['name', 'html'], 'properties': {'html': {'type': 'string', 'description': "The app's HTML, inline CSS and JavaScript included, up to 256KB"}, 'icon': {'type': 'string', 'description': 'An SVG icon'}, 'name': {'type': 'string', 'description': 'App name, e.g. "Pomodoro Timer"'}, 'slug': {'type': 'string', 'description': 'URL-friendly id, e.g. pomodoro-timer. Derived from the name if omitted'}, 'tags': {'type': 'string', 'description': 'Comma-separated tags'}, 'price': {'type': 'number', 'description': 'Credits charged per use, 0 for free, up to 1000'}, 'public': {'type': 'boolean', 'description': 'Publish only when explicitly requested by the owner. Personal apps are private by default.'}, 'private': {'type': 'boolean', 'description': 'Keep this app private to its owner; use true for personal widgets'}, 'description': {'type': 'string', 'description': 'What the app does. Defaults to the name'}}}
Esquema de entrada
{'type': 'object', 'required': ['slug'], 'properties': {'html': {'type': 'string', 'description': 'New HTML, up to 256KB. Left alone if omitted'}, 'icon': {'type': 'string', 'description': 'New SVG icon. Left alone if omitted'}, 'name': {'type': 'string', 'description': 'New name. Left alone if omitted'}, 'slug': {'type': 'string', 'description': "The app's URL slug, e.g. pomodoro-timer"}, 'tags': {'type': 'string', 'description': 'New comma-separated tags. Left alone if omitted'}, 'price': {'type': 'number', 'description': 'Credits charged per use, 0 for free, up to 1000. Left alone if omitted'}, 'description': {'type': 'string', 'description': 'New description. Left alone if omitted'}}}
Esquema de entrada
{'type': 'object', 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'description': "The app's URL slug"}}}
Esquema de entrada
{'type': 'object', 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'description': 'Slug of the app to fork'}, 'new_slug': {'type': 'string', 'description': 'Slug for the copy. Generated from the original if omitted'}}}
Esquema de entrada
{'type': 'object', 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'description': "The app's URL slug, e.g. pomodoro-timer"}}}
Esquema de entrada
{'type': 'object', 'properties': {'tag': {'type': 'string', 'description': 'Filter to apps carrying this tag'}, 'query': {'type': 'string', 'description': 'Search query — name, description or tag'}}}
Esquema de entrada
{'type': 'object', 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'description': "The app's URL slug"}}}
Esquema de entrada
{'type': 'object', 'properties': {'kind': {'type': 'string', 'description': 'One kind: news, post, video, market, social, reminder. Omit for a summary of what is here'}, 'limit': {'type': 'number', 'description': 'Max entries (default 20, max 100)'}}}
Esquema de entrada
{'type': 'object', 'required': ['query'], 'properties': {'kind': {'type': 'string', 'description': 'Narrow to one kind: news, post, video, market, social, reminder. Omit to search everything'}, 'limit': {'type': 'number', 'description': 'Max results (default 20, max 100)'}, 'query': {'type': 'string', 'description': 'What to look for'}}}
Esquema de entrada
{'type': 'object', 'required': ['content'], 'properties': {'tags': {'type': 'string', 'description': 'Comma-separated tags'}, 'title': {'type': 'string', 'description': 'Post title. One is generated from the body if omitted'}, 'content': {'type': 'string', 'description': 'The post body, at least 50 characters'}, 'private': {'type': 'boolean', 'description': 'True to keep it to yourself'}}}
Esquema de entrada
{'type': 'object', 'properties': {'id': {'type': 'string', 'description': "The post's id, as given by blog_list"}, 'title': {'type': 'string', 'description': "The post's title, or enough of it to be unambiguous. An ambiguous title is refused rather than guessed — deleting the wrong post is not recoverable"}}}
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Optional max number of posts (default all recent)'}}}
Esquema de entrada
{'type': 'object', 'properties': {'id': {'type': 'string', 'description': "The post's id, as given by blog_list"}, 'title': {'type': 'string', 'description': "The post's title, or enough of it to be unambiguous — use this when you have a name rather than an id"}}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': "The post's id, as given by blog_list"}, 'tags': {'type': 'string', 'description': 'New comma-separated tags. Left alone if omitted'}, 'title': {'type': 'string', 'description': 'New title. Left alone if omitted'}, 'content': {'type': 'string', 'description': 'New body, at least 50 characters. Left alone if omitted'}}}
Esquema de entrada
{'type': 'object', 'properties': {'ref': {'type': 'string', 'description': 'Public archive item id for an article, video or blog post'}, 'url': {'type': 'string', 'description': 'Link to save when no archive id is available'}, 'note': {'type': 'string', 'description': 'Optional private note'}, 'title': {'type': 'string', 'description': 'Title for a link'}}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': ''}, 'note': {'type': 'string', 'description': 'Private note, or empty to clear'}}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Saved item id'}}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Saved item id'}}}
Esquema de entrada
{'type': 'object', 'properties': {'kind': {'type': 'string', 'description': 'article, video, post or link; empty for all'}, 'limit': {'type': 'number', 'description': 'Maximum items, default 20, at most 100'}, 'query': {'type': 'string', 'description': 'Search your saved titles, links, excerpts and private notes'}, 'offset': {'type': 'number', 'description': 'Number of matching items to skip'}}}
Esquema de entrada
{'type': 'object', 'required': ['url'], 'properties': {'url': {'type': 'string', 'description': 'The page to open'}, 'wait': {'type': 'string', 'description': 'Optional CSS selector to wait for before reading, for content that arrives late'}}}
Esquema de entrada
{'type': 'object', 'required': ['url'], 'properties': {'url': {'type': 'string', 'description': 'The page to photograph'}, 'full': {'type': 'boolean', 'description': 'Capture the whole page rather than one screenful'}, 'wait': {'type': 'string', 'description': 'Optional CSS selector to wait for before the shot'}}}
Esquema de entrada
{'type': 'object', 'properties': {'room': {'type': 'string', 'description': 'Room id, as returned by Rooms'}}}
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'How many rooms to return (default 20)'}}}
Esquema de entrada
{'type': 'object', 'required': ['room', 'message'], 'properties': {'room': {'type': 'string', 'description': 'Room id, as returned by chat_rooms'}, 'message': {'type': 'string', 'description': 'What to say'}}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Stored message id'}}}
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': ''}, 'offset': {'type': 'number', 'description': ''}}}
Esquema de entrada
{'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'description': 'The person\'s name, e.g. "Sarah Chen"'}, 'note': {'type': 'string', 'description': 'Anything worth remembering about them'}, 'email': {'type': 'string', 'description': 'Their email address'}, 'phone': {'type': 'string', 'description': 'Their phone number'}}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': "The contact's id, from contacts_find or contacts_list"}}}
Esquema de entrada
{'type': 'object', 'required': ['query'], 'properties': {'query': {'type': 'string', 'description': 'A name, part of a name, or an address'}}}
Esquema de entrada
{'type': 'object', 'properties': {}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Document id, from docs_list'}}}
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Maximum documents to return (default 50)'}, 'query': {'type': 'string', 'description': 'Optional text to match against titles and bodies'}}}
Esquema de entrada
{'type': 'object', 'properties': {'id': {'type': 'string', 'description': 'Document id, from docs_list'}, 'title': {'type': 'string', 'description': 'Exact title, if you do not have the id'}}}
Esquema de entrada
{'type': 'object', 'required': ['title', 'content'], 'properties': {'id': {'type': 'string', 'description': 'Existing document id to replace. Omit to create a new one'}, 'title': {'type': 'string', 'description': "The document's title"}, 'public': {'type': 'boolean', 'description': 'Readable by anyone when true. Private by default'}, 'content': {'type': 'string', 'description': "The document's body, as markdown"}}}
Esquema de entrada
{'type': 'object', 'required': ['title', 'when'], 'properties': {'note': {'type': 'string', 'description': 'Optional extra detail'}, 'when': {'type': 'string', 'description': 'When to fire, RFC3339 with timezone offset, e.g. 2026-07-22T15:00:00+01:00'}, 'title': {'type': 'string', 'description': "What to be reminded about, e.g. 'Call the dentist'"}, 'prompt': {'type': 'string', 'description': 'Optional instruction to run through the agent when it fires, e.g. "brief me on today\'s news". The answer is mailed to you'}, 'repeat': {'type': 'string', 'description': 'How often it recurs: hourly, daily, weekly or monthly. Omit for once'}, 'advance': {'type': 'object', 'description': 'Optional advance trigger: minutes before the event and recipient user or agent. Agent prepares a read-only report for delivery at when; actions that change records must use a normal scheduled prompt without advance'}, 'minutes': {'type': 'number', 'description': 'How long it lasts in minutes (default 30)'}}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': "The event's id, as given by events_list"}}}
Esquema de entrada
{'type': 'object', 'properties': {'to': {'type': 'string', 'description': 'End of the window, RFC3339. Defaults to a week after from'}, 'from': {'type': 'string', 'description': 'Start of the window to search, RFC3339, e.g. 2026-08-03T00:00:00+01:00. Defaults to now'}, 'day_end': {'type': 'number', 'description': 'Latest hour of the day to offer, 0-23 (default 18)'}, 'minutes': {'type': 'number', 'description': 'How long a slot you need, in minutes (default 30)'}, 'day_start': {'type': 'number', 'description': 'Earliest hour of the day to offer, 0-23 (default 9)'}}}
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Maximum events, default 20, max 100'}, 'offset': {'type': 'number', 'description': 'Events to skip'}}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': ''}}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Event id from events_list'}, 'note': {'type': 'string', 'description': 'New note; empty clears it'}, 'when': {'type': 'string', 'description': 'New future time as RFC3339 with timezone offset'}, 'title': {'type': 'string', 'description': 'New title; omitted keeps the existing title'}, 'prompt': {'type': 'string', 'description': 'New standing instruction; empty clears it'}, 'repeat': {'type': 'string', 'description': 'hourly, daily, weekly, monthly; empty makes it one-off'}, 'advance': {'type': 'object', 'description': 'Advance trigger with minutes and recipient user or agent; zero minutes and empty recipient clears it. Agent preparation is read-only'}, 'minutes': {'type': 'number', 'description': 'Duration in minutes, 1 to 10080'}}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': "The file's id"}}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Drive file id from DriveSearch'}}}
Esquema de entrada
{'type': 'object', 'properties': {'page': {'type': 'string', 'description': 'Next page token from a previous search'}, 'limit': {'type': 'number', 'description': 'Number of files, up to 20'}, 'query': {'type': 'string', 'description': "Text to find in the caller's connected Google Drive"}}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': "The file's id, as returned by files_put or files_list"}}}
Esquema de entrada
{'type': 'object', 'properties': {}}
Esquema de entrada
{'type': 'object', 'required': ['name', 'content'], 'properties': {'name': {'type': 'string', 'description': 'File name including its extension, e.g. "report.csv"'}, 'type': {'type': 'string', 'description': 'Optional content type, e.g. "text/csv". Guessed from the name when omitted'}, 'content': {'type': 'string', 'description': 'The file\'s contents — plain text, or base64 when encoding is "base64"'}, 'encoding': {'type': 'string', 'description': '"base64" for binary files; omit for text'}}}
Esquema de entrada
{'type': 'object', 'required': ['id', 'public'], 'properties': {'id': {'type': 'string', 'description': "The file's id"}, 'public': {'type': 'boolean', 'description': 'True to let anyone with the URL read it, false to make it private again'}}}
Esquema de entrada
{'type': 'object', 'required': ['code'], 'properties': {'code': {'type': 'string', 'description': "An airport code or name, e.g. 'LHR', 'EGLL' or 'Heathrow'"}}}
Esquema de entrada
{'type': 'object', 'properties': {'lat': {'type': 'number', 'description': 'Optional latitude, if the location is already known'}, 'lon': {'type': 'number', 'description': 'Optional longitude, if the location is already known'}, 'near': {'type': 'string', 'description': "Where to look: a place name, or an airport name or code, e.g. 'Camden, London' or 'LHR'"}, 'radius': {'type': 'number', 'description': 'Optional radius in nautical miles (default 30, maximum 250)'}}}
Esquema de entrada
{'type': 'object', 'properties': {'flight': {'type': 'string', 'description': 'IATA flight number, e.g. BA117'}, 'airport': {'type': 'string', 'description': 'IATA airport code, e.g. LHR'}, 'direction': {'type': 'string', 'description': 'arrivals or departures (default arrivals)'}}}
Esquema de entrada
{'type': 'object', 'required': ['flight'], 'properties': {'flight': {'type': 'string', 'description': "A flight number ('BA117'), a radio callsign ('BAW117'), or an aircraft registration ('G-ZBKL')"}}}
Esquema de entrada
{'type': 'object', 'properties': {'lat': {'type': 'number', 'description': 'Optional: look around this point instead'}, 'lon': {'type': 'number', 'description': 'Optional: look around this point instead'}, 'name': {'type': 'string', 'description': "Business name, e.g. 'Nandos'"}, 'limit': {'type': 'number', 'description': 'How many to return, default 10, max 30'}, 'where': {'type': 'string', 'description': 'Town, street or postcode to narrow it to'}}}
Esquema de entrada
{'type': 'object', 'required': ['barcode'], 'properties': {'barcode': {'type': 'string', 'description': 'The barcode, 6 to 14 digits, e.g. 5000168034928'}}}
Esquema de entrada
{'type': 'object', 'required': ['query'], 'properties': {'limit': {'type': 'number', 'description': 'How many to return, default 10, max 25'}, 'query': {'type': 'string', 'description': "Product or brand name, e.g. 'hobnobs' or 'oat milk'"}}}
Esquema de entrada
{'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'description': 'Group name'}, 'encrypted': {'type': 'boolean', 'description': 'Require end-to-end encrypted XMPP clients; web chat cannot decrypt these messages'}}}
Esquema de entrada
{'type': 'object', 'properties': {}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Group ID'}}}
Esquema de entrada
{'type': 'object', 'required': ['id', 'action'], 'properties': {'id': {'type': 'string', 'description': ''}, 'value': {'type': 'string', 'description': 'New name for rename, or member/admin/owner for role'}, 'action': {'type': 'string', 'description': 'invite, accept, decline, remove, role, rename or delete'}, 'account': {'type': 'string', 'description': 'Local username for invite, remove or role; defaults to yourself for remove'}}}
Esquema de entrada
{'type': 'object', 'properties': {'lat': {'type': 'number', 'description': 'Optional: only alerts near this point'}, 'lon': {'type': 'number', 'description': 'Optional: only alerts near this point'}, 'level': {'type': 'string', 'description': 'Lowest level to include: green, orange or red — default green (everything)'}, 'within_km': {'type': 'number', 'description': 'Optional: how near, in kilometres, default 1000 when lat/lon given'}}}
Esquema de entrada
{'type': 'object', 'properties': {'lat': {'type': 'number', 'description': 'Optional: only warnings near this point'}, 'lon': {'type': 'number', 'description': 'Optional: only warnings near this point'}, 'severe': {'type': 'boolean', 'description': 'Only warnings and severe warnings — leave out the be-prepared alerts'}, 'within_km': {'type': 'number', 'description': 'Optional: how near, in kilometres, default 30 when a point is given'}}}
Esquema de entrada
{'type': 'object', 'properties': {'lat': {'type': 'number', 'description': 'Optional: only events near this point'}, 'lon': {'type': 'number', 'description': 'Optional: only events near this point'}, 'min': {'type': 'number', 'description': 'Smallest magnitude to include, default 2.5'}, 'period': {'type': 'string', 'description': 'hour, day, week or month — default day'}, 'within_km': {'type': 'number', 'description': 'Optional: how near, in kilometres, default 500 when lat/lon given'}}}
Esquema de entrada
{'type': 'object', 'properties': {'date': {'type': 'string', 'description': 'YYYY-MM-DD; omitted for the current daily image'}}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': ''}}}
Esquema de entrada
{'type': 'object', 'required': ['prompt'], 'properties': {'prompt': {'type': 'string', 'description': 'What the image should depict'}}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': ''}}}
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Page size, default 20, maximum 100'}, 'scope': {'type': 'string', 'description': 'mine, public, all (own plus public), or daily; defaults to public'}, 'cursor': {'type': 'string', 'description': 'Next cursor from the previous page; keep query and scope unchanged'}}}
Esquema de entrada
{'type': 'object', 'required': ['query'], 'properties': {'limit': {'type': 'number', 'description': 'Max results (default 20)'}, 'query': {'type': 'string', 'description': 'What the image should show, in words'}, 'scope': {'type': 'string', 'description': 'public, mine, all, or daily; defaults to public'}, 'cursor': {'type': 'string', 'description': ''}}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': ''}, 'public': {'type': 'boolean', 'description': 'Explicitly publish or unpublish this image'}}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': ''}, 'tags': {'type': 'array', 'description': ''}, 'title': {'type': 'string', 'description': ''}, 'description': {'type': 'string', 'description': ''}}}
Esquema de entrada
{'type': 'object', 'required': ['data'], 'properties': {'data': {'type': 'string', 'description': 'Base64 PNG, JPEG or GIF; at most 512 KB decoded and 8 megapixels; browser uploads support 8 MB'}, 'description': {'type': 'string', 'description': 'Image caption, at most 1000 characters'}}}
Esquema de entrada
{'type': 'object', 'required': ['path'], 'properties': {'path': {'type': 'string', 'description': 'Resource path from a search result, e.g. /quran/2/255 or /seerah/page/10; an https://aslam.org URL is also accepted'}}}
Esquema de entrada
{'type': 'object', 'required': ['query'], 'properties': {'limit': {'type': 'number', 'description': 'Maximum results, 1-50 (default 20)'}, 'query': {'type': 'string', 'description': 'Keywords to find in the Islamic knowledge base'}, 'collection': {'type': 'string', 'description': 'Optional source: quran, hadith, names, seerah, ghazali, islamqa, adhkar or salihin'}}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Gmail message id from GmailSearch'}}}
Esquema de entrada
{'type': 'object', 'properties': {'page': {'type': 'string', 'description': 'Next page token from a previous search'}, 'limit': {'type': 'number', 'description': 'Number of messages, up to 20'}, 'query': {'type': 'string', 'description': 'Gmail search, e.g. is:unread. Limited to the last seven days. Returns headers only; use GmailRead for a relevant message body. Older mail is unavailable'}}}
Esquema de entrada
{'type': 'object', 'properties': {'tag': {'type': 'string', 'description': 'Only messages sent to this plus-address tag'}, 'limit': {'type': 'number', 'description': 'Max messages (default 10)'}, 'offset': {'type': 'number', 'description': 'Matching messages to skip'}}}
Esquema de entrada
{'type': 'object', 'properties': {'tag': {'type': 'string', 'description': 'A label for this handle, e.g. "research" or "receipts". Omit for the plain one'}}}
Esquema de entrada
{'type': 'object', 'properties': {'all': {'type': 'boolean', 'description': 'Explicitly mark all current inbox mail as read'}, 'ids': {'type': 'array', 'description': 'Message IDs to mark read; use all instead to clear the inbox unread count'}}}
Esquema de entrada
{'type': 'object', 'properties': {'id': {'type': 'string', 'description': 'Message id from mail_inbox or mail_search'}, 'limit': {'type': 'number', 'description': 'Body characters per page; default and maximum 2000'}, 'offset': {'type': 'number', 'description': 'Body character offset'}}}
Esquema de entrada
{'type': 'object', 'properties': {'tag': {'type': 'string', 'description': 'Only messages sent to this plus-address tag'}, 'limit': {'type': 'number', 'description': 'Max results (default 10)'}, 'query': {'type': 'string', 'description': 'What to look for'}, 'offset': {'type': 'number', 'description': 'Matching messages to skip'}}}
Esquema de entrada
{'type': 'object', 'required': ['to', 'subject', 'body'], 'properties': {'to': {'type': 'string', 'description': 'Recipient: a username on this instance, or a full email address. Resolve a name with contacts_find first'}, 'body': {'type': 'string', 'description': 'Message body, plain text'}, 'subject': {'type': 'string', 'description': 'Message subject'}}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Stored message id'}}}
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': ''}, 'offset': {'type': 'number', 'description': ''}}}
Esquema de entrada
{'type': 'object', 'properties': {'east': {'type': 'number', 'description': 'Eastern edge, in degrees longitude'}, 'west': {'type': 'number', 'description': 'Western edge'}, 'zoom': {'type': 'number', 'description': 'Zoom level, 0 to 20'}, 'north': {'type': 'number', 'description': 'Northern edge, in degrees latitude'}, 'south': {'type': 'number', 'description': 'Southern edge'}, 'style': {'type': 'string', 'description': 'road, outdoor or light'}}}
Esquema de entrada
{'type': 'object', 'properties': {'x': {'type': 'number', 'description': 'Tile column at that zoom'}, 'y': {'type': 'number', 'description': 'Tile row at that zoom'}, 'z': {'type': 'number', 'description': 'Zoom level, 0 to 20'}, 'style': {'type': 'string', 'description': 'road, outdoor or light — outdoor has rights of way and contours'}}}
Esquema de entrada
{'type': 'object', 'required': ['from', 'to'], 'properties': {'to': {'type': 'string', 'description': 'Currency or asset to convert to, as a code: JPY, USD, ETH…'}, 'date': {'type': 'string', 'description': 'Optional: the rate on a past day, as 2020-01-03. Currencies only, back to 1999'}, 'from': {'type': 'string', 'description': 'Currency or asset to convert from, as a code: GBP, USD, EUR, BTC…'}, 'amount': {'type': 'number', 'description': 'How much to convert. Default 1'}}}
Esquema de entrada
{'type': 'object', 'required': ['symbol'], 'properties': {'end': {'type': 'string', 'description': 'Last date inclusive, YYYY-MM-DD; default today. Maximum range 366 days'}, 'limit': {'type': 'number', 'description': 'Maximum points per page, default 20, maximum 100'}, 'start': {'type': 'string', 'description': 'First date, YYYY-MM-DD; default 30 days ago'}, 'offset': {'type': 'number', 'description': ''}, 'symbol': {'type': 'string', 'description': 'Supported ticker, e.g. BTC, AAPL, GOLD or EUR'}}}
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Maximum instruments, default 20, max 100'}, 'offset': {'type': 'number', 'description': 'Instruments to skip'}, 'category': {'type': 'string', 'description': 'crypto (BTC, ETH, SOL…), stocks, commodities (OIL, GOLD, SILVER, COPPER, COFFEE, WHEAT, CORN, SOYBEANS, OATS), futures (the metals and oil alone) or currencies (EUR, GBP, JPY…). Default crypto'}}}
Esquema de entrada
{'type': 'object', 'required': ['symbol'], 'properties': {'symbol': {'type': 'string', 'description': 'One supported ticker, e.g. BTC, AAPL, GOLD or EUR; prices are in USD'}}}
Esquema de entrada
{'type': 'object', 'properties': {}}
Esquema de entrada
{'type': 'object', 'properties': {'day': {'type': 'string', 'description': 'today to restrict headlines to the caller’s local calendar day'}, 'limit': {'type': 'number', 'description': 'Optional max number of headlines (default 30)'}, 'topic': {'type': 'string', 'description': 'Optional topic/category filter (e.g. tech, world, business)'}}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Article id (from Headlines) or article URL'}}}
Esquema de entrada
{'type': 'object', 'required': ['query'], 'properties': {'query': {'type': 'string', 'description': 'Search terms, e.g. latest AI news'}}}
Esquema de entrada
{'type': 'object', 'required': ['title', 'text'], 'properties': {'text': {'type': 'string', 'description': 'What the note says'}, 'title': {'type': 'string', 'description': 'What the note is called, e.g. "location" or "project brief". Writing a title that exists rewrites that note'}}}
Esquema de entrada
{'type': 'object', 'required': ['title'], 'properties': {'title': {'type': 'string', 'description': 'The note to delete, as returned by notes_list'}}}
Esquema de entrada
{'type': 'object', 'required': ['title'], 'properties': {'title': {'type': 'string', 'description': "The note's title, as given to notes_add"}}}
Esquema de entrada
{'type': 'object', 'properties': {}}
Esquema de entrada
{'type': 'object', 'properties': {}}
Esquema de entrada
{'type': 'object', 'required': ['title'], 'properties': {'url': {'type': 'string', 'description': 'Where tapping it goes, e.g. /inbox. A notification you cannot act on trains someone to ignore the next one'}, 'body': {'type': 'string', 'description': 'A second line, up to about 300 characters. Optional'}, 'title': {'type': 'string', 'description': 'The line on the lock screen. Short — this is the whole message on a watch'}}}
Esquema de entrada
{'type': 'object', 'required': ['lat', 'lon'], 'properties': {'lat': {'type': 'number', 'description': 'Latitude, e.g. 51.5308'}, 'lon': {'type': 'number', 'description': 'Longitude, e.g. -0.1238'}}}
Esquema de entrada
{'type': 'object', 'properties': {'lat': {'type': 'number', 'description': 'Optional latitude, if the location is already known'}, 'lon': {'type': 'number', 'description': 'Optional longitude, if the location is already known'}, 'place': {'type': 'string', 'description': "A place name or address, e.g. 'Denver' or 'Ben Nevis'"}}}
Esquema de entrada
{'type': 'object', 'properties': {'address': {'type': 'string', 'description': 'A place name or address to locate'}}}
Esquema de entrada
{'type': 'object', 'properties': {'lat': {'type': 'number', 'description': 'Optional latitude'}, 'lon': {'type': 'number', 'description': 'Optional longitude'}, 'near': {'type': 'string', 'description': "Place to look around, e.g. 'Camden, London' (or give lat/lon)"}, 'query': {'type': 'string', 'description': "Optional keyword to filter by, e.g. 'cafe'"}, 'radius': {'type': 'number', 'description': 'Optional radius in metres (default 1000)'}}}
Esquema de entrada
{'type': 'object', 'required': ['query'], 'properties': {'lat': {'type': 'number', 'description': 'Optional latitude, if the location is already known'}, 'lon': {'type': 'number', 'description': 'Optional longitude, if the location is already known'}, 'near': {'type': 'string', 'description': "Optional place to search near, e.g. 'Shoreditch, London' or 'SF'"}, 'query': {'type': 'string', 'description': "What to look for, e.g. 'ramen', 'pharmacy', 'Blue Bottle Coffee'"}, 'radius': {'type': 'number', 'description': 'Optional search radius in metres (default 2000)'}}}
Esquema de entrada
{'type': 'object', 'required': ['lat', 'lon'], 'properties': {'lat': {'type': 'number', 'description': 'Latitude of the location'}, 'lon': {'type': 'number', 'description': 'Longitude of the location'}}}
Esquema de entrada
{'type': 'object', 'properties': {}}
Esquema de entrada
{'type': 'object', 'properties': {'book': {'type': 'number', 'description': 'Book number within Sahih al-Bukhari. Omit for a saying from any book'}}}
Esquema de entrada
{'type': 'object', 'required': ['query'], 'properties': {'query': {'type': 'string', 'description': 'A question in plain language, e.g. "what is said about patience"'}}}
Esquema de entrada
{'type': 'object', 'required': ['lat', 'lon'], 'properties': {'tz': {'type': 'string', 'description': 'IANA timezone of the location, e.g. Europe/London (defaults to UTC)'}, 'lat': {'type': 'number', 'description': 'Latitude of the location'}, 'lon': {'type': 'number', 'description': 'Longitude of the location'}, 'method': {'type': 'string', 'description': 'Calculation convention: isna, mwl, egypt, karachi, gulf, diyanet, muis or jakim (defaults to isna)'}}}
Esquema de entrada
{'type': 'object', 'required': ['chapter'], 'properties': {'verse': {'type': 'number', 'description': 'Verse number within the chapter. Omit for the whole chapter'}, 'chapter': {'type': 'number', 'description': 'Chapter (surah) number, 1-114'}}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': "The conversation's id, as recall_search reports it"}, 'limit': {'type': 'number', 'description': 'Max messages, most recent kept (default 50)'}}}
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Max conversations (default 20)'}, 'client': {'type': 'string', 'description': 'Only conversations on one client: web, mail, cli'}}}
Esquema de entrada
{'type': 'object', 'required': ['query'], 'properties': {'limit': {'type': 'number', 'description': 'Max results (default 20, max 200)'}, 'query': {'type': 'string', 'description': 'What to look for — a word or phrase that was said'}, 'client': {'type': 'string', 'description': 'Narrow to where it was said: web, mail, cli. Omit for everywhere'}}}
Esquema de entrada
{'type': 'object', 'properties': {'to': {'type': 'string', 'description': "Where the journey ends, e.g. 'Heathrow Airport'"}, 'from': {'type': 'string', 'description': "Where the journey starts, e.g. 'King's Cross, London' (or give from_lat/from_lon)"}, 'mode': {'type': 'string', 'description': 'How to travel: drive (default), walk, cycle or transit'}, 'to_lat': {'type': 'number', 'description': 'Optional end latitude, if already known'}, 'to_lon': {'type': 'number', 'description': 'Optional end longitude, if already known'}, 'from_lat': {'type': 'number', 'description': 'Optional start latitude, if already known'}, 'from_lon': {'type': 'number', 'description': 'Optional start longitude, if already known'}, 'arrive_by': {'type': 'string', 'description': 'Be there by this time, as RFC3339. Cannot be combined with depart_at'}, 'depart_at': {'type': 'string', 'description': 'When the journey starts, as RFC3339. Defaults to now'}}}
Esquema de entrada
{'type': 'object', 'properties': {'to': {'type': 'string', 'description': "Where the journey ends, e.g. 'Heathrow Airport'"}, 'from': {'type': 'string', 'description': "Where the journey starts, e.g. 'King's Cross, London' (or give from_lat/from_lon)"}, 'mode': {'type': 'string', 'description': 'How to travel: drive (default), walk, cycle or transit'}, 'to_lat': {'type': 'number', 'description': 'Optional end latitude, if already known'}, 'to_lon': {'type': 'number', 'description': 'Optional end longitude, if already known'}, 'from_lat': {'type': 'number', 'description': 'Optional start latitude, if already known'}, 'from_lon': {'type': 'number', 'description': 'Optional start longitude, if already known'}, 'arrive_by': {'type': 'string', 'description': 'Be there by this time, as RFC3339. Answers when to leave. Cannot be combined with depart_at'}, 'depart_at': {'type': 'string', 'description': 'When the journey starts, as RFC3339 (e.g. 2026-08-13T08:00:00Z). Defaults to now. Traffic and timetables are read for this time'}}}
Esquema de entrada
{'type': 'object', 'required': ['to'], 'properties': {'to': {'type': 'array', 'description': "The places to compare, e.g. ['Heathrow', 'Gatwick', 'Stansted']"}, 'from': {'type': 'string', 'description': "Where you are starting from, e.g. 'Shoreditch, London' (or give from_lat/from_lon)"}, 'mode': {'type': 'string', 'description': 'How to travel: drive (default), walk, cycle or transit'}, 'from_lat': {'type': 'number', 'description': 'Optional start latitude, if already known'}, 'from_lon': {'type': 'number', 'description': 'Optional start longitude, if already known'}}}
Esquema de entrada
{'type': 'object', 'required': ['command'], 'properties': {'dir': {'type': 'string', 'description': 'Directory to run it in, under /work. Defaults to /work'}, 'command': {'type': 'string', 'description': "A shell command to run, e.g. 'go test ./... 2>&1 | tail -40'"}, 'timeout': {'type': 'number', 'description': "Seconds to allow, up to the instance's maximum. Defaults to 120"}}}
Esquema de entrada
{'type': 'object', 'required': ['path', 'content'], 'properties': {'path': {'type': 'string', 'description': 'Where to put it, relative to /work — not to the directory your last command left you in. Missing directories are created'}, 'content': {'type': 'string', 'description': 'The whole file. This replaces what was there'}}}
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'How many messages to return, newest first (default 50, max 200)'}}}
Esquema de entrada
{'type': 'object', 'properties': {}}
Esquema de entrada
{'type': 'object', 'required': ['to', 'text'], 'properties': {'to': {'type': 'string', 'description': 'The number to message, in international format, e.g. +447700900123. Use contacts_find to turn a name into one'}, 'text': {'type': 'string', 'description': 'What to say. A text is charged per 160-character segment, so brevity is not only good manners'}, 'channel': {'type': 'string', 'description': "How to send it: 'sms' (the default) or 'whatsapp'. WhatsApp only works with somebody who messaged this instance in the last 24 hours — reply on the channel they used"}}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Stored message id'}}}
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': ''}, 'offset': {'type': 'number', 'description': ''}}}
Esquema de entrada
{'type': 'object', 'required': ['number'], 'properties': {'code': {'type': 'string', 'description': 'The code that was texted to that number. Omit to have one sent'}, 'number': {'type': 'string', 'description': 'Your own number, in international format'}}}
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Optional max number of posts (default all recent)'}}}
Esquema de entrada
{'type': 'object', 'required': ['query'], 'properties': {'limit': {'type': 'number', 'description': 'Max results (default 20)'}, 'query': {'type': 'string', 'description': 'What to look for in posts on this instance'}}}
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'How many entries to return (default 20, max 100)'}}}
Esquema de entrada
{'type': 'object', 'required': ['title'], 'properties': {'due': {'type': 'string', 'description': 'Optional deadline, RFC3339 or 2006-01-02 15:04'}, 'title': {'type': 'string', 'description': 'What is to be done'}, 'detail': {'type': 'string', 'description': 'Anything the doer needs to know: context, links, constraints'}, 'assignee': {'type': 'string', 'description': 'me (default) or agent — assign to the agent and it can pick the task up'}}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': "The task's id"}}}
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Maximum tasks, default 20, max 100'}, 'offset': {'type': 'number', 'description': 'Tasks to skip'}, 'status': {'type': 'string', 'description': 'Optional filter: todo, doing, done, failed or blocked'}}}
Esquema de entrada
{'type': 'object', 'properties': {}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': "The task's id"}}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': "The task's id"}, 'title': {'type': 'string', 'description': 'New title'}, 'detail': {'type': 'string', 'description': 'New detail'}, 'result': {'type': 'string', 'description': 'What came of it — the answer, the outcome, what was found'}, 'status': {'type': 'string', 'description': 'todo, doing, done, failed or blocked'}}}
Esquema de entrada
{'type': 'object', 'required': ['text', 'labels'], 'properties': {'text': {'type': 'string', 'description': 'The text to sort'}, 'labels': {'type': 'string', 'description': 'Comma-separated labels to choose between'}}}
Esquema de entrada
{'type': 'object', 'required': ['text', 'schema'], 'properties': {'text': {'type': 'string', 'description': 'The text to read'}, 'schema': {'type': 'string', 'description': 'A JSON schema, or a plain description of the fields wanted'}}}
Esquema de entrada
{'type': 'object', 'required': ['text'], 'properties': {'text': {'type': 'string', 'description': 'The text to summarise'}, 'lines': {'type': 'number', 'description': 'Optional: roughly how many sentences or bullets'}, 'style': {'type': 'string', 'description': "Optional: 'bullets' for a list, otherwise prose"}}}
Esquema de entrada
{'type': 'object', 'required': ['text', 'to'], 'properties': {'to': {'type': 'string', 'description': "Target language, e.g. 'French' or 'ar'"}, 'text': {'type': 'string', 'description': 'The text to translate'}}}
Esquema de entrada
{'type': 'object', 'required': ['stop'], 'properties': {'stop': {'type': 'string', 'description': "Stop name or id, e.g. 'Oxford Circus' or 940GZZLUOXC"}}}
Esquema de entrada
{'type': 'object', 'properties': {'lat': {'type': 'number', 'description': 'Latitude of the point to look around'}, 'lon': {'type': 'number', 'description': 'Longitude of the point'}, 'limit': {'type': 'number', 'description': 'How many to list, default 10'}, 'within_km': {'type': 'number', 'description': 'How far to look, in kilometres — default 2, most 25'}}}
Esquema de entrada
{'type': 'object', 'properties': {'country': {'type': 'string', 'description': 'Optional two-letter code to narrow the list: GB, US, ES…'}}}
Esquema de entrada
{'type': 'object', 'required': ['lat', 'lon'], 'properties': {'lat': {'type': 'number', 'description': 'Latitude'}, 'lon': {'type': 'number', 'description': 'Longitude'}, 'radius': {'type': 'number', 'description': 'Metres to search, default 400, max 2000'}}}
Esquema de entrada
{'type': 'object', 'properties': {'modes': {'type': 'string', 'description': 'Optional: tube, dlr, overground, elizabeth-line, tram — comma separated'}}}
Esquema de entrada
{'type': 'object', 'properties': {'rows': {'type': 'number', 'description': 'How many services, 1 to 20, default 10'}, 'station': {'type': 'string', 'description': 'Three-letter station code — KGX, MAN, EDB'}, 'arrivals': {'type': 'boolean', 'description': 'Show what is coming in rather than what is leaving'}}}
Esquema de entrada
{'type': 'object', 'required': ['query'], 'properties': {'query': {'type': 'string', 'description': 'A username or part of a display name'}}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Their username'}}}
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'How many to return, newest first. Default 100'}, 'online': {'type': 'boolean', 'description': 'Only those seen in the last three minutes'}}}
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Maximum videos per page, default 20, maximum 100'}, 'offset': {'type': 'number', 'description': 'Videos to skip'}, 'category': {'type': 'string', 'description': 'Optional curated category'}}}
Esquema de entrada
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Video id or video_ archive id from List or Search'}}}
Esquema de entrada
{'type': 'object', 'required': ['query'], 'properties': {'query': {'type': 'string', 'description': 'What to search for'}, 'channel': {'type': 'string', 'description': 'Exact YouTube channel ID when the user requests a particular channel; obtain it from search results'}}}
Esquema de entrada
{'type': 'object', 'properties': {}}
Esquema de entrada
{'type': 'object', 'properties': {}}
Esquema de entrada
{'type': 'object', 'required': ['lat', 'lon'], 'properties': {'lat': {'type': 'number', 'description': 'Latitude of the location'}, 'lon': {'type': 'number', 'description': 'Longitude of the location'}}}
Esquema de entrada
{'type': 'object', 'required': ['lat', 'lon'], 'properties': {'lat': {'type': 'number', 'description': 'Latitude of the location'}, 'lon': {'type': 'number', 'description': 'Longitude of the location'}}}
Esquema de entrada
{'type': 'object', 'required': ['lat', 'lon', 'start', 'end'], 'properties': {'end': {'type': 'string', 'description': 'Last day, as 2025-08-31'}, 'lat': {'type': 'number', 'description': 'Latitude of the location'}, 'lon': {'type': 'number', 'description': 'Longitude of the location'}, 'start': {'type': 'string', 'description': 'First day, as 2025-08-01'}}}
Esquema de entrada
{'type': 'object', 'properties': {'day': {'type': 'string', 'description': 'today or tomorrow; empty returns the current multi-day forecast'}, 'focus': {'type': 'string', 'description': 'rain for a rain-focused answer, otherwise a general forecast'}, 'place': {'type': 'string', 'description': 'Town or city to look up'}}}
Esquema de entrada
{'type': 'object', 'required': ['lat', 'lon'], 'properties': {'lat': {'type': 'number', 'description': 'Latitude of a coastal or offshore point'}, 'lon': {'type': 'number', 'description': 'Longitude of a coastal or offshore point'}, 'days': {'type': 'number', 'description': 'How many days ahead, 1 to 7 — default 3'}}}
Esquema de entrada
{'type': 'object', 'required': ['url'], 'properties': {'url': {'type': 'string', 'description': 'The URL to fetch'}}}
Esquema de entrada
{'type': 'object', 'required': ['query'], 'properties': {'limit': {'type': 'number', 'description': 'Maximum results, default 24'}, 'query': {'type': 'string', 'description': 'Images to find on the web'}}}
Esquema de entrada
{'type': 'object', 'required': ['query'], 'properties': {'limit': {'type': 'number', 'description': 'Optional max number of results'}, 'query': {'type': 'string', 'description': 'Search query'}}}
Cambios recientes en herramientas
Servidores MCP similares
Local MCP
Connects AI assistants to Mac email, calendars, reminders, notes, tasks, files, Microsoft 365, Todoist, spreadsheets, and daily b…
Agent Commons
Provides rooms, threads, messaging, file sharing, invitations, subscriptions, search, and resumable events for agent collaboratio…
Dock
Provides collaborative workspaces with tables, documents, HTML surfaces, files, formulas, comments, activity tracking, agent mess…
agendaforge
Manages events, agendas, sessions, speakers, attendees, sponsors, forms, contacts, email templates, approvals, and organizer work…
materialmodel
Enables agents to publish and discover findings, collaborate in shared spaces, exchange direct messages, follow investigations, a…
Kythene
Provides shared team memory, collections, wikis, artifacts, comments, approvals, review workflows, presence, and controlled shari…
Timeapi Io
Provides timezone and date utilities, along with routed access to structured research and data sources.
northreach
Supports direct agent questions and answers, shared memories, broadcasts, polls, compute jobs, governance, and persistent network…